[#BN_mod_exp_mont] = BN_mod_exp_mont :mrdocs: Compute modular exponentiation using Montgomery reduction: r = (a ˆ p) mod m. == Synopsis Declared in `<openssl/bn.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int BN_mod_exp_mont( xref:BIGNUM.adoc[BIGNUM]* r, 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]* m_ctx); ---- == Return Value 1 on success, or 0 on error. == Parameters [cols="1,4"] |=== | Name| Description | *r* | Destination for the result. | *a* | Base. | *p* | Exponent. | *m* | Modulus (must be odd). | *ctx* | BN_CTX scratch space. | *m_ctx* | Montgomery context for `m,` or NULL to build one temporarily. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#