My Project
Functions
curve448.h File Reference

Go to the source code of this file.

Functions

int wc_curve448_make_key (WC_RNG *rng, int keysize, curve448_key *key)
 This function generates a Curve448 key using the given random number generator, rng, of the size given (keysize), and stores it in the given curve448_key structure. It should be called after the key structure has been initialized through wc_curve448_init(). More...
 
int wc_curve448_shared_secret (curve448_key *private_key, curve448_key *public_key, byte *out, word32 *outlen)
 This function computes a shared secret key given a secret private key and a received public key. It stores the generated secret key in the buffer out and assigns the variable of the secret key to outlen. Only supports big endian. More...
 
int wc_curve448_shared_secret_ex (curve448_key *private_key, curve448_key *public_key, byte *out, word32 *outlen, int endian)
 This function computes a shared secret key given a secret private key and a received public key. It stores the generated secret key in the buffer out and assigns the variable of the secret key to outlen. Supports both big and little endian. More...
 
int wc_curve448_init (curve448_key *key)
 This function initializes a Curve448 key. It should be called before generating a key for the structure. More...
 
void wc_curve448_free (curve448_key *key)
 This function frees a Curve448 object. More...
 
int wc_curve448_import_private (const byte *priv, word32 privSz, curve448_key *key)
 This function imports a curve448 private key only. (Big endian). More...
 
int wc_curve448_import_private_ex (const byte *priv, word32 privSz, curve448_key *key, int endian)
 curve448 private key import only. (Big or Little endian). More...
 
int wc_curve448_import_private_raw (const byte *priv, word32 privSz, const byte *pub, word32 pubSz, curve448_key *key)
 This function imports a public-private key pair into a curve448_key structure. Big endian only. More...
 
int wc_curve448_import_private_raw_ex (const byte *priv, word32 privSz, const byte *pub, word32 pubSz, curve448_key *key, int endian)
 This function imports a public-private key pair into a curve448_key structure. Supports both big and little endian. More...
 
int wc_curve448_export_private_raw (curve448_key *key, byte *out, word32 *outLen)
 This function exports a private key from a curve448_key structure and stores it in the given out buffer. It also sets outLen to be the size of the exported key. Big Endian only. More...
 
int wc_curve448_export_private_raw_ex (curve448_key *key, byte *out, word32 *outLen, int endian)
 This function exports a private key from a curve448_key structure and stores it in the given out buffer. It also sets outLen to be the size of the exported key. Can specify whether it's big or little endian. More...
 
int wc_curve448_import_public (const byte *in, word32 inLen, curve448_key *key)
 This function imports a public key from the given in buffer and stores it in the curve448_key structure. More...
 
int wc_curve448_import_public_ex (const byte *in, word32 inLen, curve448_key *key, int endian)
 This function imports a public key from the given in buffer and stores it in the curve448_key structure. More...
 
int wc_curve448_check_public (const byte *pub, word32 pubSz, int endian)
 This function checks that a public key buffer holds a valid Curve448 key value given the endian ordering. More...
 
int wc_curve448_export_public (curve448_key *key, byte *out, word32 *outLen)
 This function exports a public key from the given key structure and stores the result in the out buffer. Big endian only. More...
 
int wc_curve448_export_public_ex (curve448_key *key, byte *out, word32 *outLen, int endian)
 This function exports a public key from the given key structure and stores the result in the out buffer. Supports both big and little endian. More...
 
int wc_curve448_export_key_raw (curve448_key *key, byte *priv, word32 *privSz, byte *pub, word32 *pubSz)
 This function exports a key pair from the given key structure and stores the result in the out buffer. Big endian only. More...
 
int wc_curve448_export_key_raw_ex (curve448_key *key, byte *priv, word32 *privSz, byte *pub, word32 *pubSz, int endian)
 Export curve448 key pair. Big or little endian. More...
 
int wc_curve448_size (curve448_key *key)
 This function returns the key size of the given key structure. More...