• Stephan Mueller's avatar
    crypto: drbg - add FIPS 140-2 CTRNG for noise source · db07cd26
    Stephan Mueller authored
    FIPS 140-2 section 4.9.2 requires a continuous self test of the noise
    source. Up to kernel 4.8 drivers/char/random.c provided this continuous
    self test. Afterwards it was moved to a location that is inconsistent
    with the FIPS 140-2 requirements. The relevant patch was
    e192be9d .
    
    Thus, the FIPS 140-2 CTRNG is added to the DRBG when it obtains the
    seed. This patch resurrects the function drbg_fips_continous_test that
    existed some time ago and applies it to the noise sources. The patch
    that removed the drbg_fips_continous_test was
    b3614763 .
    
    The Jitter RNG implements its own FIPS 140-2 self test and thus does not
    need to be subjected to the test in the DRBG.
    
    The patch contains a tiny fix to ensure proper zeroization in case of an
    error during the Jitter RNG data gathering.
    Signed-off-by: default avatarStephan Mueller <smueller@chronox.de>
    Reviewed-by: default avatarYann Droneaud <ydroneaud@opteya.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    db07cd26
drbg.h 9 KB