EVP_MAC-HMAC
名称
EVP_MAC-HMAC - HMAC EVP_MAC 实现
描述
支持通过EVP_MAC API 计算 HMAC MAC。
此实现使用 EVP_MD 函数来访问底层摘要。
标识
此实现使用此名称和属性进行标识,以便与 EVP_MAC_fetch() 一起使用。
- "HMAC", "provider=default" 或 "provider=fips"
支持的参数
这些参数的常规描述可以在"EVP_MAC(3) 中的 PARAMETERS" 中找到。
可以使用 EVP_MAC_CTX_set_params() 设置以下参数。
- "key" (OSSL_MAC_PARAM_KEY) <八位字节串>
-
设置 MAC 密钥。设置此参数等同于将key 传递给EVP_MAC_init(3)。
- "digest" (OSSL_MAC_PARAM_DIGEST) <UTF8 字符串>
-
设置要使用的底层摘要的名称。
- "properties" (OSSL_MAC_PARAM_PROPERTIES) <UTF8 字符串>
-
设置在尝试获取底层摘要时要查询的属性。此属性必须与摘要命名参数(“digest”或OSSL_MAC_PARAM_DIGEST)一起提供才能被视为有效。
- "digest-noinit" (OSSL_MAC_PARAM_DIGEST_NOINIT) <整数>
-
一个标志,用于设置 MAC 摘要不初始化实现特定的数据。预期值为 0 或 1。此选项已弃用,将在未来版本中删除。它可以设置,但目前被忽略。
- "digest-oneshot" (OSSL_MAC_PARAM_DIGEST_ONESHOT) <整数>
-
一个标志,用于设置 MAC 摘要为一次性操作。预期值为 0 或 1。此选项已弃用,将在未来版本中删除。它可以设置,但目前被忽略。
- "tls-data-size" (OSSL_MAC_PARAM_TLS_DATA_SIZE) <无符号整数>
可以使用 EVP_MAC_CTX_get_params() 获取以下参数。
- "size" (OSSL_MAC_PARAM_SIZE) <无符号整数>
-
"size" 参数也可以使用 EVP_MAC_CTX_get_mac_size() 获取。"size" 参数的长度等于unsigned int 的长度。
- "block-size" (OSSL_MAC_PARAM_BLOCK_SIZE) <无符号整数>
-
获取 MAC 块大小。"block-size" 参数也可以使用 EVP_MAC_CTX_get_block_size() 获取。
参见
EVP_MAC_CTX_get_params(3),EVP_MAC_CTX_set_params(3),"EVP_MAC(3) 中的 PARAMETERS",OSSL_PARAM(3),HMAC(3)
版权
版权所有 2018-2021 OpenSSL 项目作者。保留所有权利。
根据 Apache 许可证 2.0(“许可证”)许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发版中的 LICENSE 文件或https://www.openssl.org/source/license.html 中获取副本。