Remove zero special-case in BN_mod_exp_mont.

A number intended to treat the base as secret should not be branching on
whether it is zero. Test-wise, this is covered by existing tests in bnmod.txt.

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6733)
This commit is contained in:
David Benjamin 2018-07-17 13:20:28 -04:00
parent 8937a4ed8a
commit 61ac9fc5c4

View file

@ -356,11 +356,6 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p,
aa = val[0]; aa = val[0];
} else } else
aa = a; aa = a;
if (BN_is_zero(aa)) {
BN_zero(rr);
ret = 1;
goto err;
}
if (!bn_to_mont_fixed_top(val[0], aa, mont, ctx)) if (!bn_to_mont_fixed_top(val[0], aa, mont, ctx))
goto err; /* 1 */ goto err; /* 1 */