273 #ifndef ti_drivers_AESCTRDRBG__include 274 #define ti_drivers_AESCTRDRBG__include 284 #include <ti/devices/DeviceFamily.h> 302 #define AESCTRDRBG_STATUS_RESERVED AES_STATUS_RESERVED 310 #define AESCTRDRBG_STATUS_SUCCESS AES_STATUS_SUCCESS 318 #define AESCTRDRBG_STATUS_ERROR AES_STATUS_ERROR 328 #define AESCTRDRBG_STATUS_RESOURCE_UNAVAILABLE AES_STATUS_RESOURCE_UNAVAILABLE 336 #define AESCTRDRBG_STATUS_RESEED_REQUIRED (AES_STATUS_DRIVER_SPECIFIC_ERROR - 0) 342 #define AESCTRDRBG_STATUS_UNINSTANTIATED (AES_STATUS_DRIVER_SPECIFIC_ERROR - 1) 351 #define AESCTRDRBG_STATUS_UNALIGNED_IO_NOT_SUPPORTED (AES_STATUS_DRIVER_SPECIFIC_ERROR - 2) 359 #define AESCTRDRBG_STATUS_KEYSTORE_ERROR (AES_STATUS_KEYSTORE_GENERIC_ERROR) 364 #define AESCTRDRBG_AES_BLOCK_SIZE_BYTES 16 633 const void *additionalData,
634 size_t additionalDataLength);
The CryptoKey type is an opaque representation of a cryptographic key.
AESCTRDRBG_AES_KEY_LENGTH
Length in bytes of the internal AES key used by an instance.
Definition: AESCTRDRBG.h:369
#define AESCTRDRBG_AES_BLOCK_SIZE_BYTES
The AES block size in bytes.
Definition: AESCTRDRBG.h:364
void AESCTRDRBG_close(AESCTRDRBG_Handle handle)
Function to close an AESCTRDRBG instance specified by the AESCTRDRBG_Handle.
Definition: AESCTRDRBG.h:415
Definition: AESCTRDRBG.h:410
const AESCTRDRBG_Params AESCTRDRBG_defaultParams
Default AESCTRDRBG_Params structure.
AES Global configuration.
Definition: AESCommon.h:154
void AESCTRDRBG_init(void)
This function initializes the AESCTRDRBG driver.
CryptoKey datastructure.
Definition: CryptoKey.h:211
AESCTRDRBG_SEED_LENGTH
Length in bytes of seed used to instantiate or reseed instance.
Definition: AESCTRDRBG.h:378
Definition: AESCTRDRBG.h:381
int_fast16_t AESCTRDRBG_generateKey(AESCTRDRBG_Handle handle, CryptoKey *randomKey)
Populates the provided CryptoKey object's plaintext key-material with random bytes.
Definition: AESCTRDRBG.h:380
AESCTRDRBG_Handle AESCTRDRBG_construct(AESCTRDRBG_Config *config, const AESCTRDRBG_Params *params)
Constructs a new AESCTRDRBG object.
AESCTRDRBG Parameters.
Definition: AESCTRDRBG.h:444
AESCTRDRBG_ReturnBehavior
The way in which AESCTRDRBG function calls return after generating the requested entropy.
Definition: AESCTRDRBG.h:404
Definition: AESCTRDRBG.h:371
const void * seed
Definition: AESCTRDRBG.h:453
int_fast16_t AESCTRDRBG_getRandomBytes(AESCTRDRBG_Handle handle, void *randomBytes, size_t randomBytesSize)
Generates the requested number of random bytes and outputs to the given array.
void * custom
Definition: AESCTRDRBG.h:473
uint32_t reseedInterval
Definition: AESCTRDRBG.h:449
AESCommon_Config AESCTRDRBG_Config
AESCTRDRBG Global configuration.
Definition: AESCTRDRBG.h:429
AESCTRDRBG_Config * AESCTRDRBG_Handle
A handle that is returned from an AESCTRDRBG_open() call.
Definition: AESCTRDRBG.h:434
AESCTRDRBG_AES_KEY_LENGTH keyLength
Definition: AESCTRDRBG.h:446
int_fast16_t AESCTRDRBG_reseed(AESCTRDRBG_Handle handle, const void *seed, const void *additionalData, size_t additionalDataLength)
Reseed an AESCTRDRBG instance.
AESCTRDRBG_Handle AESCTRDRBG_open(uint_least8_t index, const AESCTRDRBG_Params *params)
This function opens a given AESCTRDRBG instance.
AES common module header for all devices.
int_fast16_t AESCTRDRBG_getBytes(AESCTRDRBG_Handle handle, CryptoKey *randomBytes)
Generates the requested number of random bytes.
AESCTRDRBG_ReturnBehavior returnBehavior
Definition: AESCTRDRBG.h:466
void AESCTRDRBG_Params_init(AESCTRDRBG_Params *params)
Function to initialize the AESCTRDRBG_Params struct to its defaults.
size_t personalizationDataLength
Definition: AESCTRDRBG.h:462
Definition: AESCTRDRBG.h:372
const void * personalizationData
Definition: AESCTRDRBG.h:458