Skip to main content

Crate hekate_aes

Crate hekate_aes 

Source
Expand description

AES-128 and AES-256 chiplets for Hekate, the Rust zero-knowledge proof engine.

Aes128Chiplet and Aes256Chiplet pair a round table, AesRound128Air or AesRound256Air, that proves the FIPS 197 round function with an S-box ROM for the GF(2^8) inversion. trace expands keys and builds the chiplet traces in constant time.

Re-exports§

pub use aes128::Aes128Chiplet;
pub use aes128::Aes128Columns;
pub use aes128::AesRound128Air;
pub use aes128::CpuAes128Columns;
pub use aes128::PhysAes128Columns;
pub use aes256::Aes256Chiplet;
pub use aes256::Aes256Columns;
pub use aes256::AesRound256Air;
pub use aes256::CpuAes256Columns;
pub use aes256::PhysAes256Columns;

Modules§

aes128
AES-128 Round Chiplet.
aes256
AES-256 Round Chiplet.
trace
AES trace generation (128 and 256).

Structs§

PhysSboxRomColumns
SboxRomColumns

Constants§

AES_BYTE_LABELS

Functions§

host_key_selector_shape
Host key emit schedule: KEY_SELECTOR fires only on each block’s input row at offset 0.
host_selector_shape
Host emit schedule: SELECTOR fires on each block’s input row at offset 0 and output row at offset 1.