This is a Rust implementation of AEGIS.
AEGIS is a new family of authenticated encryption algorithms, offering high security and exceptional performance on modern desktop, server, and mobile CPUs.
-
std
: allow dynamic allocations. This is the default. -
pure-rust
: don't use thecc
crate to take advantage of the implementations fromlibaegis
. Setting this flag will substantially degrade performance, and parallel variants will not be available. -
rustcrypto-traits-06
: add traits fromrust-crypto/aead
version 0.6. Alternative interfaces are available in thecompat
namespace.
AEGIS is very fast on CPUs with parallel execution pipelines and AES support.
Benchmarks can be reproduced using export CC="clang -O3 -march=native"
and the cargo bench
or cargo-zigbuild bench
commands.
For performance, clang
is recommended over gcc
.