23 #ifndef LW_INTERNAL_AES_H
24 #define LW_INTERNAL_AES_H
40 #include "internal-util.h"
49 #define AES_BLOCK_SIZE 16
54 #define AES128_KEY_SIZE 16
59 #define AES192_KEY_SIZE 24
64 #define AES256_KEY_SIZE 32
72 #define AES_ROUND_KEYS 60
123 const unsigned char *input);
void aes_128_init(aes_key_schedule_t *ks, const unsigned char *key)
Initializes the key schedule for AES-128.
Definition: internal-aes.c:318
Structure of the key schedule for AES.
Definition: internal-aes.h:77
#define AES_ROUND_KEYS
Number of round keys for the AES key schedule.
Definition: internal-aes.h:72
void aes_256_init(aes_key_schedule_t *ks, const unsigned char *key)
Initializes the key schedule for AES-256.
Definition: internal-aes.c:386
void aes_192_init(aes_key_schedule_t *ks, const unsigned char *key)
Initializes the key schedule for AES-192.
Definition: internal-aes.c:351
void aes_ecb_encrypt(const aes_key_schedule_t *ks, unsigned char *output, const unsigned char *input)
Encrypts a 128-bit block with AES in ECB mode.
Definition: internal-aes.c:428
uint32_t rounds
Definition: internal-aes.h:83