MontExp
MontExp
Computes Montgomery exponentiation.
Syntax
IppStatus ippsMontExp(const IppsBigNumState *
pA
, const IppsBigNumState *
pE
, IppsMontState *
m
, IppsBigNumState *
pR
);
Include Files
ippcp.h
Parameters
- pA
- Pointer to the big number Montgomery integer within the range of[0,m- 1].
- pE
- Pointer to the big number exponent.
- m
- Modulus.
- pR
- Pointer to the montgomery exponentiation result.
Description
The function computes Montgomery exponentiation with the exponent specified by the input positive integer big number to the given positive integer big number of the Montgomery form with respect to the modulus
m
. The following pseudocode represents this function:
pR
←
pA
pE
R
-(
pE
-1)
mod m
.
Return Values
- ippStsNoErr
- Indicates no error. Any other value indicates an error or warning.
- ippStsBadArgErr
- Indicates an error condition ifpAorpEis a negative integer.
- ippStsNullPtrErr
- Indicates an error condition if any of the specified pointers isNULL.
- ippStsScaleRangeErr
- Indicates an error condition ifpAorpEis more thanm.
- ippStsOutOfRangeErr
- Indicates an error condition ifIppsBigNumState*pRis larger thanIppsMontState*m.
- ippStsContextMatchErr
- Indicates an error condition if any of the context parameters does not match the operation.
The size of
IppsBigNumState *
pR
should not be less than the data length of the modulus m
.