EVP_SIGNATURE-HMAC(7SSL)
π EVP_SIGNATURE-HMAC β the legacy EVP_PKEY MAC signature era π
okay bestie, so this is EVP_SIGNATURE-HMAC(7SSL) and honestly? it's giving "vintage". we're talking the 7SSL section, which is where the OpenSSL algorithm docs live to serve cunt. sit down, hydrate, let's go π«Ά
β¨ NAME β¨
EVP_SIGNATURE-HMAC, EVP_SIGNATURE-Siphash, EVP_SIGNATURE-Poly1305, EVP_SIGNATURE-CMAC β the legacy EVP_PKEY MAC signature implementations π
πΈ DESCRIPTION πΈ
So likeβ¦ the algorithms we're talking about here have legacy support for making MACs using EVP_DigestSignInit(3) and all its little related functions. And I need you to hear me when I say: this is NOT the preferred way of creating MACs. π Instead, you should be using the newer EVP_MAC_init(3) functions, fr fr. This whole mechanism exists purely for backwards compatibility with older versions of OpenSSL β it's the nostalgic older sibling of the crypto world π
Here's the tea tho π: all the same signature parameters can be set using EVP_PKEY_CTX_set_params() β yep, the exact same ones you can set via EVP_MAC_CTX_set_params() for the underlying EVP_MAC. Iconic parallel, honestly. Wanna know the details? Go read EVP_MAC-HMAC(7), EVP_MAC-Siphash(7), EVP_MAC-Poly1305(7) and EVP_MAC-CMAC(7). Obsessed with them for you π
And if you're curious about the parameters that are supported during the creation of an EVP_PKEY, you're gonna wanna check out EVP_PKEY-HMAC(7), EVP_PKEY-Siphash(7), EVP_PKEY-Poly1305(7) or EVP_PKEY-CMAC(7). All the deets live there β¨
π¦ For HMAC and CMAC specifically π¦
For HMAC and CMAC, the OpenSSL FIPS provider also makes the following parameter available with EVP_PKEY_CTX_get_params(3):
"fips-indicator"(OSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR)<integer>β returns1if the operation is FIPS approved, or0otherwise. it's basically a vibe check for compliance π Wanna know more? See "FIPS indicators" infips_module(7)β no cap.
π SEE ALSO π
EVP_MAC_init(3)EVP_DigestSignInit(3)EVP_PKEY-HMAC(7)EVP_PKEY-Siphash(7)EVP_PKEY-Poly1305(7)EVP_PKEY-CMAC(7)EVP_MAC-HMAC(7)EVP_MAC-Siphash(7)EVP_MAC-Poly1305(7)EVP_MAC-CMAC(7)provider-signature(7)
π COPYRIGHT π
Copyright 2020-2026 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>.
okay periodt, that's the whole page π read your LICENSE, use the new MAC functions, and stay approved bestie π
and that's a wrap on EVP_SIGNATURE-HMAC(7SSL) from OpenSSL 4.0.3, dated 2026-09-29 β mwah, love u, bye πβ¨π¦
π¦ where this page comes from
- ubuntu stonking: openssl 4.0.3-1ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms