OpenSSL

加密和 SSL/TLS 工具包

EVP_MAC-BLAKE2SMAC

名稱

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) 中的「參數」OSSL_PARAM(3)

歷程

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

版權所有 2018-2021 OpenSSL 專案作者。保留所有權利。

根據 Apache 授權條款 2.0(「授權條款」)授權。您不得使用此檔案,除非符合授權條款。您可以在原始程式碼散發的 LICENSE 檔案中或 https://www.openssl.org/source/license.html 取得副本。