65 #define ASCON_PRF_KEY_SIZE 16
70 #define ASCON_PRF_TAG_SIZE 16
75 #define ASCON_PRF_SHORT_KEY_SIZE ASCON_PRF_KEY_SIZE
80 #define ASCON_PRF_SHORT_MAX_INPUT_SIZE 16
85 #define ASCON_PRF_SHORT_MAX_OUTPUT_SIZE 16
90 #define ASCON_PRF_SHORT_TAG_SIZE ASCON_PRF_SHORT_MAX_OUTPUT_SIZE
95 #define ASCON_MAC_KEY_SIZE ASCON_PRF_KEY_SIZE
100 #define ASCON_MAC_TAG_SIZE ASCON_PRF_TAG_SIZE
132 (
unsigned char *out,
size_t outlen,
133 const unsigned char *in,
size_t inlen,
134 const unsigned char *key);
154 (
unsigned char *out,
size_t outlen,
155 const unsigned char *in,
size_t inlen,
156 const unsigned char *key);
176 (
unsigned char *out,
size_t outlen,
177 const unsigned char *in,
size_t inlen,
178 const unsigned char *key);
195 const unsigned char *in,
size_t inlen,
196 const unsigned char *key);
211 (
const unsigned char *tag,
212 const unsigned char *in,
size_t inlen,
213 const unsigned char *key);
Direct access to the ASCON permutation primitive.
void ascon_prf_free(ascon_prf_state_t *state)
Frees the ASCON-Prf state and destroys any sensitive material.
void ascon_prf(unsigned char *out, size_t outlen, const unsigned char *in, size_t inlen, const unsigned char *key)
Processes a key and input data with ASCON-Prf to produce a tag.
void ascon_prf_fixed(unsigned char *out, size_t outlen, const unsigned char *in, size_t inlen, const unsigned char *key)
Processes a key and input data with ASCON-Prf to produce a fixed-length output tag.
void ascon_prf_fixed_init(ascon_prf_state_t *state, const unsigned char *key, size_t outlen)
Initializes the state for an incremental ASCON-Prf operation with fixed-length output.
void ascon_mac(unsigned char *tag, const unsigned char *in, size_t inlen, const unsigned char *key)
Processes a key and input data with ASCON-Mac to produce a tag.
int ascon_prf_short(unsigned char *out, size_t outlen, const unsigned char *in, size_t inlen, const unsigned char *key)
Processes a key and input data with ASCON-PrfShort to produce a tag.
void ascon_prf_init(ascon_prf_state_t *state, const unsigned char *key)
Initializes the state for an incremental ASCON-Prf operation.
void ascon_prf_squeeze(ascon_prf_state_t *state, unsigned char *out, size_t outlen)
Squeezes output from an incremental ASCON-Prf operation.
void ascon_prf_reinit(ascon_prf_state_t *state, const unsigned char *key)
Re-initializes the state for an incremental ASCON-Prf operation.
int ascon_mac_verify(const unsigned char *tag, const unsigned char *in, size_t inlen, const unsigned char *key)
Verifies an ASCON-Mac tag value.
void ascon_prf_fixed_reinit(ascon_prf_state_t *state, const unsigned char *key, size_t outlen)
Re-initializes the state for an incremental ASCON-Prf operation with fixed-length output.
void ascon_prf_absorb(ascon_prf_state_t *state, const unsigned char *in, size_t inlen)
Absorbs input data into an incremental ASCON-Prf state.
ascon_state_t state
[snippet_key]
State information for the ASCON-Prf incremental mode.
Structure of the internal state of the ASCON permutation.