23 #ifndef CRYPTO_POLY1305_h
24 #define CRYPTO_POLY1305_h
26 #include "BigNumberUtil.h"
35 void reset(
const void *key);
36 void update(
const void *data,
size_t len);
37 void finalize(
const void *nonce,
void *token,
size_t len);
45 limb_t h[(16 /
sizeof(limb_t)) + 1];
46 limb_t c[(16 /
sizeof(limb_t)) + 1];
47 limb_t r[(16 /
sizeof(limb_t))];
Poly1305 message authenticator.
void reset(const void *key)
Resets the Poly1305 message authenticator for a new session.
Poly1305()
Constructs a new Poly1305 message authenticator.
void finalize(const void *nonce, void *token, size_t len)
Finalizes the authentication process and returns the token.
void pad()
Pads the input stream with zero bytes to a multiple of 16.
~Poly1305()
Destroys this Poly1305 message authenticator after clearing all sensitive information.
void clear()
Clears the authenticator's state, removing all sensitive data.
void update(const void *data, size_t len)
Updates the message authenticator with more data.