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 the IppsGFpECPoint context. |
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 be NULL. |
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:
|
ippStsContextMatchErr |
Indicates an error condition if either pPoint or pEC context 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 point pPoint do not belong to the finite field over which the elliptic curve is initialized. |
ippStsLengthErr |
Indicates an error condition if msgLen is negative. |
ippStsQuadraticNonResidueErr |
Indicates an error condition if the square of the |