Expand description
§AEGIS for Rust
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.
§API documentation
§Cargo flags
-
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 some features may not be available. When using the pure-rust implementation, addingRUSTFLAGS="-C target-cpu=native"
to the environment variable prior to compiling the project is highly recommended for better performance. -
rustcrypto-traits-06
: add traits fromrust-crypto/aead
version 0.6. Alternative interfaces are available in thecompat
namespace.
§Benchmarks
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
.