Skip to content

Portable C implementations of AEGIS (WIP).

License

Notifications You must be signed in to change notification settings

kazuho/libaegis

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libaegis

Portable C implementations of AEGIS (AEGIS-128L and AEGIS-256), with runtime CPU detection.

Features

  • AEGIS-128L with 16 and 32 bytes tags
  • AEGIS-256 with 16 and 32 bytes tags
  • Encryption and decryption with attached and detached tags
  • Incremental encryption and decryption.

Installation

Compilation with zig:

zig build -Drelease

The library is installed in the zig-out/lib folder.

Public inludes are in the src/include folder.

Compilation with cmake:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/install/prefix ..
make install

Direct inclusion

Copy everything in src directly into your project, and compile everything like regular C code. No special configuration is required.

Usage

Include <aegis.h> and call aegis_init() prior to doing anything else with the library.

aegis_init() checks the CPU capabilities in order to later use the fastest implementations.

About

Portable C implementations of AEGIS (WIP).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 95.2%
  • Zig 2.4%
  • CMake 2.4%