My Project
Loading...
Searching...
No Matches
Operations using SAKKE Key

Functions

int wc_GetSakkeAuthSize (SakkeKey *key, word16 *authSz)
 
int wc_MakeSakkePointI (SakkeKey *key, const byte *id, word16 idSz)
 
int wc_GetSakkePointI (SakkeKey *key, byte *data, word32 *sz)
 
int wc_SetSakkePointI (SakkeKey *key, const byte *id, word16 idSz, const byte *data, word32 sz)
 
int wc_GenerateSakkePointITable (SakkeKey *key, byte *table, word32 *len)
 
int wc_SetSakkePointITable (SakkeKey *key, byte *table, word32 len)
 
int wc_ClearSakkePointITable (SakkeKey *key)
 
int wc_MakeSakkeEncapsulatedSSV (SakkeKey *key, enum wc_HashType hashType, byte *ssv, word16 ssvSz, byte *auth, word16 *authSz)
 
int wc_GenerateSakkeSSV (SakkeKey *key, WC_RNG *rng, byte *ssv, word16 *ssvSz)
 
int wc_DeriveSakkeSSV (SakkeKey *key, enum wc_HashType hashType, byte *ssv, word16 ssvSz, const byte *auth, word16 authSz)
 

Detailed Description

These operations transfer a Shared Secret Value (SSV) from one client to another. The SSV may be randomly generated.

Calculate the size of the authentication data (wc_GetSakkeAuthSize()) to determine where the SSV starts in a buffer.
Make the intermediate point I (wc_MakeSakkePointI()) to speed making an encapsulated and deriving SSV.
Get intermediate point I (wc_GetSakkePointI()) for storage.
Set intermediate point I (wc_SetSakkePointI()) from storage.
Generate a pre-computation table for intermediate point I (wc_GenerateSakkePointITable()) to further enhance performance. Store as necessary.
Set the pre-computation table for intermediate point I (wc_SetSakkePointITable()) to further enhance performance.
Clear the pre-computation table for intermediate point I (wc_ClearSakkePointITable()) to remove reference to external table pointer.
Make an encapsulated SSV (wc_MakeSakkeEncapsulatedSSV()) to share with another client. Data in SSV is modified.
Generate a random SSV (wc_GenerateSakkeSSV()) for key exchange.
Derive the SSV, (wc_DeriveSakkeSSV()) on the recipient from the encapsulated SSV.

Function Documentation

◆ wc_ClearSakkePointITable()

int wc_ClearSakkePointITable ( SakkeKey * key)

◆ wc_DeriveSakkeSSV()

int wc_DeriveSakkeSSV ( SakkeKey * key,
enum wc_HashType hashType,
byte * ssv,
word16 ssvSz,
const byte * auth,
word16 authSz )

◆ wc_GenerateSakkePointITable()

int wc_GenerateSakkePointITable ( SakkeKey * key,
byte * table,
word32 * len )

◆ wc_GenerateSakkeSSV()

int wc_GenerateSakkeSSV ( SakkeKey * key,
WC_RNG * rng,
byte * ssv,
word16 * ssvSz )

◆ wc_GetSakkeAuthSize()

int wc_GetSakkeAuthSize ( SakkeKey * key,
word16 * authSz )

◆ wc_GetSakkePointI()

int wc_GetSakkePointI ( SakkeKey * key,
byte * data,
word32 * sz )

◆ wc_MakeSakkeEncapsulatedSSV()

int wc_MakeSakkeEncapsulatedSSV ( SakkeKey * key,
enum wc_HashType hashType,
byte * ssv,
word16 ssvSz,
byte * auth,
word16 * authSz )

◆ wc_MakeSakkePointI()

int wc_MakeSakkePointI ( SakkeKey * key,
const byte * id,
word16 idSz )

◆ wc_SetSakkePointI()

int wc_SetSakkePointI ( SakkeKey * key,
const byte * id,
word16 idSz,
const byte * data,
word32 sz )

◆ wc_SetSakkePointITable()

int wc_SetSakkePointITable ( SakkeKey * key,
byte * table,
word32 len )