Parent topic:MPLAB® Harmony Crypto Library
int CRYPT_HMAC_Finalize(
CRYPT_HMAC_CTX* hmac,
unsigned char* digest
);
This function completes the HMAC calculations. The results are placed in the location pointed to by the digest parameter.
The CRYPT_HMAC_CTX context must be initialized using the CRYPT_HMAC_SetKey function prior to any call to this function.
Parameters | Description |
---|---|
hmac | Pointer to context that saves state between calls. |
digest | Pointer to where the final HMAC digest results will be stored. |
-
BAD_FUNC_ARG - An invalid pointer was passed to the function.
-
0 - An invalid pointer was not passed to the function.
The area pointed to by the digest parameter must be large enough to hold the results.
CRYPT_HMAC_CTX mcHmac;
byte mcDigest[CRYPT_SHA512_DIGEST_SIZE];
CRYPT_HMAC_SetKey(&mcHmac, CRYPT_HMAC_SHA, key, 4);
CRYPT_HMAC_DataAdd(&mcHmac, ourData, OUR_DATA_SIZE);
CRYPT_HMAC_Finalize(&mcHmac, mcDigest);