[KDF] Add feedback-mode and CMAC support to KBKDF
authorRobbie Harwood <rharwood@redhat.com>
Thu, 17 Oct 2019 02:45:03 +0000 (12:45 +1000)
committerShane Lontis <shane.lontis@oracle.com>
Thu, 17 Oct 2019 02:45:03 +0000 (12:45 +1000)
commitf6dead1b72a04b113b4b198ac98a8b9b994ad86f
tree2b8869a78f16f0035fc6707440812b2dcc5ac516
parent028687c08b20ecc463afaf2d692542b88ebfe8bc
[KDF] Add feedback-mode and CMAC support to KBKDF

Implement SP800-108 section 5.2 with CMAC support.  As a side effect,
enable 5.1 with CMAC and 5.2 with HMAC.  Add test vectors from RFC 6803.

Add OSSL_KDF_PARAM_CIPHER and PROV_R_INVALID_SEED_LENGTH.

Signed-off-by: Robbie Harwood <rharwood@redhat.com>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/10143)
crypto/cmac/cmac.c
crypto/err/openssl.txt
doc/man7/EVP_KDF-KB.pod
include/openssl/core_names.h
providers/common/include/prov/providercommonerr.h
providers/common/provider_err.c
providers/common/provider_util.c
providers/implementations/kdfs/kbkdf.c
test/evp_kdf_test.c