開放SSL

密碼學和 SSL/TLS 工具包

EVP_MAC-BLAKE2BMAC

名稱

EVP_MAC-BLAKE2、EVP_MAC-BLAKE2BMAC、EVP_MAC-BLAKE2SMAC - BLAKE2 EVP_MAC 實作

說明

透過 EVP_MAC API 支援運算 BLAKE2 MAC。

身分

這些實作會以下列其中一個名稱和屬性識別,搭配 EVP_MAC_fetch() 使用

"BLAKE2BMAC", "provider=default"
"BLAKE2SMAC", "provider=default"

支援的參數

這些參數的一般說明可以在 EVP_MAC(3) 中的「參數」 找到。

所有這些參數(「區塊大小」除外)都可以使用 EVP_MAC_CTX_set_params() 設定。此外,「大小」參數可以使用 EVP_MAC_CTX_get_params() 或 EVP_MAC_CTX_get_mac_size() 擷取。 「大小」參數的長度不應超過 size_t 的長度。同樣地,「區塊大小」參數可以使用 EVP_MAC_CTX_get_params() 或 EVP_MAC_CTX_get_block_size() 擷取。

"金鑰" (OSSL_MAC_PARAM_KEY) <八位元組字串>

設定 MAC 金鑰。對於 BLAKE2BMAC,長度最多可以是 64 位元組,對於 BLAKE2SMAC 則最多可以是 32 位元組,兩者至少都要 1 位元組。設定這個參數等同於將 金鑰 傳遞給 EVP_MAC_init(3)

"自訂" (OSSL_MAC_PARAM_CUSTOM) <八位元組字串>

設定自訂/個人化字串。對於 BLAKE2BMAC,這是一個最多 16 位元組的選用值,對於 BLAKE2SMAC 則最多 8 位元組,而且預設為空白。

"鹽" (OSSL_MAC_PARAM_SALT) <八位元組字串>

設定鹽。對於 BLAKE2BMAC,這是一個最多 16 位元組的選用值,對於 BLAKE2SMAC 則最多 8 位元組,而且預設為空白。

"大小" (OSSL_MAC_PARAM_SIZE) <無號整數>

設定 MAC 大小。對於 EVP_MAC_BLAKE2S,可以是 1 到 32 之間的任意數字,對於 EVP_MAC_BLAKE2B 則可以是 1 到 64 之間的任意數字。預設值分別為 32 和 64。

"區塊大小" (OSSL_MAC_PARAM_BLOCK_SIZE) <無號整數>

取得 MAC 區塊大小。對於 EVP_MAC_BLAKE2S,大小為 64,對於 EVP_MAC_BLAKE2B 則為 128。

另請參閱

EVP_MAC_CTX_get_params(3)EVP_MAC_CTX_set_params(3)EVP_MAC(3) 中的「PARAMETERS」OSSL_PARAM(3)

歷史

此處所述的巨集和函式已新增至 OpenSSL 3.0。

Copyright 2018-2021 The OpenSSL Project Authors。保留所有權利。

根據 Apache License 2.0(「授權」)授權。您不得在不遵守授權的情況下使用此檔案。您可以在原始程式碼散佈中的 LICENSE 檔案或 https://www.openssl.org/source/license.html 取得副本。