From: Niels Möller Date: Mon, 14 Sep 2015 19:13:37 +0000 (+0200) Subject: Use rsa_compute_root_tr also in rsa_decrypt_tr. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=95cef9848bff3f7be6d751008a1a4ebcb821a3e2;p=thirdparty%2Fnettle.git Use rsa_compute_root_tr also in rsa_decrypt_tr. --- diff --git a/ChangeLog b/ChangeLog index 0959eb6f..d199a702 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2015-09-14 Niels Möller + * rsa-decrypt-tr.c (rsa_decrypt_tr): Use rsa_compute_root_tr. + Mainly for simplicity and consistency, I'm not aware of any CRT + fault attacks on RSA decryption. + * testsuite/rsa-encrypt-test.c (test_main): Added test with invalid private key. diff --git a/rsa-decrypt-tr.c b/rsa-decrypt-tr.c index d28badd6..e4fbc5fe 100644 --- a/rsa-decrypt-tr.c +++ b/rsa-decrypt-tr.c @@ -48,18 +48,14 @@ rsa_decrypt_tr(const struct rsa_public_key *pub, size_t *length, uint8_t *message, const mpz_t gibberish) { - mpz_t m, ri; + mpz_t m; int res; mpz_init_set(m, gibberish); - mpz_init (ri); - _rsa_blind (pub, random_ctx, random, m, ri, m); - rsa_compute_root(key, m, m); - _rsa_unblind (pub, m, ri, m); - mpz_clear (ri); + res = (rsa_compute_root_tr (pub, key, random_ctx, random, m, gibberish) + && pkcs1_decrypt (key->size, m, length, message)); - res = pkcs1_decrypt (key->size, m, length, message); mpz_clear(m); return res; }