My Project
Functions
Operations on/with SAKKE RSK

These operations make, validate, encode and decode a Receiver Secret Key (RSK). More...

Functions

int wc_MakeSakkeRsk (SakkeKey *key, const byte *id, word16 idSz, ecc_point *rsk)
 
int wc_ValidateSakkeRsk (SakkeKey *key, const byte *id, word16 idSz, ecc_point *rsk, int *valid)
 
int wc_GenerateSakkeRskTable (const SakkeKey *key, const ecc_point *rsk, byte *table, word32 *len)
 
int wc_EncodeSakkeRsk (const SakkeKey *key, ecc_point *rsk, byte *out, word32 *sz, int raw)
 
int wc_DecodeSakkeRsk (const SakkeKey *key, const byte *data, word32 sz, ecc_point *rsk)
 
int wc_ImportSakkeRsk (SakkeKey *key, const byte *data, word32 sz)
 
int wc_SetSakkeRsk (SakkeKey *key, const ecc_point *rsk, byte *table, word32 len)
 

Detailed Description

These operations make, validate, encode and decode a Receiver Secret Key (RSK).

An RSK is required to derive an SSV (see wc_DeriveSakkeSSV()).
On the KMS, make an RSK (wc_MakeSakkeRsk()) from the client's ID.
On the client, validate the RSK (wc_ValidateSakkeRsk()) with the ID.
Encode the RSK (wc_EncodeSakkeRsk()) to pass to client or for storage.
Decode the RSK (wc_DecodeSakkeRsk()) on the client when needed.
Import the RSK (wc_ImportSakkeRsk()) on the client when needed.
Set the RSK and, optionally, a pre-computation table (wc_SetSakkeRsk()) on the client when needed.

Function Documentation

◆ wc_DecodeSakkeRsk()

int wc_DecodeSakkeRsk ( const SakkeKey *  key,
const byte *  data,
word32  sz,
ecc_point *  rsk 
)

◆ wc_EncodeSakkeRsk()

int wc_EncodeSakkeRsk ( const SakkeKey *  key,
ecc_point *  rsk,
byte *  out,
word32 *  sz,
int  raw 
)

◆ wc_GenerateSakkeRskTable()

int wc_GenerateSakkeRskTable ( const SakkeKey *  key,
const ecc_point *  rsk,
byte *  table,
word32 *  len 
)

◆ wc_ImportSakkeRsk()

int wc_ImportSakkeRsk ( SakkeKey *  key,
const byte *  data,
word32  sz 
)

◆ wc_MakeSakkeRsk()

int wc_MakeSakkeRsk ( SakkeKey *  key,
const byte *  id,
word16  idSz,
ecc_point *  rsk 
)

◆ wc_SetSakkeRsk()

int wc_SetSakkeRsk ( SakkeKey *  key,
const ecc_point *  rsk,
byte *  table,
word32  len 
)

◆ wc_ValidateSakkeRsk()

int wc_ValidateSakkeRsk ( SakkeKey *  key,
const byte *  id,
word16  idSz,
ecc_point *  rsk,
int *  valid 
)