2 releases

Uses new Rust 2024

0.9.1 Jul 12, 2025
0.8.2 Jun 19, 2025
0.8.1 Jan 22, 2025
0.5.0 Aug 31, 2024
0.2.0 Jun 18, 2021

#256 in Cryptography

Download history

964 downloads per month

MIT license

17KB
392 lines

aef GitHub Workflow Status Crates.io

aef is an encrypted file archiver, it uses AES-256-GCM to fully encrypt data and Argon2id to prevent brute force data cracking.

[!WARNING]

  • aef has not undergone any security check
  • Disruptive changes may occur prior to 1.0

Install

Download the binary from the release page

Or use cargo to install

cargo install aef

Usage

# Encrypt
aef -i ./your.file -o ./your.file.aef

# Decrypt
aef -i ./your.file.aef -o ./your.file -d

Password

By default you will enter your password in the terminal, if you don't want to enter it manually you can use the -p option or set the AEF_PASSWORD environment variable.

# Using -p option
aef -i ./file -o ./dist.aef -p 123456

# Using environment variable
export AEF_PASSWORD=123456
aef -i ./file -o ./dist.aef

Pipeline

aef support transmission through Pipeline, you can use it in combination with commands like tar.

# Encrypt
tar -czf - your.file | aef -o ./your-file.tgz.aef

# Decrypt
aef -d -i ./your-file.tgz.aef | tar -xzf -

Help

aef --help
Usage: aef [OPTIONS]

Options:
  -i, --input <INPUT>                File | Stdin
  -o, --output <OUTPUT>              File | Stdout
  -p, --password <PASSWORD>          Set password [env: AEF_PASSWORD=]
  -d, --decrypt                      Decrypt file
  ...
  -h, --help                         Print help
  -V, --version                      Print version

Dependencies

~9–20MB
~319K SLoC