diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2009-09-09 12:15:08 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2009-09-09 12:15:08 +0000 |
commit | 8c7168698ee338f202d23da9805981c57a8b3a33 (patch) | |
tree | 353ca521891c708587689dbda4832a5bcdc344ce /crypto/dsa/dsa_sign.c | |
parent | b5ca7df5aa359875a5b4fe2868eceb93ba39994c (diff) | |
download | openssl-8c7168698ee338f202d23da9805981c57a8b3a33.tar.gz |
Seed PRNG with DSA and ECDSA digests for additional protection against
possible PRNG state duplication.
Diffstat (limited to 'crypto/dsa/dsa_sign.c')
-rw-r--r-- | crypto/dsa/dsa_sign.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/dsa/dsa_sign.c b/crypto/dsa/dsa_sign.c index 6ac8e486e8..17555e5892 100644 --- a/crypto/dsa/dsa_sign.c +++ b/crypto/dsa/dsa_sign.c @@ -60,6 +60,7 @@ #include "cryptlib.h" #include <openssl/dsa.h> +#include <openssl/rand.h> DSA_SIG * DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) { @@ -70,6 +71,7 @@ int DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, unsigned int *siglen, DSA *dsa) { DSA_SIG *s; + RAND_seed(dgst, dlen); s=DSA_do_sign(dgst,dlen,dsa); if (s == NULL) { |