summaryrefslogtreecommitdiff
path: root/cipher/dsa.c
diff options
context:
space:
mode:
authorNIIBE Yutaka <gniibe@fsij.org>2021-01-19 15:50:31 +0900
committerNIIBE Yutaka <gniibe@fsij.org>2021-01-19 15:50:31 +0900
commit30ed9593f632c728d918598037358deaeccd1968 (patch)
tree49699545b4d350f30750b8b5affa2a1801f6b3fb /cipher/dsa.c
parentebeae53222648c637907f4b358888fc0e7123dc9 (diff)
downloadlibgcrypt-30ed9593f632c728d918598037358deaeccd1968.tar.gz
Fix DSA for FIPS 186-3.
* cipher/dsa.c (generate_fips186): Supply INITIAL_SEED to _gcry_generate_fips186_3_prime. * tests/fips186-dsa.c (check_dsa_gen_186_2): Add where tv comes from. (check_dsa_gen_186_3): Implement tests. * tests/pubkey.c (get_dsa_key_fips186_with_seed_new): Use the qbits and seed of tests/fips186-dsa.c. Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
Diffstat (limited to 'cipher/dsa.c')
-rw-r--r--cipher/dsa.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/cipher/dsa.c b/cipher/dsa.c
index b93e385e..d793b9aa 100644
--- a/cipher/dsa.c
+++ b/cipher/dsa.c
@@ -458,7 +458,9 @@ generate_fips186 (DSA_secret_key *sk, unsigned int nbits, unsigned int qbits,
r_counter,
r_seed, r_seedlen);
else
- ec = _gcry_generate_fips186_3_prime (nbits, qbits, NULL, 0,
+ ec = _gcry_generate_fips186_3_prime (nbits, qbits,
+ initial_seed.seed,
+ initial_seed.seedlen,
&prime_q, &prime_p,
r_counter,
r_seed, r_seedlen, NULL);