GFpECSetPointHash, GFpECSetPointHashBackCompatible, GFpECSetPointHash_rmf, GFpECSetPointHashBackCompatible_rmf
GFpECSetPointHash
, GFpECSetPointHashBackCompatible
, GFpECSetPointHash_rmf
, GFpECSetPointHashBackCompatible_rmf
Constructs a point on an elliptic curve based on the hash of the input message.
Syntax
IppStatus ippsGFpECSetPointHash(Ipp32u
hdr
, const Ipp8u*
pMsg
, int
msgLen
, IppsGFpECPoint*
pPoint
, IppsGFpECState*
pEC
, IppHashAlgId
hashID
, Ipp8u*
pScratchBuffer
);
IppStatus ippsGFpECSetPointHash_rmf(Ipp32u
hdr
, const Ipp8u*
pMsg
, int
msgLen
, IppsGFpECPoint*
pPoint
, IppsGFpECState*
pEC
, const IppsHashMethod*
pMethod
, Ipp8u*
pScratchBuffer
);
IppStatus ippsGFpECSetPointHashBaskComatible(Ipp32u
hdr
, const Ipp8u*
pMsg
, int
msgLen
, IppsGFpECPoint*
pPoint
, IppsGFpECState*
pEC
, IppHashAlgId hashID
, Ipp8u*
pScratchBuffer
);
IppStatus ippsGFpECSetPointHashBaskComatible_rmf(Ipp32u
hdr
, const Ipp8u*
pMsg
, int
msgLen
, IppsGFpECPoint*
pPoint
, IppsGFpECState*
pEC
, const IppsHashMethod*
pMethod
, Ipp8u*
pScratchBuffer
);
Include Files
ippcp.h
Parameters
- hdr
- Header of the input message.
- pMsg
- Pointer to the input message.
- msgLen
- Length of the input message.
- pPoint
- Pointer to theIppsGFpECPointcontext.
- pEC
- Pointer to the context of the elliptic curve.
- hashID
- ID of the hash algorithm used. For details, see Supported Hash Algorithms.
- pMethod
- Predefined Hash Algorithm method. For details, see Supported Hash Algorithms.
- pScratchBuffer
- Pointer to the scratch buffer. Can beNULL.
Description
This function makes the coordinates of a point on the elliptic curve over the finite field from a hash of the
X
-coordinate. If the pointer to the scratch buffer is NULL
, the function uses a short internal buffer for computations.The
X
-coordinate is computed by the following pseudocode formula: X = hash(hdr || message)
.Return Values
- ippStsNoErr
- Indicates no error. Any other value indicates an error or warning.
- ippStsNullPtrErr
- Indicates an error condition in the following cases:
- pPointorpECisNULL.
- Length of the message is more than zero, and the pointerpMsgisNULL.
- ippStsContextMatchErr
- Indicates an error condition if eitherpPointorpECcontext parameter does not match the operation.
- ippStsBadArgErr
- Indicates an error condition if the finite field over which the elliptic curve is initialized is not prime.
- ippStsOutOfRangeErr
- Indicates an error condition if the coordinates of the pointpPointdo not belong to the finite field over which the elliptic curve is initialized.
- ippStsLengthErr
- Indicates an error condition ifmsgLenis negative.
- ippStsQuadraticNonResidueErr
- Indicates an error condition if the square of theY-coordinate of the point is a quadratic non-residue modulop.