EVP_MAC-HMAC
Section: OpenSSL (7SSL)
Updated: 2024-03-03
Index
Return to Main Contents
NAME
EVP_MAC-HMAC - The HMAC EVP_MAC implementation
DESCRIPTION
Support for computing HMAC MACs through the EVP_MAC API.
This implementation uses EVP_MD functions to get access to the underlying
digest.
Identity
This implementation is identified with this name and properties, to be
used with EVP_MAC_fetch():
- "HMAC", "provider=default" or "provider=fips"
-
Supported parameters
The general description of these parameters can be found in
``PARAMETERS'' in EVP_MAC(3).
The following parameter can be set with EVP_MAC_CTX_set_params():
- "key" (OSSL_MAC_PARAM_KEY) <octet string>
-
Sets the MAC key.
Setting this parameter is identical to passing a key to EVP_MAC_init(3).
- "digest" (OSSL_MAC_PARAM_DIGEST) <UTF8 string>
-
Sets the name of the underlying digest to be used.
- "properties" (OSSL_MAC_PARAM_PROPERTIES) <UTF8 string>
-
Sets the properties to be queried when trying to fetch the underlying digest.
This must be given together with the digest naming parameter (``digest'', or
OSSL_MAC_PARAM_DIGEST) to be considered valid.
- "digest-noinit" (OSSL_MAC_PARAM_DIGEST_NOINIT) <integer>
-
A flag to set the MAC digest to not initialise the implementation
specific data.
The value 0 or 1 is expected.
- "digest-oneshot" (OSSL_MAC_PARAM_DIGEST_ONESHOT) <integer>
-
A flag to set the MAC digest to be a one-shot operation.
The value 0 or 1 is expected.
- "tls-data-size" (OSSL_MAC_PARAM_TLS_DATA_SIZE) <unsigned integer>
-
The following parameter can be retrieved with EVP_MAC_CTX_get_params():
- "size" (OSSL_MAC_PARAM_SIZE) <unsigned integer>
-
The ``size'' parameter can also be retrieved with EVP_MAC_CTX_get_mac_size().
The length of the ``size'' parameter is equal to that of an unsigned int.
- "block-size" (OSSL_MAC_PARAM_BLOCK_SIZE) <unsigned integer>
-
Gets the MAC block size. The ``block-size'' parameter can also be retrieved with
EVP_MAC_CTX_get_block_size().
SEE ALSO
EVP_MAC_CTX_get_params(3), EVP_MAC_CTX_set_params(3),
``PARAMETERS'' in EVP_MAC(3), OSSL_PARAM(3), HMAC(3)
COPYRIGHT
Copyright 2018-2021 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the ``License''). You may not use
this file except in compliance with the License. You can obtain a copy
in the file LICENSE in the source distribution or at
<https://www.openssl.org/source/license.html>.
Index
- NAME
-
- DESCRIPTION
-
- Identity
-
- Supported parameters
-
- SEE ALSO
-
- COPYRIGHT
-
This document was created by
man2html,
using the manual pages.
Time: 09:21:47 GMT, May 07, 2024