[#BN_mod_exp_mont_consttime] = BN_mod_exp_mont_consttime :mrdocs: Compute modular exponentiation in constant time: `rr` = (`a` ˆ `p)` mod `m.` == Synopsis Declared in `<openssl/bn.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int BN_mod_exp_mont_consttime( xref:BIGNUM.adoc[BIGNUM]* rr, xref:BIGNUM.adoc[BIGNUM] const* a, xref:BIGNUM.adoc[BIGNUM] const* p, xref:BIGNUM.adoc[BIGNUM] const* m, xref:BN_CTX.adoc[BN_CTX]* ctx, xref:BN_MONT_CTX.adoc[BN_MONT_CTX]* in_mont); ---- == Return Value 1 on success, or 0 on error. == Parameters [cols="1,4"] |=== | Name| Description | *rr* | Destination for the result. | *a* | Base. | *p* | Exponent (treated as secret for timing purposes). | *m* | Odd modulus. | *ctx* | BN_CTX for temporary storage. | *in_mont* | Optional precomputed Montgomery context for `m,` or NULL to build one. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#