Data Structures | |
struct | aes_config_t |
AES Configuration structure. More... | |
struct | aes_isrconfig_t |
AES Interrupt configuration structure. More... | |
Macros | |
#define | AES_CBC_MODE 1 |
#define | AES_CFB_MODE 3 |
#define | AES_CTR_MODE 4 |
#define | AES_ECB_MODE 0 |
AES Operation cipher mode. More... | |
#define | AES_KEY_SIZE_128 0 |
AES Cryptographic key size. More... | |
#define | AES_KEY_SIZE_192 1 |
#define | AES_KEY_SIZE_256 2 |
#define | AES_OFB_MODE 2 |
#define | AES_PMODE_CIPHER 1 |
#define | AES_PMODE_DECIPHER 0 |
AES Processing mode. More... | |
#define | AES_START_MODE_AUTO 1 |
#define | AES_START_MODE_DMA 2 |
#define | AES_START_MODE_MANUAL 0 |
AES Start mode. More... | |
#define | AES_URAT_INPUTWRITE_DMA 0 |
AES URAD Type. More... | |
#define | AES_URAT_MRWRITE_PROCESS 2 |
#define | AES_URAT_MRWRITE_SUBKEY 4 |
#define | AES_URAT_OUTPUTREAD_PROCESS 1 |
#define | AES_URAT_OUTPUTREAD_SUBKEY 3 |
#define | AES_URAT_READ_WRITEONLY 5 |
Functions | |
void | aes_configure (volatile avr32_aes_t *aes, const aes_config_t *pAesConfig) |
Configure the AES. More... | |
unsigned int | aes_get_status (volatile avr32_aes_t *aes) |
Get the AES status. More... | |
void | aes_isr_configure (volatile avr32_aes_t *aes, const aes_isrconfig_t *pAesIsrConfig) |
Configure the AES interrupts. More... | |
static __always_inline void | aes_load_newseed (volatile avr32_aes_t *aes) |
Trigger the load of a new seed in the AES internal random number generator (used for security counter measures). More... | |
void | aes_read_outputdata (volatile avr32_aes_t *aes, unsigned int *pOut) |
Read the 128/64/32/16/8bit input data. More... | |
void | aes_set_initvector (volatile avr32_aes_t *aes, const unsigned int *pVector) |
Set the 128bit initialization vector (for the CBC, CFB, OFB & CTR cipher modes) More... | |
void | aes_set_key (volatile avr32_aes_t *aes, const unsigned int *pKey) |
Set the 128/192/256bit cryptographic key. More... | |
static __always_inline void | aes_start (volatile avr32_aes_t *aes) |
Start the cipher/decipher process [manual mode only]. More... | |
static __always_inline void | aes_swreset (volatile avr32_aes_t *aes) |
Perform a software reset of the AES. More... | |
void | aes_write_inputdata (volatile avr32_aes_t *aes, const unsigned int *pIn) |
Write the 128/64/32/16/8bit input data. More... | |