52#ifndef QSC_ECDHP521BASE_H
53#define QSC_ECDHP521BASE_H
59QSC_CPLUSPLUS_ENABLED_START
81#define QSC_ECDHP521_PUBLICKEY_SIZE 132U
86#define QSC_ECDHP521_PRIVATEKEY_SIZE 66U
91#define QSC_ECDHP521_SHAREDSECRET_SIZE 66U
96#define QSC_ECDHP521_SEED_SIZE 66U
108QSC_EXPORT_API void qsc_p521_public_from_private(uint8_t* publickey,
const uint8_t* privatekey);
121QSC_EXPORT_API void qsc_p521_generate_keypair(uint8_t* publickey, uint8_t* privatekey,
bool (*rng_generate)(uint8_t*,
size_t));
134QSC_EXPORT_API void qsc_p521_generate_seeded_keypair(uint8_t* publickey, uint8_t* privatekey,
const uint8_t* seed);
150QSC_EXPORT_API bool qsc_p521_key_exchange(uint8_t* secret,
const uint8_t* publickey,
const uint8_t* privatekey);
152QSC_CPLUSPLUS_ENABLED_END
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.
#define QSC_EXPORT_API
API export macro for Microsoft compilers when importing from a DLL.
Definition qsccommon.h:645