52#ifndef QSC_DILITHIUMBASE_H
53#define QSC_DILITHIUMBASE_H
59QSC_CPLUSPLUS_ENABLED_START
70bool qsc_dilithium_ref_generate_keypair(uint8_t* pk, uint8_t* sk,
bool (*rng_generate)(uint8_t*,
size_t));
80void qsc_dilithium_ref_seeded_generate_keypair(uint8_t* pk, uint8_t* sk,
const uint8_t* seed);
95bool qsc_dilithium_ref_sign(uint8_t* signedmsg,
size_t* smglen,
const uint8_t* message,
size_t msglen,
const uint8_t* context,
96 size_t ctxlen,
const uint8_t* sk,
bool (*rng_generate)(uint8_t*,
size_t));
111bool qsc_dilithium_ref_sign_signature(uint8_t* signedmsg,
size_t* smglen,
const uint8_t* message,
size_t msglen,
const uint8_t* context,
112 size_t ctxlen,
const uint8_t* sk,
bool (*rng_generate)(uint8_t*,
size_t));
126bool qsc_dilithium_ref_verify(
const uint8_t* signedmsg,
size_t smglen,
const uint8_t* message,
size_t msglen,
const uint8_t* context,
size_t ctxlen,
const uint8_t* pk);
140bool qsc_dilithium_ref_open(uint8_t* message,
size_t* msglen,
const uint8_t* context,
size_t ctxlen,
const uint8_t* signedmsg,
size_t smglen,
const uint8_t* pk);
142QSC_CPLUSPLUS_ENABLED_END
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.