23 #ifndef LWCRYPTO_ASCON_PRNG_H
24 #define LWCRYPTO_ASCON_PRNG_H
49 unsigned char state[40];
void ascon_prng_feed(ascon_prng_state_t *state, const unsigned char *data, size_t size)
Feeds data into an ASCON-based PRNG state to seed it from other sources besides the system TRNG...
Definition: ascon-prng.c:189
int ascon_prng_fetch(ascon_prng_state_t *state, unsigned char *data, size_t size)
Fetches data from an ASCON-based PRNG state.
Definition: ascon-prng.c:244
void ascon_prng_free(ascon_prng_state_t *state)
Frees an ASCON-based PRNG and destroys all sensitive information.
Definition: ascon-prng.c:161
size_t limit
Definition: ascon-prng.h:51
size_t count
Definition: ascon-prng.h:50
void ascon_prng_add_ident(const unsigned char *data, size_t size)
Adds unique identification information for this device to the global pool.
Definition: ascon-prng.c:131
State information for an ASCON-based PRNG.
Definition: ascon-prng.h:46
int ascon_prng_reseed(ascon_prng_state_t *state)
Forces an ASCON-based PRNG to re-seed from the system TRNG.
Definition: ascon-prng.c:166
unsigned long long align
Definition: ascon-prng.h:53
int ascon_prng_init(ascon_prng_state_t *state)
Initializes an ASCON-based PRNG.
Definition: ascon-prng.c:141
int ascon_prng_generate(unsigned char *data, size_t size)
Fetches random data using an ASCON-based PRNG.
Definition: ascon-prng.c:251