
ISARA Radiate Security Solution Suite Toolkit Edition Version 1.5
Quantum-safe cryptographic primitives and algorithms.
iqr_kyber.h
Go to the documentation of this file.
33 // ---------------------------------------------------------------------------------------------------------------------------------
35 // ---------------------------------------------------------------------------------------------------------------------------------
40 // ---------------------------------------------------------------------------------------------------------------------------------
42 // ---------------------------------------------------------------------------------------------------------------------------------
56 // ---------------------------------------------------------------------------------------------------------------------------------
58 // ---------------------------------------------------------------------------------------------------------------------------------
68 // ---------------------------------------------------------------------------------------------------------------------------------
70 // ---------------------------------------------------------------------------------------------------------------------------------
88 iqr_retval iqr_KyberCreateParams(const iqr_Context *ctx, const iqr_KyberVariant *variant, iqr_KyberParams **params);
107 // ---------------------------------------------------------------------------------------------------------------------------------
109 // ---------------------------------------------------------------------------------------------------------------------------------
128 iqr_retval iqr_KyberCreateKeyPair(const iqr_KyberParams *params, const iqr_RNG *rng, iqr_KyberPublicKey **public_key,
147 iqr_retval iqr_KyberImportPublicKey(const iqr_KyberParams *params, const uint8_t *buf, size_t buf_size,
171 iqr_retval iqr_KyberImportPrivateKey(const iqr_KyberParams *params, const uint8_t *buf, size_t buf_size,
186 iqr_retval iqr_KyberExportPublicKey(const iqr_KyberPublicKey *public_key, uint8_t *buf, size_t buf_size);
202 iqr_retval iqr_KyberExportPrivateKey(const iqr_KyberPrivateKey *private_key, uint8_t *buf, size_t buf_size);
231 // ---------------------------------------------------------------------------------------------------------------------------------
233 // ---------------------------------------------------------------------------------------------------------------------------------
268 // ---------------------------------------------------------------------------------------------------------------------------------
270 // ---------------------------------------------------------------------------------------------------------------------------------
300 iqr_retval iqr_KyberEncapsulate(const iqr_KyberPublicKey *public_key, const iqr_RNG *rng, uint8_t *ciphertext,
327 iqr_retval iqr_KyberDecapsulate(const iqr_KyberPrivateKey *private_key, const uint8_t *ciphertext, size_t ciphertext_size,
IQR_API_UNENFORCED_RETURN iqr_retval iqr_KyberDestroyPublicKey(iqr_KyberPublicKey **public_key)
IQR_API iqr_retval iqr_KyberEncapsulate(const iqr_KyberPublicKey *public_key, const iqr_RNG *rng, uint8_t *ciphertext, size_t ciphertext_size, uint8_t *shared_key, size_t shared_key_size)
IQR_API iqr_retval iqr_KyberGetPublicKeySize(const iqr_KyberParams *params, size_t *public_key_size)
IQR_API iqr_retval iqr_KyberDecapsulate(const iqr_KyberPrivateKey *private_key, const uint8_t *ciphertext, size_t ciphertext_size, uint8_t *shared_key, size_t shared_key_size)
IQR_API iqr_retval iqr_KyberExportPublicKey(const iqr_KyberPublicKey *public_key, uint8_t *buf, size_t buf_size)
IQR_API iqr_retval iqr_KyberExportPrivateKey(const iqr_KyberPrivateKey *private_key, uint8_t *buf, size_t buf_size)
IQR_API iqr_retval iqr_KyberCreateParams(const iqr_Context *ctx, const iqr_KyberVariant *variant, iqr_KyberParams **params)
IQR_API iqr_retval iqr_KyberCreateKeyPair(const iqr_KyberParams *params, const iqr_RNG *rng, iqr_KyberPublicKey **public_key, iqr_KyberPrivateKey **private_key)
ISARA Radiate Security Solution Suite's Random Number Generator object APIs.
ISARA Radiate Security Solution Suite's return values.
IQR_API_UNENFORCED_RETURN iqr_retval iqr_KyberDestroyPrivateKey(iqr_KyberPrivateKey **private_key)
IQR_API iqr_retval iqr_KyberImportPrivateKey(const iqr_KyberParams *params, const uint8_t *buf, size_t buf_size, iqr_KyberPrivateKey **private_key)
IQR_API iqr_retval iqr_KyberImportPublicKey(const iqr_KyberParams *params, const uint8_t *buf, size_t buf_size, iqr_KyberPublicKey **public_key)
ISARA Radiate Security Solution Suite's API declarations.
IQR_API iqr_retval iqr_KyberGetPrivateKeySize(const iqr_KyberParams *params, size_t *private_key_size)
IQR_API_UNENFORCED_RETURN iqr_retval iqr_KyberDestroyParams(iqr_KyberParams **params)
IQR_API iqr_retval iqr_KyberGetCiphertextSize(const iqr_KyberParams *params, size_t *ciphertext_size)