52#ifndef QSC_ECDH25519BASE_H
53#define QSC_ECDH25519BASE_H
57QSC_CPLUSPLUS_ENABLED_START
92int32_t qsc_crypto_scalarmult_curve25519(uint8_t* q,
const uint8_t* n,
const uint8_t* p);
118int32_t qsc_crypto_scalarmult_curve25519_ref10(uint8_t* q,
const uint8_t* n,
const uint8_t* p);
137int32_t qsc_crypto_scalarmult_curve25519_ref10_base(uint8_t* q,
const uint8_t* n);
148void qsc_x25519_generate_keypair(uint8_t* publickey, uint8_t* privatekey,
bool (*rng_generate)(uint8_t*,
size_t));
159void qsc_x25519_generate_seeded_keypair(uint8_t* publickey, uint8_t* privatekey,
const uint8_t* seed);
172bool qsc_x25519_key_exchange(uint8_t* secret,
const uint8_t* publickey,
const uint8_t* privatekey);
174QSC_CPLUSPLUS_ENABLED_END
Contains common definitions for the Quantum Secure Cryptographic (QSC) library.