Skip to content

cfrg/draft-irtf-cfrg-aegis-aead

Repository files navigation

The AEGIS Family Of Authenticated Encryption Algorithms

This is the working area for the individual Internet-Draft, "The AEGIS family of authenticated encryption algorithms".

Known Implementations

Name Language
This document's reference implementations Zig
CAESAR reference AEGIS-128L implementations C
CAESAR reference AEGIS-256 implementations C
Linux kernel C
libsodium C
angt/aegis256 C
TwoEightNine/aegis C
libaegis C
aegis-bitsliced C
google/aegis-cipher C++
aegis Rust
raycrypt Rust
crypto-rust Rust
Zig standard library Zig
x13a/py-aegis Python
ericlagergren/aegis Go
samuel-lucas6/AEGIS.NET C#
arc.crypto C#
aegis-128L JavaScript
aegis-js JavaScript
aegis-kotlin Kotlin
aegis-jasmin Assembly (Jasmin)
aegis-java Java
moonbit-aegis Moonbit
sodium-compat PHP
aegis-ts TypeScript
yawning/odin Odin

Hardware implementations

Name Language
Athena/AEGIS RTL VHDL
AEGIS256 UVM Verification SystemVerilog

AEGIS support in TLS stacks

Test vectors

For convenience, test vectors can be downloaded in JSON format from the test-vectors directory.

Project Wycheproof includes additional test vectors:

Project Rooterberg also includes an extensive set of test vectors for AEGIS variants.

Contributing

See the guidelines for contributions.

Contributions can be made by creating pull requests. The GitHub interface supports creating pull requests using the Edit (✏) button.

Command Line Usage

Formatted text and HTML versions of the draft can be built using make.

$ make

Command line usage requires that you have the necessary software installed. See the instructions.