Lines Matching refs:m

97 int BN_mod_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, const BIGNUM *m,  in BN_mod_exp()  argument
104 bn_check_top(m); in BN_mod_exp()
142 if (BN_is_odd(m)) { in BN_mod_exp()
147 && (BN_get_flags(m, BN_FLG_CONSTTIME) == 0)) { in BN_mod_exp()
149 ret = BN_mod_exp_mont_word(r, A, p, m, ctx, NULL); in BN_mod_exp()
152 ret = BN_mod_exp_mont(r, a, p, m, ctx, NULL); in BN_mod_exp()
157 ret = BN_mod_exp_recp(r, a, p, m, ctx); in BN_mod_exp()
161 ret = BN_mod_exp_simple(r, a, p, m, ctx); in BN_mod_exp()
170 const BIGNUM *m, BN_CTX *ctx) in BN_mod_exp_recp() argument
181 || BN_get_flags(m, BN_FLG_CONSTTIME) != 0) { in BN_mod_exp_recp()
190 if (BN_abs_is_word(m, 1)) { in BN_mod_exp_recp()
207 if (m->neg) { in BN_mod_exp_recp()
209 if (!BN_copy(aa, m)) in BN_mod_exp_recp()
215 if (BN_RECP_CTX_set(&recp, m, ctx) <= 0) in BN_mod_exp_recp()
219 if (!BN_nnmod(val[0], a, m, ctx)) in BN_mod_exp_recp()
313 const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont) in BN_mod_exp_mont() argument
325 bn_check_top(m); in BN_mod_exp_mont()
327 if (!BN_is_odd(m)) { in BN_mod_exp_mont()
332 if (m->top <= BN_CONSTTIME_SIZE_LIMIT in BN_mod_exp_mont()
335 || BN_get_flags(m, BN_FLG_CONSTTIME) != 0)) { in BN_mod_exp_mont()
336 return BN_mod_exp_mont_consttime(rr, a, p, m, ctx, in_mont); in BN_mod_exp_mont()
342 if (BN_abs_is_word(m, 1)) { in BN_mod_exp_mont()
367 if (!BN_MONT_CTX_set(mont, m, ctx)) in BN_mod_exp_mont()
371 if (a->neg || BN_ucmp(a, m) >= 0) { in BN_mod_exp_mont()
372 if (!BN_nnmod(val[0], a, m, ctx)) in BN_mod_exp_mont()
399 j = m->top; /* borrow j */ in BN_mod_exp_mont()
400 if (m->d[j - 1] & (((BN_ULONG)1) << (BN_BITS2 - 1))) { in BN_mod_exp_mont()
404 r->d[0] = (0 - m->d[0]) & BN_MASK2; in BN_mod_exp_mont()
406 r->d[i] = (~m->d[i]) & BN_MASK2; in BN_mod_exp_mont()
610 const BIGNUM *m, BN_CTX *ctx, in BN_mod_exp_mont_consttime() argument
628 bn_check_top(m); in BN_mod_exp_mont_consttime()
630 if (!BN_is_odd(m)) { in BN_mod_exp_mont_consttime()
635 top = m->top; in BN_mod_exp_mont_consttime()
639 return BN_mod_exp_mont(rr, a, p, m, ctx, in_mont); in BN_mod_exp_mont_consttime()
649 if (BN_abs_is_word(m, 1)) { in BN_mod_exp_mont_consttime()
669 if (!BN_MONT_CTX_set(mont, m, ctx)) in BN_mod_exp_mont_consttime()
673 if (a->neg || BN_ucmp(a, m) >= 0) { in BN_mod_exp_mont_consttime()
676 || !BN_nnmod(reduced, a, m, ctx)) { in BN_mod_exp_mont_consttime()
688 if ((16 == a->top) && (16 == p->top) && (BN_num_bits(m) == 1024) in BN_mod_exp_mont_consttime()
692 RSAZ_1024_mod_exp_avx2(rr->d, a->d, p->d, m->d, mont->RR.d, in BN_mod_exp_mont_consttime()
699 } else if ((8 == a->top) && (8 == p->top) && (BN_num_bits(m) == 512)) { in BN_mod_exp_mont_consttime()
702 RSAZ_512_mod_exp(rr->d, a->d, p->d, m->d, mont->n0[0], mont->RR.d); in BN_mod_exp_mont_consttime()
735 powerbufLen += sizeof(m->d[0]) * (top * numPowers + in BN_mod_exp_mont_consttime()
758 tmp.d = (BN_ULONG *)(powerbuf + sizeof(m->d[0]) * top * numPowers); in BN_mod_exp_mont_consttime()
767 if (m->d[top - 1] & (((BN_ULONG)1) << (BN_BITS2 - 1))) { in BN_mod_exp_mont_consttime()
769 tmp.d[0] = (0 - m->d[0]) & BN_MASK2; in BN_mod_exp_mont_consttime()
771 tmp.d[i] = (~m->d[i]) & BN_MASK2; in BN_mod_exp_mont_consttime()
1164 const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont) in BN_mod_exp_mont_word() argument
1172 #define BN_MOD_MUL_WORD(r, w, m) \ in BN_mod_exp_mont_word() argument
1175 (BN_mod(t, r, m, ctx) && (swap_tmp = r, r = t, t = swap_tmp, 1)))) in BN_mod_exp_mont_word()
1190 || BN_get_flags(m, BN_FLG_CONSTTIME) != 0) { in BN_mod_exp_mont_word()
1197 bn_check_top(m); in BN_mod_exp_mont_word()
1199 if (!BN_is_odd(m)) { in BN_mod_exp_mont_word()
1203 if (m->top == 1) in BN_mod_exp_mont_word()
1204 a %= m->d[0]; /* make sure that 'a' is reduced */ in BN_mod_exp_mont_word()
1209 if (BN_abs_is_word(m, 1)) { in BN_mod_exp_mont_word()
1234 if (!BN_MONT_CTX_set(mont, m, ctx)) in BN_mod_exp_mont_word()
1253 if (!BN_MOD_MUL_WORD(r, w, m)) in BN_mod_exp_mont_word()
1273 if (!BN_MOD_MUL_WORD(r, w, m)) in BN_mod_exp_mont_word()
1289 if (!BN_MOD_MUL_WORD(r, w, m)) in BN_mod_exp_mont_word()
1312 const BIGNUM *m, BN_CTX *ctx) in BN_mod_exp_simple() argument
1322 || BN_get_flags(m, BN_FLG_CONSTTIME) != 0) { in BN_mod_exp_simple()
1328 if (r == m) { in BN_mod_exp_simple()
1336 if (BN_abs_is_word(m, 1)) { in BN_mod_exp_simple()
1351 if (!BN_nnmod(val[0], a, m, ctx)) in BN_mod_exp_simple()
1361 if (!BN_mod_mul(d, val[0], val[0], m, ctx)) in BN_mod_exp_simple()
1366 !BN_mod_mul(val[i], val[i - 1], d, m, ctx)) in BN_mod_exp_simple()
1393 if (!BN_mod_mul(r, r, r, m, ctx)) in BN_mod_exp_simple()
1422 if (!BN_mod_mul(r, r, r, m, ctx)) in BN_mod_exp_simple()
1427 if (!BN_mod_mul(r, r, val[wvalue >> 1], m, ctx)) in BN_mod_exp_simple()