Module aes_frast::aes_core

source ·
Expand description

The aes_core mod provides the essential functions of AES, including key scheduling and single-block crypto.

aes_core

aes_core is the core part of AES crypto, including key scheduling, block encryption and decryption.

This module provides low-level API.

In this library, AES is implemented by looking-up-tables.

Attention!

This low-level API does NOT provide error handling.

Please be careful with the lengths of the slices when passing it as the parameters of a function. Otherwise, it will panic at index out of bounds or assertion failed.

Block cipher

The AES algorithm only supports 128-bit (16 bytes) block.

It supports 128-bit (16 bytes), 192-bit (24 bytes) and 265-bit (32 bytes) keys.

AES block crypto uses sub-keys (aka working keys), which are derived from a key. This derivation process is called key schedule or key expansion.

key size in bitskey size in bytessub-keys size in 32-bit words
1281644
1922452
2563260

Constants

Functions