Functions
INCREMENT()
#define INCREMENT(size, ctr)
drbg_aes_init ()
int
drbg_aes_init (struct drbg_aes_ctx *ctx,
unsigned entropy_size,
const uint8_t *entropy,
unsigned pstring_size,
const uint8_t *pstring);
drbg_aes_reseed ()
int
drbg_aes_reseed (struct drbg_aes_ctx *ctx,
unsigned entropy_size,
const uint8_t *entropy,
unsigned add_size,
const uint8_t *add);
drbg_aes_random ()
int
drbg_aes_random (struct drbg_aes_ctx *ctx,
unsigned length,
uint8_t *dst);
drbg_aes_generate ()
int
drbg_aes_generate (struct drbg_aes_ctx *ctx,
unsigned length,
uint8_t *dst,
unsigned add_size,
const uint8_t *add);
drbg_aes_is_seeded ()
int
drbg_aes_is_seeded (struct drbg_aes_ctx *ctx);
drbg_aes_self_test ()
int
drbg_aes_self_test (void);
Types and Values
DRBG_AES_KEY_SIZE
#define DRBG_AES_KEY_SIZE AES256_KEY_SIZE
DRBG_AES_SEED_SIZE
#define DRBG_AES_SEED_SIZE (AES_BLOCK_SIZE+DRBG_AES_KEY_SIZE)
struct drbg_aes_ctx
struct drbg_aes_ctx {
unsigned seeded;
/* The current key */
struct aes256_ctx key;
uint8_t v[AES_BLOCK_SIZE];
unsigned reseed_counter;
};
MAX_DRBG_AES_GENERATE_SIZE
#define MAX_DRBG_AES_GENERATE_SIZE 65536 /* 2^19 */
DRBG_AES_RESEED_TIME
#define DRBG_AES_RESEED_TIME 16777216