ecc: Fix a minor flaw in the generation of K.
authorWerner Koch <wk@gnupg.org>
Fri, 24 May 2013 13:52:37 +0000 (15:52 +0200)
committerWerner Koch <wk@gnupg.org>
Fri, 24 May 2013 13:52:37 +0000 (15:52 +0200)
commit9711384f75564a71979e3fb971b5f4cadcf1afef
treeed2caca86567d96e608e510ff715017e7430d789
parent0bdf26eea8cdbffefe7e37578f8f896c4f5f5275
ecc: Fix a minor flaw in the generation of K.

* cipher/dsa.c (gen_k): Factor code out to ..
* cipher/dsa-common.c (_gcry_dsa_gen_k): new file and function.  Add
arg security_level and re-indent a bit.
* cipher/ecc.c (gen_k): Remove and change callers to _gcry_dsa_gen_k.
* cipher/dsa.c: Include pubkey-internal.
* cipher/Makefile.am (libcipher_la_SOURCES): Add dsa-common.c
--

The ECDSA code used the simple $k = k \bmod p$ method which introduces
a small bias.  We now use the bias free method we have always used
with DSA.

Signed-off-by: Werner Koch <wk@gnupg.org>
cipher/Makefile.am
cipher/dsa-common.c [new file with mode: 0644]
cipher/dsa.c
cipher/ecc.c
cipher/pubkey-internal.h