AES utilities. More...

Modules

Types
AES data types.
 

Functions

void aes_setkey_enc (aes_context_t *ctx, const unsigned char *key, uint32_t keysize_bits)
 AES key schedule (encryption) More...
 
void aes_setkey_dec (aes_context_t *ctx, const unsigned char *key, uint32_t keysize_bits)
 AES key schedule (decryption) More...
 
void aes_encrypt_ecb (aes_context_t *ctx, const unsigned char input[16], unsigned char output[16])
 AES-ECB block encryption. More...
 
void aes_decrypt_ecb (aes_context_t *ctx, const unsigned char input[16], unsigned char output[16])
 AES-ECB block decryption. More...
 
void aes_encrypt_cbc (aes_context_t *ctx, unsigned char iv[16], const zos_buffer_t *input, zos_buffer_t *output)
 AES-CBC buffer encryption. More...
 
void aes_decrypt_cbc (aes_context_t *ctx, unsigned char iv[16], const zos_buffer_t *input, zos_buffer_t *output)
 AES-CBC buffer encryption. More...
 

Detailed Description

AES utilities.

Function Documentation

void aes_decrypt_cbc ( aes_context_t ctx,
unsigned char  iv[16],
const zos_buffer_t input,
zos_buffer_t output 
)

AES-CBC buffer encryption.

Parameters
ctxAES context
ivinitialization vector (updated after use)
inputbuffer holding the input data
outputbuffer holding the output data
void aes_decrypt_ecb ( aes_context_t ctx,
const unsigned char  input[16],
unsigned char  output[16] 
)

AES-ECB block decryption.

Parameters
ctxAES context
input16-byte input block
output16-byte output block
void aes_encrypt_cbc ( aes_context_t ctx,
unsigned char  iv[16],
const zos_buffer_t input,
zos_buffer_t output 
)

AES-CBC buffer encryption.

Parameters
ctxAES context
ivinitialization vector (updated after use)
inputbuffer holding the input data
outputbuffer holding the output data
Examples:
basic/file_encrypt/crypto_utils.c.
void aes_encrypt_ecb ( aes_context_t ctx,
const unsigned char  input[16],
unsigned char  output[16] 
)

AES-ECB block encryption.

Parameters
ctxAES context
input16-byte input block
output16-byte output block
Examples:
basic/aes_ctr/aes_ctr.c, and basic/file_encrypt/crypto_utils.c.
void aes_setkey_dec ( aes_context_t ctx,
const unsigned char *  key,
uint32_t  keysize_bits 
)

AES key schedule (decryption)

Parameters
ctxAES context to be initialized
keydecryption key
keysize_bitsmust be 128, 192 or 256
void aes_setkey_enc ( aes_context_t ctx,
const unsigned char *  key,
uint32_t  keysize_bits 
)

AES key schedule (encryption)

Parameters
ctxAES context to be initialized
keyencryption key
keysize_bitsmust be 128, 192 or 256
Examples:
basic/aes_ctr/aes_ctr.c, basic/file_encrypt/crypto_utils.c, basic/file_encrypt/decrypt.c, and basic/file_encrypt/encrypt.c.