post quantum cryptography
Highly optimized implementation of the NTRUEncrypt algorithm
|
public API, key handling More...
Go to the source code of this file.
Data Structures | |
struct | keypair |
Typedefs | |
typedef struct keypair | keypair |
Functions | |
bool | ntru_create_keypair (fmpz_poly_t f, fmpz_poly_t g, keypair *pair, ntru_params *params) |
void | export_public_key (char const *const filename, fmpz_poly_t pub, ntru_params *params) |
void | export_priv_key (char const *const filename, fmpz_poly_t priv, ntru_params *params) |
void | import_public_key (char const *const filename, fmpz_poly_t pub, ntru_params *params) |
void | import_priv_key (char const *const filename, fmpz_poly_t priv, fmpz_poly_t priv_inv, ntru_params *params) |
void | ntru_delete_keypair (keypair *pair) |
public API, key handling
This file holds the public API of generating, exporting and importing public and private keys of the pqc NTRU implementation and is meant to be installed on the client system.
Definition in file keypair.h.
void export_priv_key | ( | char const *const | filename, |
fmpz_poly_t | priv, | ||
ntru_params * | params | ||
) |
Export the private key to a file.
filename | the file to save the private key into |
priv | the private key |
params | the NTRU context |
void export_public_key | ( | char const *const | filename, |
fmpz_poly_t | pub, | ||
ntru_params * | params | ||
) |
Export the public key to a file.
filename | the file to save the public key into |
pub | the public key |
params | the NTRU context |
void import_priv_key | ( | char const *const | filename, |
fmpz_poly_t | priv, | ||
fmpz_poly_t | priv_inv, | ||
ntru_params * | params | ||
) |
Import the private key from a file and store him along with his inverse.
filename | the file to get the private key from |
priv | where to save the private key [out] |
priv_inv | where to save the inverse of the private key [out] |
params | the NTRU context |
void import_public_key | ( | char const *const | filename, |
fmpz_poly_t | pub, | ||
ntru_params * | params | ||
) |
Import the public key from a file.
filename | the file to get the public key from |
pub | where to save the public key [out] |
params | the NTRU context |
bool ntru_create_keypair | ( | fmpz_poly_t | f, |
fmpz_poly_t | g, | ||
keypair * | pair, | ||
ntru_params * | params | ||
) |
Creates an NTRU key pair, consisting of public and private components.
f | a random polynomial |
g | a random polynomial |
pair | store private and public components here [out] |
params | the NTRU context |
void ntru_delete_keypair | ( | keypair * | pair | ) |
Used to free the inner structure of a keypair. This will not call free() on the pair itself.
pair | the pair to free the inner structure of |