Home | History | Annotate | Download | only in bn

Lines Matching refs:ctx

120 int BN_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx)
132 BN_CTX_start(ctx);
134 rr = BN_CTX_get(ctx);
137 v = BN_CTX_get(ctx);
149 if (!BN_sqr(v,v,ctx)) goto err;
152 if (!BN_mul(rr,rr,v,ctx)) goto err;
158 BN_CTX_end(ctx);
165 BN_CTX *ctx)
220 ret=BN_mod_exp_mont_word(r,A,p,m,ctx,NULL);
224 ret=BN_mod_exp_mont(r,a,p,m,ctx,NULL);
229 { ret=BN_mod_exp_recp(r,a,p,m,ctx); }
231 { ret=BN_mod_exp_simple(r,a,p,m,ctx); }
240 const BIGNUM *m, BN_CTX *ctx)
245 /* Table of variables obtained from 'ctx' */
264 BN_CTX_start(ctx);
265 aa = BN_CTX_get(ctx);
266 val[0] = BN_CTX_get(ctx);
275 if (BN_RECP_CTX_set(&recp,aa,ctx) <= 0) goto err;
279 if (BN_RECP_CTX_set(&recp,m,ctx) <= 0) goto err;
282 if (!BN_nnmod(val[0],a,m,ctx)) goto err; /* 1 */
293 if (!BN_mod_mul_reciprocal(aa,val[0],val[0],&recp,ctx))
298 if(((val[i] = BN_CTX_get(ctx)) == NULL) ||
300 aa,&recp,ctx))
319 if (!BN_mod_mul_reciprocal(r,r,r,&recp,ctx))
349 if (!BN_mod_mul_reciprocal(r,r,r,&recp,ctx))
354 if (!BN_mod_mul_reciprocal(r,r,val[wvalue>>1],&recp,ctx))
365 BN_CTX_end(ctx);
373 const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont)
379 /* Table of variables obtained from 'ctx' */
385 return BN_mod_exp_mont_consttime(rr, a, p, m, ctx, in_mont);
404 BN_CTX_start(ctx);
405 d = BN_CTX_get(ctx);
406 r = BN_CTX_get(ctx);
407 val[0] = BN_CTX_get(ctx);
418 if (!BN_MONT_CTX_set(mont,m,ctx)) goto err;
423 if (!BN_nnmod(val[0],a,m,ctx))
435 if (!BN_to_montgomery(val[0],aa,mont,ctx)) goto err; /* 1 */
440 if (!BN_mod_mul_montgomery(d,val[0],val[0],mont,ctx)) goto err; /* 2 */
444 if(((val[i] = BN_CTX_get(ctx)) == NULL) ||
446 d,mont,ctx))
458 if (!BN_to_montgomery(r,BN_value_one(),mont,ctx)) goto err;
465 if (!BN_mod_mul_montgomery(r,r,r,mont,ctx))
496 if (!BN_mod_mul_montgomery(r,r,r,mont,ctx))
501 if (!BN_mod_mul_montgomery(r,r,val[wvalue>>1],mont,ctx))
510 if (!BN_from_montgomery(rr,r,mont,ctx)) goto err;
514 BN_CTX_end(ctx);
573 const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont)
606 BN_CTX_start(ctx);
607 r = BN_CTX_get(ctx);
618 if (!BN_MONT_CTX_set(mont,m,ctx)) goto err;
638 if (!BN_to_montgomery(r,BN_value_one(),mont,ctx)) goto err;
642 computeTemp = BN_CTX_get(ctx);
643 am = BN_CTX_get(ctx);
648 if (!BN_mod(am,a,m,ctx))
654 if (!BN_to_montgomery(am,aa,mont,ctx)) goto err;
668 if (!BN_mod_mul_montgomery(computeTemp,am,computeTemp,mont,ctx))
698 if (!BN_mod_mul_montgomery(r,r,r,mont,ctx)) goto err;
706 if (!BN_mod_mul_montgomery(r,r,computeTemp,mont,ctx)) goto err;
710 if (!BN_from_montgomery(rr,r,mont,ctx)) goto err;
721 BN_CTX_end(ctx);
726 const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *in_mont)
737 (BN_mod(t, r, m, ctx) && (swap_tmp = r, r = t, t = swap_tmp, 1))))
747 (BN_set_word(r, (w)) && BN_to_montgomery(r, r, (mont), ctx))
780 BN_CTX_start(ctx);
781 d = BN_CTX_get(ctx);
782 r = BN_CTX_get(ctx);
783 t = BN_CTX_get(ctx);
791 if (!BN_MONT_CTX_set(mont, m, ctx)) goto err;
820 if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) goto err;
864 if (!BN_from_montgomery(rr, r, mont, ctx)) goto err;
869 BN_CTX_end(ctx);
877 const BIGNUM *m, BN_CTX *ctx)
882 /* Table of variables obtained from 'ctx' */
900 BN_CTX_start(ctx);
901 d = BN_CTX_get(ctx);
902 val[0] = BN_CTX_get(ctx);
905 if (!BN_nnmod(val[0],a,m,ctx)) goto err; /* 1 */
916 if (!BN_mod_mul(d,val[0],val[0],m,ctx))
921 if(((val[i] = BN_CTX_get(ctx)) == NULL) ||
922 !BN_mod_mul(val[i],val[i-1],d,m,ctx))
941 if (!BN_mod_mul(r,r,r,m,ctx))
971 if (!BN_mod_mul(r,r,r,m,ctx))
976 if (!BN_mod_mul(r,r,val[wvalue>>1],m,ctx))
987 BN_CTX_end(ctx);