diff options
author | Billy Brumley <bbrumley@gmail.com> | 2018-04-11 10:10:58 +0300 |
---|---|---|
committer | Dariusz Michaluk <d.michaluk@samsung.com> | 2018-07-05 13:48:38 +0200 |
commit | 660e8dac08ffafb252b2b252e1d286651e70c486 (patch) | |
tree | e20f40664e324e4f7c3973641fd419558467c4c2 | |
parent | 744c72fc59722ae4837dc74f0b0f469d52a23669 (diff) | |
download | openssl-660e8dac08ffafb252b2b252e1d286651e70c486.tar.gz openssl-660e8dac08ffafb252b2b252e1d286651e70c486.tar.bz2 openssl-660e8dac08ffafb252b2b252e1d286651e70c486.zip |
RSA key generation: ensure BN_mod_inverse and BN_mod_exp_mont both get called with BN_FLG_CONSTTIME flag set.
CVE-2018-0737
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(cherry picked from commit 6939eab03a6e23d2bd2c3f5e34fe1d48e542e787)
Change-Id: I7ff51315e409dd39d6e0e9174d43d3221940bed2
-rw-r--r-- | crypto/rsa/rsa_gen.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/crypto/rsa/rsa_gen.c b/crypto/rsa/rsa_gen.c index 9ca5dfe..42b89a8 100644 --- a/crypto/rsa/rsa_gen.c +++ b/crypto/rsa/rsa_gen.c @@ -156,6 +156,8 @@ static int rsa_builtin_keygen(RSA *rsa, int bits, BIGNUM *e_value, if (BN_copy(rsa->e, e_value) == NULL) goto err; + BN_set_flags(rsa->p, BN_FLG_CONSTTIME); + BN_set_flags(rsa->q, BN_FLG_CONSTTIME); BN_set_flags(r2, BN_FLG_CONSTTIME); /* generate p and q */ for (;;) { |