• D
    DRBG: make the derivation function the default for ctr_drbg · 8164d91d
    Dr. Matthias St. Pierre 提交于
    The NIST standard presents two alternative ways for seeding the
    CTR DRBG, depending on whether a derivation function is used or not.
    In Section 10.2.1 of NIST SP800-90Ar1 the following is assessed:
    
      The use of the derivation function is optional if either an
      approved RBG or an entropy source provides full entropy output
      when entropy input is requested by the DRBG mechanism.
      Otherwise, the derivation function shall be used.
    
    Since the OpenSSL DRBG supports being reseeded from low entropy random
    sources (using RAND_POOL), the use of a derivation function is mandatory.
    For that reason we change the default and replace the opt-in flag
    RAND_DRBG_FLAG_CTR_USE_DF with an opt-out flag RAND_DRBG_FLAG_CTR_NO_DF.
    This change simplifies the RAND_DRBG_new() calls.
    Reviewed-by: NRich Salz <rsalz@openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/5294)
    8164d91d
drbg_lib.c 28.1 KB