GFpECKeyExchangeSM2_Setup¶
Set up the IppsGFpECKeyExchangeSM2State
context for further operation of the SM2 Key Exchange algorithm.
Syntax¶
IppStatus ippsGFpECKeyExchangeSM2_Setup(const Ipp8u pZSelf[IPP_SM3_DIGEST_BYTESIZE], const Ipp8u pZPeer[IPP_SM3_DIGEST_BYTESIZE], const IppsGFpECPoint * pPublicKeySelf, const IppsGFpECPoint * pPublicKeyPeer, const IppsGFpECPoint * pEphPublicKeySelf, const IppsGFpECPoint * pEphPublicKeyPeer, psGFpECKeyExchangeSM2State * pKE)
Include Files¶
ippcp.h
Parameters¶
pZSelf |
Pointer to the Self-User ID Hash. |
pZPeer |
Pointer to the Peer-User ID Hash. |
pPublicKeySelf |
Pointer to the Self-public key of the elliptic curve. |
pPublicKeyPeer |
Pointer to the Peer-public key of the elliptic curve. |
pEphPublicKeySelf |
Ephemeral pointer to the Self-public key of the elliptic curve. |
pEphPublicKeyPeer |
Ephemeral pointer to the Peer-public key of the elliptic curve. |
pKE |
Pointer to the buffer begging initialization. |
Description¶
Set up public/public ephemeral keys and User ID Hash to the IppsGFpECKeyExchangeSM2State
context for further operation of the SM2 Key Exchange scheme.
Return Values¶
ippStsNoErr |
Indicates no error. Any other value indicates an error or warning. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers are NULL. |
ippStsContextMatchErr |
Indicates an error condition if the |
ippStsNotSupportedModeErr |
Indicates an error condition if the |
ippStsRangeErr |
Indicates an error condition if the length in bits of the elliptic curve is less than the length in bits of the SM3 hash digest. |
ippStsBadArgErr |
Indicates an error condition if the role is not equal to |
ippStsInvalidPoint |
Indicates an error condition if the point of the elliptic curve does not belong to the elliptic curve. |
ippStsOutOfRangeErr |
Indicates an error condition if public key lengths are out of range. |