Developer Guide and Reference for Intel® Integrated Performance Primitives Cryptography
A newer version of this document is available. Customers should click here to go to the newest version.
GFpECESSetKey_SM2
Computes a shared secret.
Syntax
IppStatus ippsGFpECESSetKey_SM2(const IppsBigNumState* pPrivate, const IppsGFpECPoint* pPublic, IppsECES_StateSM2* pState, IppsGFpECState* pEC, Ipps8u* pEcScratchBuffer);
Include Files
ippcp.h
Parameters
pEC  |  
        Pointer to the elliptic curve context used in the ECES.  |  
       
pState  |  
        Pointer to the buffer being initialized as the ECES context.  |  
       
pPrivate  |  
        Pointer to the own private keys of the elliptic curve.  |  
       
pPublic  |  
        Pointer to the patry public key of the elliptic curve.  |  
       
pEcScratchBuffer  |  
        Pointer to the scratch buffer for the elliptic curve.  |  
       
Description
The function computes a shared secret Z = [Private]* Public for future use.
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 is NULL.  |  
       
ippStsContextMatchErr  |  
        Indicates an error condition if the IppsGFpECState, IppsECES_StateSM2, IppsBigNumState, or IppsGFpECPoint context parameter does not match the operation.  |  
       
ippStsOutOfRangeErr  |  
        Indicates an error conditions in the following cases: 
  |  
       
ippStsNotSupportedModeErr  |  
        Indicates an error condition if the IppsGFpECState context parameter defines an elliptic curve over an extension of the prime finite field.  |  
       
ippStsBadArgErr  |  
        Indicates an error condition if the IppsGFpECState context parameter has an element size that differs from the one used in the ippsGFpECESInit_SM2 function call.  |  
       
ippStsPointAtInfinity  |  
        Indicates an error condition if the IppsGFpECPoint context parameter defines a point at infinity.  |