23 #ifndef LWCRYPTO_ELEPHANT_PRNG_H
24 #define LWCRYPTO_ELEPHANT_PRNG_H
49 unsigned char state[25];
int elephant_prng_init(elephant_prng_state_t *state)
Initializes an Elephant-based PRNG.
Definition: elephant-prng.c:132
void elephant_prng_feed(elephant_prng_state_t *state, const unsigned char *data, size_t size)
Feeds data into an Elephant-based PRNG state to seed it from other sources besides the system TRNG...
Definition: elephant-prng.c:162
State information for an Elephant-based PRNG.
Definition: elephant-prng.h:46
unsigned long long align
Definition: elephant-prng.h:53
void elephant_prng_add_ident(const unsigned char *data, size_t size)
Adds unique identification information for this device to the global pool.
Definition: elephant-prng.c:109
size_t limit
Definition: elephant-prng.h:51
void elephant_prng_free(elephant_prng_state_t *state)
Frees an Elephant-based PRNG and destroys all sensitive information.
Definition: elephant-prng.c:145
int elephant_prng_reseed(elephant_prng_state_t *state)
Forces an Elephant-based PRNG to re-seed from the system TRNG.
Definition: elephant-prng.c:150
int elephant_prng_fetch(elephant_prng_state_t *state, unsigned char *data, size_t size)
Fetches data from an Elephant-based PRNG state.
Definition: elephant-prng.c:202
int elephant_prng_generate(unsigned char *data, size_t size)
Fetches random data using an Elephant-based PRNG.
Definition: elephant-prng.c:209
size_t count
Definition: elephant-prng.h:50