#include <stdint.h>
#include "attributes.h"
Go to the source code of this file.
◆ AES_CTR_KEY_SIZE
#define AES_CTR_KEY_SIZE (16) |
◆ AES_CTR_IV_SIZE
#define AES_CTR_IV_SIZE (8) |
◆ av_aes_ctr_alloc()
struct AVAESCTR * av_aes_ctr_alloc |
( |
void |
| ) |
|
Allocate an AVAESCTR context.
◆ av_aes_ctr_init()
int av_aes_ctr_init |
( |
struct AVAESCTR * |
a, |
|
|
const uint8_t * |
key |
|
) |
| |
Initialize an AVAESCTR context.
- Parameters
-
key | encryption key, must have a length of AES_CTR_KEY_SIZE |
◆ av_aes_ctr_free()
void av_aes_ctr_free |
( |
struct AVAESCTR * |
a | ) |
|
Release an AVAESCTR context.
◆ av_aes_ctr_crypt()
void av_aes_ctr_crypt |
( |
struct AVAESCTR * |
a, |
|
|
uint8_t * |
dst, |
|
|
const uint8_t * |
src, |
|
|
int |
size |
|
) |
| |
Process a buffer using a previously initialized context.
- Parameters
-
dst | destination array, can be equal to src |
src | source array, can be equal to dst |
size | the size of src and dst |
◆ av_aes_ctr_get_iv()
const uint8_t * av_aes_ctr_get_iv |
( |
struct AVAESCTR * |
a | ) |
|
◆ av_aes_ctr_set_random_iv()
void av_aes_ctr_set_random_iv |
( |
struct AVAESCTR * |
a | ) |
|
◆ av_aes_ctr_set_iv()
void av_aes_ctr_set_iv |
( |
struct AVAESCTR * |
a, |
|
|
const uint8_t * |
iv |
|
) |
| |
Forcefully change the 8-byte iv.
◆ av_aes_ctr_set_full_iv()
void av_aes_ctr_set_full_iv |
( |
struct AVAESCTR * |
a, |
|
|
const uint8_t * |
iv |
|
) |
| |
Forcefully change the "full" 16-byte iv, including the counter.
◆ av_aes_ctr_increment_iv()
void av_aes_ctr_increment_iv |
( |
struct AVAESCTR * |
a | ) |
|
Increment the top 64 bit of the iv (performed after each frame)