Compute an HMAC over data using digest evp_md and key key.
Synopsis
Declared in <openssl/hmac.h>
unsigned char*
HMAC(
EVP_MD const* evp_md,
void const* key,
int key_len,
unsigned char const* data,
size_t data_len,
unsigned char* md,
unsigned int* md_len);
Description
Uses the default OSSL_LIB_CTX; prefer EVP_Q_mac() when a library context is required.
Return Value
Pointer to the MAC bytes (md or the static buffer), or NULL on error.
Parameters
Name |
Description |
evp_md |
Message digest (e.g. EVP_sha256()); variable‐length digests such as SHAKE are not supported. |
key |
HMAC key material, or NULL when |
key_len |
Length of |
data |
Message bytes to authenticate. |
data_len |
Number of bytes at |
md |
Output buffer of at least EVP_MAX_MD_SIZE bytes, or NULL to use a static buffer (not thread‐safe). |
md_len |
Receives the MAC length in bytes; may be NULL. |
Created with MrDocs