• Stephan Müller's avatar
    crypto: kdf - add SP800-108 counter key derivation function · 026a733e
    Stephan Müller authored
    SP800-108 defines three KDFs - this patch provides the counter KDF
    implementation.
    
    The KDF is implemented as a service function where the caller has to
    maintain the hash / HMAC state. Apart from this hash/HMAC state, no
    additional state is required to be maintained by either the caller or
    the KDF implementation.
    
    The key for the KDF is set with the crypto_kdf108_setkey function which
    is intended to be invoked before the caller requests a key derivation
    operation via crypto_kdf108_ctr_generate.
    
    SP800-108 allows the use of either a HMAC or a hash as crypto primitive
    for the KDF. When a HMAC primtive is intended to be used,
    crypto_kdf108_setkey must be used to set the HMAC key. Otherwise, for a
    hash crypto primitve crypto_kdf108_ctr_generate can be used immediately
    after allocating the hash handle.
    Signed-off-by: default avatarStephan Mueller <smueller@chronox.de>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    026a733e
Kconfig 55.7 KB