Developer Reference for Intel® Integrated Performance Primitives Cryptography 2018

GFpECBindGxyTblStd

Enables the use of base point-based pre-computed tables of standard elliptic curves.

Syntax

IppStatus ippsGFpECBindGxyTblStd192r1(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStd224r1(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStd256r1(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStd384r1(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStd521r1(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStdSM2(IppsGFpECState* pEC);

IppStatus ippsGFpECBindGxyTblStdBN256(IppsGFpECState* pEC);

Include Files

ippcp.h

Parameters

pEC

Pointer to the context of the elliptic curve.

Description

The functions GFpECVerify*, GFpECPublicKey and GFpECSign* perform time-consuming math operations on the elliptic curve base point. In Intel IPP Cryptography-supported standards, the base point is fixed, and you may use pre-computed values.

The function GFpECBindGxyTblStd stores a pointer the to the pre-computed base point data in the elliptic curve context. For performance-critical applications, consider calling GFpECBindGxyTblStd at the completion of elliptic curve initialization. The use of GFpECBindGxyTblStd improves the performance of GFpECVerify*, GFpECPublicKey and GFpECSign*.

Note

The size of the pre-computed table is quite large (~100-150KB), so using GFpECBindGxyTblStd increases the size of your application.

Important

The set of GFpECBindGxyTblStd functions covers only curves defined by the following standards: NIST P-192r1, NIST P-224r1, NIST P-256r1, NIST P-384r1, NIST P521r1, SM2 and BN256. Other standard elliptic curves supported in Intel IPP Cryptography do not have a similar mechanism because they do not match modern security strength requirements.

Return Values

ippsStsNoErr

Indicates no error. Any other message indicates an error or warning.

ippsStsNullPtrErr

Indicates an error condition if pEC is NULL.

ippsStsContextMatchErr

Indicates an error condition if the IppsGFpECState context parameter does not match the operation.

ippStsBadArgErr

Indicates an error condition if the elliptic curve specified by the IppsGFpECState context is not the target standard elliptic curve.