]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Add documentation to explain DRBG changes
authorSimo Sorce <simo@redhat.com>
Fri, 7 Feb 2025 19:20:00 +0000 (14:20 -0500)
committerDmitry Belyavskiy <beldmit@gmail.com>
Tue, 11 Feb 2025 20:50:53 +0000 (21:50 +0100)
Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/26542)

CHANGES.md
doc/man7/EVP_RAND-CTR-DRBG.pod
doc/man7/EVP_RAND-HASH-DRBG.pod
doc/man7/EVP_RAND-HMAC-DRBG.pod

index 5a16e267c6d434d2411db8ae88cb9dd0d15a7628..2b0ae31890d43574a28044010bc882592a53940d 100644 (file)
@@ -35,6 +35,14 @@ OpenSSL 3.5
 
    *Matt Caswell*
 
+ * The default DRBG implementations have been changed to prefer to fetch
+   algorithm implementations from the default provider (the provider the
+   DRBG implementation is built in) regardless of the default properties
+   set in the configuration file. The code will still fallback to find
+   an implementation, as done previously, if needed.
+
+   *Simo Sorce*
+
  * For TLSv1.3: Add capability for a client to send multiple key shares. Extend the scope of
    `SSL_OP_CIPHER_SERVER_PREFERENCE` to cover server-side key exchange group selection.
    Extend the server-side key exchange group selection algorithm and related group list syntax
index 3e10f189d3bbf2a2464a0bed80875fbf49be025e..51c8c0450d794d028d39e1cf9f65a95eca1478cd 100644 (file)
@@ -65,6 +65,12 @@ A context for CTR DRBG can be obtained by calling:
  EVP_RAND *rand = EVP_RAND_fetch(NULL, "CTR-DRBG", NULL);
  EVP_RAND_CTX *rctx = EVP_RAND_CTX_new(rand, NULL);
 
+The default CTR-DRBG implementation attempts to fetch the required internal
+algorithms from the provider they are built into (eg the default provider)
+regardless of the properties provided. Should the provider not implement
+the required algorithms then properties will be used to find a different
+implementation.
+
 =head1 EXAMPLES
 
  EVP_RAND *rand;
index ff5b1fa608de8bc9a5d94d5ce7bbcc1636af21e7..2025771da803610ff6f17a929709f1f0e3773ca2 100644 (file)
@@ -64,6 +64,12 @@ When the FIPS provider is installed using the B<-no_drbg_truncated_digests>
 option to fipsinstall, only these digests are permitted (as per
 L<FIPS 140-3 IG D.R|https://csrc.nist.gov/CSRC/media/Projects/cryptographic-module-validation-program/documents/fips%20140-3/FIPS%20140-3%20IG.pdf>):
 
+The default HASH-DRBG implementation attempts to fetch the required internal
+algorithms from the provider they are built into (eg the default provider)
+regardless of the properties provided. Should the provider not implement
+the required algorithms then properties will be used to find a different
+implementation.
+
 =over 4
 
 =item SHA-1
index f7407a734ade3c77098ad0bcc27c506ee66aebd1..e640586b4900adaeb5b996d0c267658ad8fa2c05 100644 (file)
@@ -65,6 +65,12 @@ These parameters work as described in L<provider-rand(7)/PARAMETERS>.
 When using the FIPS provider, only these digests are permitted (as per
 L<FIPS 140-3 IG D.R|https://csrc.nist.gov/CSRC/media/Projects/cryptographic-module-validation-program/documents/fips%20140-3/FIPS%20140-3%20IG.pdf>):
 
+The default HMAC-DRBG implementation attempts to fetch the required internal
+algorithms from the provider they are built into (eg the default provider)
+regardless of the properties provided. Should the provider not implement
+the required algorithms then properties will be used to find a different
+implementation.
+
 =over 4
 
 =item SHA-1