129 word32 *outlen, ed25519_key* key);
183 word32 *outlen, ed25519_key* key,
184 const byte* context, byte contextLen);
241 word32 *outLen, ed25519_key* key,
242 const byte* context, byte contextLen);
297 word32 *outlen, ed25519_key* key,
298 const byte* context, byte contextLen);
347 word32 msgLen,
int* ret, ed25519_key* key);
401 word32 msgLen,
int* ret, ed25519_key* key,
402 const byte* context, byte contextLen);
460 word32 hashLen,
int* ret, ed25519_key* key,
461 const byte* context, byte contextLen);
516 word32 msgLen,
int* ret, ed25519_key* key,
517 const byte* context, byte contextLen);
723 const byte* pub, word32 pubSz, ed25519_key* key);
768 const byte* pub, word32 pubSz, ed25519_key* key,
int trusted);
942 byte* priv, word32 *privSz,
943 byte* pub, word32 *pubSz);
int wc_ed25519ph_sign_msg(const byte *in, word32 inlen, byte *out, word32 *outlen, ed25519_key *key, const byte *context, byte contextLen)
This function signs a message using an ed25519_key object to guarantee authenticity. The context is included as part of the data signed. The message is pre-hashed before signature calculation.
int wc_ed25519_check_key(ed25519_key *key)
This function checks the public key in ed25519_key structure matches the private key.
int wc_ed25519_import_public(const byte *in, word32 inLen, ed25519_key *key)
This function imports a public ed25519_key pair from a buffer containing the public key...
int wc_ed25519_verify_msg(const byte *sig, word32 siglen, const byte *msg, word32 msgLen, int *ret, ed25519_key *key)
This function verifies the Ed25519 signature of a message to ensure authenticity. It returns the answ...
int wc_ed25519_export_key(ed25519_key *key, byte *priv, word32 *privSz, byte *pub, word32 *pubSz)
This function exports the private and public key separately from an ed25519_key structure. It stores the private key in the buffer priv, and sets the bytes written to this buffer in privSz. It stores the public key in the buffer pub, and sets the bytes written to this buffer in pubSz.
int wc_ed25519_priv_size(ed25519_key *key)
This function returns the private key size (secret + public) in bytes.
int wc_ed25519_make_key(WC_RNG *rng, int keysize, ed25519_key *key)
This function generates a new Ed25519 key and stores it in key.
int wc_ed25519ctx_sign_msg(const byte *in, word32 inlen, byte *out, word32 *outlen, ed25519_key *key, const byte *context, byte contextLen)
This function signs a message using an ed25519_key object to guarantee authenticity. The context is part of the data signed.
int wc_ed25519_import_private_key(const byte *priv, word32 privSz, const byte *pub, word32 pubSz, ed25519_key *key)
This function imports a public/private Ed25519 key pair from a pair of buffers. This function will ha...
int wc_ed25519_import_private_key_ex(const byte *priv, word32 privSz, const byte *pub, word32 pubSz, ed25519_key *key, int trusted)
This function imports a public/private Ed25519 key pair from a pair of buffers. This function will ha...
int wc_ed25519_init(ed25519_key *key)
This function initializes an ed25519_key object for future use with message verification.
int wc_ed25519_make_public(ed25519_key *key, unsigned char *pubKey, word32 pubKeySz)
This function generates the Ed25519 public key from the private key. It stores the public key in the ...
int wc_ed25519_export_public(ed25519_key *key, byte *out, word32 *outLen)
This function exports the private key from an ed25519_key structure. It stores the public key in the ...
int wc_ed25519ph_verify_msg(const byte *sig, word32 siglen, const byte *msg, word32 msgLen, int *ret, ed25519_key *key, const byte *context, byte contextLen)
This function verifies the Ed25519 signature of a message to ensure authenticity. The context is incl...
int wc_ed25519_import_public_ex(const byte *in, word32 inLen, ed25519_key *key, int trusted)
This function imports a public ed25519_key pair from a buffer containing the public key...
int wc_ed25519ph_sign_hash(const byte *hash, word32 hashLen, byte *out, word32 *outLen, ed25519_key *key, const byte *context, byte contextLen)
This function signs a message digest using an ed25519_key object to guarantee authenticity. The context is included as part of the data signed. The message is pre-hashed before signature calculation. The hash algorithm used to create message digest must be SHAKE-256.
int wc_ed25519_import_private_only(const byte *priv, word32 privSz, ed25519_key *key)
This function imports an Ed25519 private key only from a buffer.
int wc_ed25519_sign_msg(const byte *in, word32 inlen, byte *out, word32 *outlen, ed25519_key *key)
This function signs a message using an ed25519_key object to guarantee authenticity.
int wc_ed25519_size(ed25519_key *key)
This function returns the size of an Ed25519 - 32 bytes.
int wc_ed25519_sig_size(ed25519_key *key)
This function returns the size of an Ed25519 signature (64 in bytes).
int wc_ed25519_pub_size(ed25519_key *key)
This function returns the compressed key size in bytes (public key).
int wc_ed25519_export_private(ed25519_key *key, byte *out, word32 *outLen)
This function exports the key pair from an ed25519_key structure. It stores the key pair in the buffe...
int wc_ed25519ctx_verify_msg(const byte *sig, word32 siglen, const byte *msg, word32 msgLen, int *ret, ed25519_key *key, const byte *context, byte contextLen)
This function verifies the Ed25519 signature of a message to ensure authenticity. The context is incl...
int wc_ed25519ph_verify_hash(const byte *sig, word32 siglen, const byte *hash, word32 hashLen, int *ret, ed25519_key *key, const byte *context, byte contextLen)
This function verifies the Ed25519 signature of the digest of a message to ensure authenticity...
void wc_ed25519_free(ed25519_key *key)
This function frees an Ed25519 object after it has been used.
int wc_ed25519_export_private_only(ed25519_key *key, byte *out, word32 *outLen)
This function exports only the private key from an ed25519_key structure. It stores the private key i...