BN_mod_exp_mont_word

Montgomery modular exponentiation with a single-word base: r = (a ^ p) mod m.

Synopsis

Declared in <openssl/bn.h>

int
BN_mod_exp_mont_word(
    BIGNUM* r,
    unsigned long a,
    BIGNUM const* p,
    BIGNUM const* m,
    BN_CTX* ctx,
    BN_MONT_CTX* m_ctx);

Return Value

1 on success, or 0 on error.

Parameters

NameDescription
rDestination for the result.
aWord-sized base.
pExponent.
mOdd modulus.
ctxBN_CTX scratch space.
m_ctxMontgomery context for m, or NULL to build one temporarily.