summaryrefslogtreecommitdiffstats
path: root/doc/man3/EVP_SignInit.pod
diff options
context:
space:
mode:
authorDr. Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>2019-06-27 10:12:08 +0200
committerDr. Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>2019-06-27 14:39:07 +0200
commit262c00882a2fd7cf16672bf467a86f75b4098a7c (patch)
tree8145f67128e8db9c6a5d39f1da0017e8899231fb /doc/man3/EVP_SignInit.pod
parent0588be2e01c244c41b0215689f411a6223063fd7 (diff)
man: clarify the 'random number generator must be seeded' requirement
The manual pages require for some API functions that the 'random number generator must be seeded' before calling the function. Initially, this was meant literally, i.e. the OpenSSL CSPRNG had to be seeded manually before calling these functions. Since version 1.1.1, the CSPRNG is seeded automatically on first use, so it's not the responsibility of the programmer anymore. Still, he needs to be aware that the seeding might fail. Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/9257)
Diffstat (limited to 'doc/man3/EVP_SignInit.pod')
-rw-r--r--doc/man3/EVP_SignInit.pod7
1 files changed, 4 insertions, 3 deletions
diff --git a/doc/man3/EVP_SignInit.pod b/doc/man3/EVP_SignInit.pod
index 02786d076e..8dbc644ae6 100644
--- a/doc/man3/EVP_SignInit.pod
+++ b/doc/man3/EVP_SignInit.pod
@@ -66,9 +66,10 @@ The B<EVP> interface to digital signatures should almost always be used in
preference to the low level interfaces. This is because the code then becomes
transparent to the algorithm used and much more flexible.
-When signing with DSA private keys the random number generator must be seeded
-or the operation will fail. The random number generator does not need to be
-seeded for RSA signatures.
+When signing with DSA private keys the random number generator must be seeded.
+If the automatic seeding or reseeding of the OpenSSL CSPRNG fails due to
+external circumstances (see L<RAND(7)>), the operation will fail.
+This requirement does not hold for RSA signatures.
The call to EVP_SignFinal() internally finalizes a copy of the digest context.
This means that calls to EVP_SignUpdate() and EVP_SignFinal() can be called