EVP_MAC-SIPHASH(7ossl)
π EVP_MAC-Siphash β the Siphash era (7ossl manual, bestie)
okay so this is the manual page for EVP_MAC-Siphash, and yes it's an OpenSSL joint, and yes it's about computing Siphash MACs through the EVP_MAC API. that's the whole vibe. let's get into it π
β¨ NAME β¨
EVP_MAC-Siphash β the Siphash EVP_MAC implementation. that's it, that's the name, she's iconic, she's short. π
πΈ DESCRIPTION πΈ
so basically: this is the support for computing Siphash MACs through the EVP_MAC API. if you're out here doing MAC things and you want Siphash in the mix, this is your girl. no cap. π
π¦ Identity π¦
every implementation's gotta have a little name tag, right? this one is identified with these β and you use them with EVP_MAC_fetch():
"SIPHASH", "provider=default"
like, that's her government name and her whole personality. πβ¨
π Supported parameters π
the general description of these parameters lives in "PARAMETERS" in EVP_MAC(3) β go read that if you want the full lore, iykyk.
the important bit: all these parameters can be set with EVP_MAC_CTX_set_params(). and additionally, the "size" parameter can be retrieved with EVP_MAC_CTX_get_params(), or with EVP_MAC_CTX_get_mac_size(). π«Ά
heads up bestie: the length of the"size"parameter should not exceed that of asize_t. like, don't be messy about it. π
now, the parameter menu, one by one:
"key"(akaOSSL_MAC_PARAM_KEY), type<octet string>β sets the MAC key. setting this parameter is identical to passing a key toEVP_MAC_init(3). same thing, different outfit π"size"(akaOSSL_MAC_PARAM_SIZE), type<unsigned integer>β sets the MAC size. that's it. she does what she says on the label. β¨"c-rounds"(akaOSSL_MAC_PARAM_C_ROUNDS), type<unsigned integer>β specifies the number of rounds per message block. by default this is2. yes, TWO. by default. π"d-rounds"(akaOSSL_MAC_PARAM_D_ROUNDS), type<unsigned integer>β specifies the number of finalisation rounds. by default this is4. four. a whole four. π₯
that's the whole parameter list, nothing hiding under the couch, i promise. π
π SEE ALSO π
go be nosy, she's not jealous:
EVP_MAC_CTX_get_params(3)EVP_MAC_CTX_set_params(3)"PARAMETERS"inEVP_MAC(3)OSSL_PARAM(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>.
like, read the license, bestie, it's literally right there π
β¨ mwah xoxo, that's the whole page β¨
this little love letter to Siphash is brought to you by version 3.5.6, dated 2026-04-07 β catch you on the flip side π¦π
π¦ where this page comes from
- freebsd 15.1: base 15.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms