
ISARA Radiate Security Solution Suite Toolkit Edition Version 1.5
Quantum-safe cryptographic primitives and algorithms.
iqr_mceliece.h
Go to the documentation of this file.
41 // ---------------------------------------------------------------------------------------------------------------------------------
43 // ---------------------------------------------------------------------------------------------------------------------------------
57 // ---------------------------------------------------------------------------------------------------------------------------------
59 // ---------------------------------------------------------------------------------------------------------------------------------
70 // ---------------------------------------------------------------------------------------------------------------------------------
72 // ---------------------------------------------------------------------------------------------------------------------------------
99 iqr_retval iqr_McElieceCreateParams(const iqr_Context *ctx, iqr_HashAlgorithmType hash_algo, iqr_McElieceParams **params);
118 // ---------------------------------------------------------------------------------------------------------------------------------
120 // ---------------------------------------------------------------------------------------------------------------------------------
143 iqr_retval iqr_McElieceCreateKeyPair(const iqr_McElieceParams *params, const iqr_RNG *rng, iqr_McEliecePublicKey **public_key,
167 iqr_retval iqr_McElieceImportPublicKey(const iqr_McElieceParams *params, const uint8_t *buf, size_t buf_size,
195 iqr_retval iqr_McElieceImportPrivateKey(const iqr_McElieceParams *params, const uint8_t *buf, size_t buf_size,
209 iqr_retval iqr_McElieceExportPublicKey(const iqr_McEliecePublicKey *public_key, uint8_t *buf, size_t buf_size);
227 iqr_retval iqr_McElieceExportPrivateKey(const iqr_McEliecePrivateKey *private_key, uint8_t *buf, size_t buf_size);
256 // ---------------------------------------------------------------------------------------------------------------------------------
258 // ---------------------------------------------------------------------------------------------------------------------------------
288 iqr_retval iqr_McElieceEncapsulate(const iqr_McEliecePublicKey *public_key, const iqr_RNG *rng, uint8_t *ciphertext,
318 iqr_retval iqr_McElieceDecapsulate(const iqr_McEliecePrivateKey *private_key, const uint8_t *ciphertext, size_t ciphertext_size,
IQR_API_UNENFORCED_RETURN iqr_retval iqr_McElieceDestroyPublicKey(iqr_McEliecePublicKey **public_key)
IQR_API iqr_retval iqr_McElieceCreateKeyPair(const iqr_McElieceParams *params, const iqr_RNG *rng, iqr_McEliecePublicKey **public_key, iqr_McEliecePrivateKey **private_key)
IQR_API iqr_retval iqr_McElieceEncapsulate(const iqr_McEliecePublicKey *public_key, const iqr_RNG *rng, uint8_t *ciphertext, size_t ciphertext_size, uint8_t *shared_key, size_t shared_key_size)
ISARA Radiate Security Solution Suite's Hash object API.
IQR_API iqr_retval iqr_McElieceImportPublicKey(const iqr_McElieceParams *params, const uint8_t *buf, size_t buf_size, iqr_McEliecePublicKey **public_key)
ISARA Radiate Security Solution Suite's Random Number Generator object APIs.
ISARA Radiate Security Solution Suite's return values.
struct iqr_McEliecePrivateKey_struct iqr_McEliecePrivateKey
Definition: iqr_mceliece.h:69
IQR_API iqr_retval iqr_McElieceDecapsulate(const iqr_McEliecePrivateKey *private_key, const uint8_t *ciphertext, size_t ciphertext_size, uint8_t *shared_key, size_t shared_key_size)
ISARA Radiate Security Solution Suite's API declarations.
IQR_API iqr_retval iqr_McElieceExportPublicKey(const iqr_McEliecePublicKey *public_key, uint8_t *buf, size_t buf_size)
IQR_API iqr_retval iqr_McElieceExportPrivateKey(const iqr_McEliecePrivateKey *private_key, uint8_t *buf, size_t buf_size)
IQR_API_UNENFORCED_RETURN iqr_retval iqr_McElieceDestroyPrivateKey(iqr_McEliecePrivateKey **private_key)
IQR_API iqr_retval iqr_McElieceCreateParams(const iqr_Context *ctx, iqr_HashAlgorithmType hash_algo, iqr_McElieceParams **params)
IQR_API_UNENFORCED_RETURN iqr_retval iqr_McElieceDestroyParams(iqr_McElieceParams **params)
IQR_API iqr_retval iqr_McElieceImportPrivateKey(const iqr_McElieceParams *params, const uint8_t *buf, size_t buf_size, iqr_McEliecePrivateKey **private_key)
struct iqr_McEliecePublicKey_struct iqr_McEliecePublicKey
Definition: iqr_mceliece.h:66