Add KMAC support to KBKDF.
authorslontis <shane.lontis@oracle.com>
Thu, 15 Dec 2022 08:57:09 +0000 (18:57 +1000)
committerTomas Mraz <tomas@openssl.org>
Fri, 16 Dec 2022 15:36:49 +0000 (16:36 +0100)
commit211c47ca1b1ac129dcee59d383cae44e36532bb9
tree2e785913a515555bb576ec07d1eb30bdefab9a0a
parentadf289b5b67ecb414ab709a2c25b0c6f0d463d31
Add KMAC support to KBKDF.

Now that ACVP test vectors exist, support has been added for this mode.
See https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-108r1.pdf

Note that the test vectors used fairly large values for the input key
and the context, so the contraints for these has been increased from
256 to 512 bytes.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/19916)
doc/man7/EVP_KDF-KB.pod
doc/man7/EVP_MAC-KMAC.pod
providers/implementations/kdfs/kbkdf.c
providers/implementations/macs/kmac_prov.c
test/evp_kdf_test.c
test/recipes/30-test_evp.t
test/recipes/30-test_evp_data/evpkdf_kbkdf_kmac.txt [new file with mode: 0644]
test/recipes/30-test_evp_data/evpmac_common.txt