Skip to content
  • Stephan Mueller's avatar
    crypto: drbg - SP800-90A Deterministic Random Bit Generator · 541af946
    Stephan Mueller authored
    
    
    This is a clean-room implementation of the DRBG defined in SP800-90A.
    All three viable DRBGs defined in the standard are implemented:
    
     * HMAC: This is the leanest DRBG and compiled per default
     * Hash: The more complex DRBG can be enabled at compile time
     * CTR: The most complex DRBG can also be enabled at compile time
    
    The DRBG implementation offers the following:
    
     * All three DRBG types are implemented with a derivation function.
     * All DRBG types are available with and without prediction resistance.
     * All SHA types of SHA-1, SHA-256, SHA-384, SHA-512 are available for
       the HMAC and Hash DRBGs.
     * All AES types of AES-128, AES-192 and AES-256 are available for the
       CTR DRBG.
     * A self test is implemented with drbg_healthcheck().
     * The FIPS 140-2 continuous self test is implemented.
    
    Signed-off-by: default avatarStephan Mueller <smueller@chronox.de>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    541af946