EPID 1.1 specific pairing

EPID 1.1 pairing operations. More...

Typedefs

typedef struct Epid11PairingState Epid11PairingState
 A pairing.
 

Functions

EpidStatus NewEpid11PairingState (EcGroup const *ga, EcGroup const *gb, FiniteField const *ff, Epid11PairingState **ps)
 Constructs a new Tate pairing state. More...
 
void DeleteEpid11PairingState (Epid11PairingState **ps)
 Frees a previously allocated by Epid11PairingState. More...
 
EpidStatus Epid11Pairing (Epid11PairingState *ps, EcPoint const *a, EcPoint const *b, FfElement *d)
 Computes a Tate Pairing for two parameters. More...
 

Detailed Description

EPID 1.1 pairing operations.

Provides APIs for defining and using a pairing relationship between two Elliptic curve groups.

These pairing operations are intended to support Intel(R) EPID 1.1 verification.

See also
EPID 1.1 support

Function Documentation

void DeleteEpid11PairingState ( Epid11PairingState **  ps)

Frees a previously allocated by Epid11PairingState.

Frees memory pointed to by pairing state. Nulls the pointer.

This pairing operation is intended to support Intel(R) EPID 1.1 verification.

Parameters
[in]psThe pairing state. Can be NULL.
See also
NewEpid11PairingState
EPID 1.1 support
EpidStatus Epid11Pairing ( Epid11PairingState ps,
EcPoint const *  a,
EcPoint const *  b,
FfElement d 
)

Computes a Tate Pairing for two parameters.

This pairing operation is intended to support Intel(R) EPID 1.1 verification. It frees memory pointed to by an Intel(R) EPID 1.1 pairing state.

Parameters
[in]psThe pairing state.
[in]aThe first value to pair. Must be in ga.
[in]bThe second value to pair. Must be in gb.
[out]dThe result of the pairing. Must be in ff.
Returns
EpidStatus
See also
EPID 1.1 support
EpidStatus NewEpid11PairingState ( EcGroup const *  ga,
EcGroup const *  gb,
FiniteField const *  ff,
Epid11PairingState **  ps 
)

Constructs a new Tate pairing state.

Allocates memory and creates a new pairing state for Tate pairing.

Use DeleteEpid11PairingState() to free memory.

This pairing operation is intended to support Intel(R) EPID 1.1 verification.

Parameters
[in]gaThe EcGroup from which the first parameter of the pairing will be taken.
[in]gbThe EcGroup from which the second parameter of the pairing will be taken.
[in]ffThe result finite field. Must be a Fq12 field.
[out]psNewly constructed pairing state.
Returns
EpidStatus
See also
DeleteEpid11PairingState
EPID 1.1 support