68 #ifndef __TC_HMAC_PRNG_H__ 69 #define __TC_HMAC_PRNG_H__ 78 #define TC_HMAC_PRNG_RESEED_REQ -1 116 const uint8_t *personalization,
140 unsigned int seedlen,
const uint8_t *additional_input,
141 unsigned int additionallen);
uint8_t v[TC_SHA256_DIGEST_SIZE]
Definition: tc_hmac_prng.h:86
int tc_hmac_prng_init(TCHmacPrng_t prng, const uint8_t *personalization, unsigned int plen)
HMAC-PRNG initialization procedure Initializes prng with personalization, disables tc_hmac_prng_gener...
Definition: tc_hmac_prng.c:112
#define TC_SHA256_DIGEST_SIZE
Definition: tc_sha256.h:68
unsigned int countdown
Definition: tc_hmac_prng.h:88
int tc_hmac_prng_reseed(TCHmacPrng_t prng, const uint8_t *seed, unsigned int seedlen, const uint8_t *additional_input, unsigned int additionallen)
HMAC-PRNG reseed procedure Mixes seed into prng, enables tc_hmac_prng_generate.
Definition: tc_hmac_prng.c:138
struct tc_hmac_state_struct h
Definition: tc_hmac_prng.h:82
struct tc_hmac_prng_struct * TCHmacPrng_t
Definition: tc_hmac_prng.h:91
uint8_t key[TC_SHA256_DIGEST_SIZE]
Definition: tc_hmac_prng.h:84
Definition: tc_hmac_prng.h:80
Interface to a SHA-256 implementation.
Interface to an HMAC implementation.
int tc_hmac_prng_generate(uint8_t *out, unsigned int outlen, TCHmacPrng_t prng)
HMAC-PRNG generate procedure Generates outlen pseudo-random bytes into out buffer,...
Definition: tc_hmac_prng.c:177