Go to the source code of this file.
Data Structures | |
union | av_aes_block |
struct | AVAES |
Defines | |
#define | ROT(x, s) ((x << s) | (x >> (32-s))) |
Typedefs | |
typedef struct AVAES | AVAES |
Functions | |
static void | addkey (av_aes_block *dst, const av_aes_block *src, const av_aes_block *round_key) |
static void | addkey_s (av_aes_block *dst, const uint8_t *src, const av_aes_block *round_key) |
static void | addkey_d (uint8_t *dst, const av_aes_block *src, const av_aes_block *round_key) |
static void | subshift (av_aes_block s0[2], int s, const uint8_t *box) |
static int | mix_core (uint32_t multbl[][256], int a, int b, int c, int d) |
static void | mix (av_aes_block state[2], uint32_t multbl[][256], int s1, int s3) |
static void | crypt (AVAES *a, int s, const uint8_t *sbox, uint32_t multbl[][256]) |
void | av_aes_crypt (AVAES *a, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt) |
Encrypt or decrypt a buffer using a previously initialized context. | |
static void | init_multbl2 (uint32_t tbl[][256], const int c[4], const uint8_t *log8, const uint8_t *alog8, const uint8_t *sbox) |
int | av_aes_init (AVAES *a, const uint8_t *key, int key_bits, int decrypt) |
Initialize an AVAES context. | |
Variables | |
const int | av_aes_size = sizeof(AVAES) |
static const uint8_t | rcon [10] |
static uint8_t | sbox [256] |
static uint8_t | inv_sbox [256] |
static uint32_t | enc_multbl [4][256] |
static uint32_t | dec_multbl [4][256] |
#define ROT | ( | x, | |
s | |||
) | ((x << s) | (x >> (32-s))) |
Definition at line 61 of file aes.c.
Referenced by init_multbl2(), and mix_core().
static void addkey | ( | av_aes_block * | dst, |
const av_aes_block * | src, | ||
const av_aes_block * | round_key | ||
) | [inline, static] |
static void addkey_d | ( | uint8_t * | dst, |
const av_aes_block * | src, | ||
const av_aes_block * | round_key | ||
) | [inline, static] |
Definition at line 78 of file aes.c.
Referenced by av_aes_crypt().
static void addkey_s | ( | av_aes_block * | dst, |
const uint8_t * | src, | ||
const av_aes_block * | round_key | ||
) | [inline, static] |
Definition at line 71 of file aes.c.
Referenced by av_aes_crypt().
static void crypt | ( | AVAES * | a, |
int | s, | ||
const uint8_t * | sbox, | ||
uint32_t | multbl[][256] | ||
) | [inline, static] |
Definition at line 124 of file aes.c.
Referenced by av_aes_crypt().
static void init_multbl2 | ( | uint32_t | tbl[][256], |
const int | c[4], | ||
const uint8_t * | log8, | ||
const uint8_t * | alog8, | ||
const uint8_t * | sbox | ||
) | [static] |
Definition at line 162 of file aes.c.
Referenced by av_aes_init().
static void mix | ( | av_aes_block | state[2], |
uint32_t | multbl[][256], | ||
int | s1, | ||
int | s3 | ||
) | [inline, static] |
Definition at line 116 of file aes.c.
Referenced by av_aes_init(), and crypt().
static int mix_core | ( | uint32_t | multbl[][256], |
int | a, | ||
int | b, | ||
int | c, | ||
int | d | ||
) | [inline, static] |
static void subshift | ( | av_aes_block | s0[2], |
int | s, | ||
const uint8_t * | box | ||
) | [static] |
Definition at line 85 of file aes.c.
Referenced by av_aes_init(), and crypt().
uint32_t dec_multbl[4][256] [static] |
Definition at line 55 of file aes.c.
Referenced by av_aes_crypt(), and av_aes_init().
uint32_t enc_multbl[4][256] [static] |
Definition at line 54 of file aes.c.
Referenced by av_aes_crypt(), and av_aes_init().
uint8_t inv_sbox[256] [static] |
Definition at line 49 of file aes.c.
Referenced by av_aes_crypt(), and av_aes_init().
const uint8_t rcon[10] [static] |
{ 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36 }
Definition at line 44 of file aes.c.
Referenced by av_aes_init().
uint8_t sbox[256] [static] |
Definition at line 48 of file aes.c.
Referenced by av_aes_crypt(), and av_aes_init().