31 #ifndef _aes_security_h 32 #define _aes_security_h 34 #include "bootloader_common.h" 43 #define AES_128_KEY_SIZE 16 // bytes 44 #define AES_128_KEY_SIZE_WORDS 4 // 32 bit words 45 #define AES_BLOCK_SIZE_WORDS 4 // 32 bit words 46 #define AES_BLOCK_SIZE 16 // bytes 47 #define AES_128_KEY_SCHEDULE_SIZE_WORDS 44 // 32 bit words 49 #define AES_SECURITY_SUPPORTED (defined(CAU_BASE) || defined(LTC0_BASE) || FSL_FEATURE_SIM_HAS_MISCCTRL_LTCEN) 51 typedef struct mmcau_function_info
55 uint32_t aes_init_start;
56 uint32_t aes_encrypt_start;
57 uint32_t aes_decrypt_start;
70 #if defined(__cplusplus) 84 void aes_encrypt(uint32_t *in, uint32_t *key, uint32_t *out);
89 void aes_decrypt(uint32_t *in, uint32_t *key, uint32_t *out);
92 #if defined(__cplusplus) 98 #endif // _aes_security_h Tag value used to validate the bootloader configuration data.
Definition: aes_security.h:63
Definition: aes_security.h:51
void aes_init(uint32_t *key)
An initialization function for the decryption peripheral Warning: The key must be word aligned...
Definition: aes_security.c:79
_mmcau_info_tag
Definition: aes_security.h:60
void aes_decrypt(uint32_t *in, uint32_t *key, uint32_t *out)
Decrypts a 16 byte block of data in and out may use the same address so decrypting in place is suppor...
Definition: aes_security.c:138
void aes_encrypt(uint32_t *in, uint32_t *key, uint32_t *out)
Encrypts a 16 byte block of data in and out may use the same address so encrypting in place is suppor...
Definition: aes_security.c:113