From 460bf4382257a262fda862f66d6fe97c749f5bb7 Mon Sep 17 00:00:00 2001 From: Matt Johnston Date: Fri, 12 Sep 2008 17:48:33 +0000 Subject: [PATCH] Remove workaround forcing rsa mpint to exactly a 8 bits multiple for putty (see http://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/rsa-non8mult-verify-fail.html , was fixed in 2004) --HG-- extra : convert_revision : f21045c791002d81fc6b8dde6537ea481e513eb2 --- genrsa.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/genrsa.c b/genrsa.c index 73a7984..7e5ecd5 100644 --- a/genrsa.c +++ b/genrsa.c @@ -62,17 +62,13 @@ rsa_key * gen_rsa_priv_key(unsigned int size) { exit(1); } - /* PuTTY doesn't like it if the modulus isn't a multiple of 8 bits, - * so we just generate them until we get one which is OK */ getrsaprime(key->p, &pminus, key->e, size/2); - do { - getrsaprime(key->q, &qminus, key->e, size/2); + getrsaprime(key->q, &qminus, key->e, size/2); - if (mp_mul(key->p, key->q, key->n) != MP_OKAY) { - fprintf(stderr, "rsa generation failed\n"); - exit(1); - } - } while (mp_count_bits(key->n) % 8 != 0); + if (mp_mul(key->p, key->q, key->n) != MP_OKAY) { + fprintf(stderr, "rsa generation failed\n"); + exit(1); + } /* lcm(p-1, q-1) */ if (mp_lcm(&pminus, &qminus, &lcm) != MP_OKAY) {