46QSC_CPLUSPLUS_ENABLED_START
93#define QSC_ECDH_PRIVATEKEY_SIZE 32ULL
99#define QSC_ECDH_PUBLICKEY_SIZE 32ULL
105#define QSC_ECDH_SHAREDSECRET_SIZE 32ULL
111#define QSC_ECDH_SEED_SIZE 32ULL
117#define QSC_ECDH_ALGNAME "ECDH"
153QSC_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 common.h:520
QSC_EXPORT_API void qsc_ecdh_generate_seeded_keypair(uint8_t *publickey, uint8_t *privatekey, const uint8_t *seed)
Generates public and private keys for the ECDH key encapsulation mechanism using a seed.
Definition ecdh.c:29
QSC_EXPORT_API void qsc_ecdh_generate_keypair(uint8_t *publickey, uint8_t *privatekey, bool(*rng_generate)(uint8_t *, size_t))
Generates public and private keys for the ECDH key encapsulation mechanism.
Definition ecdh.c:17
QSC_EXPORT_API bool qsc_ecdh_key_exchange(uint8_t *secret, const uint8_t *privatekey, const uint8_t *publickey)
Decapsulates the shared secret for a given cipher-text using a private-key.
Definition ecdh.c:4