• Stephan Müller's avatar
    crypto: jitter - update implementation to 2.1.2 · d9d67c87
    Stephan Müller authored
    The Jitter RNG implementation is updated to comply with upstream version
    2.1.2. The change covers the following aspects:
    
    * Time variation measurement is conducted over the LFSR operation
    instead of the XOR folding
    
    * Invcation of stuck test during initialization
    
    * Removal of the stirring functionality and the Von-Neumann
    unbiaser as the LFSR using a primitive and irreducible polynomial
    generates an identical distribution of random bits
    
    This implementation was successfully used in FIPS 140-2 validations
    as well as in German BSI evaluations.
    
    This kernel implementation was tested as follows:
    
    * The unchanged kernel code file jitterentropy.c is compiled as part
    of user space application to generate raw unconditioned noise
    data. That data is processed with the NIST SP800-90B non-IID test
    tool to verify that the kernel code exhibits an equal amount of noise
    as the upstream Jitter RNG version 2.1.2.
    
    * Using AF_ALG with the libkcapi tool of kcapi-rng the Jitter...
    d9d67c87
jitterentropy.c 19.3 KB