Developer Reference for Intel® Integrated Performance Primitives Cryptography 2019

GFpMethod

Returns a reference to an implementation of arithmetic operations over GF(q).

Syntax

const IppsGFpMethod* ippsGFpMethod_p192r1(void);

const IppsGFpMethod* ippsGFpMethod_p224r1(void);

const IppsGFpMethod* ippsGFpMethod_p256r1(void);

const IppsGFpMethod* ippsGFpMethod_p384r1(void);

const IppsGFpMethod* ippsGFpMethod_p521r1(void);

const IppsGFpMethod* ippsGFpMethod_p256sm2(void);

const IppsGFpMethod* ippsGFpMethod_p256bn(void);

const IppsGFpMethod* ippsGFpMethod_pArb(void);

Include Files

ippcp.h

Description

Each of these functions returns a pointer to a structure containing an implementation of arithmetic operations over GF(q).

ippsGFpMethod_pArb() assumes an arbitrary modulus q; each of the rest of the functions returns a pointer to the implementation of arithmetic operations over GF(q) tailored for a particular q. See the table below for the correspondence between method functions and values of the modulus q.

Function Value of modulus q
ippsGFpMethod_p192r1() q = 2192 - 264 - 1
ippsGFpMethod_p224r1() q = 2224 - 296 - 1
ippsGFpMethod_p256r1() q = 2256 - 2224 + 2192 + 296 - 1
ippsGFpMethod_p384r1() q = 2384 - 2128 - 296 + 232 - 1
ippsGFpMethod_p521r1() q = 2521 - 1
ippsGFpMethod_p256sm2() q = 2256 - 2224 - 296 + 264 - 1
ippsGFpMethod_p256bn() q = 0xFFFFFFFFFFFCF0CD46E5F25EEE71A49F0CDC65FB12980A82D3292DDBAED33013
ippsGFpMethod_pArb() Arbitrary modulus q