aesus

Crates.ioaesus
lib.rsaesus
version0.2.0
created_at2025-07-21 21:17:05.668966+00
updated_at2025-07-23 19:56:28.374189+00
descriptionCLI for AES-256-GCM encryption using memorable passphrases
homepage
repositoryhttps://github.com/andrewrgarcia/aesus
max_upload_size
id1762690
size38,447
Andrew Garcia (andrewrgarcia)

documentation

README

AESus πŸ”βœοΈπŸ‘Ή

Because your secrets deserve more than earthly protection.


🧿 What is This?

AESus is a lean, word-based AES-256 encryption tool written in Rust, with just a hint of divine mischief. It turns memorable passphrases into strong encryption keys, helping you lock up your messages and files without resorting to arcane keyfiles or 32-character gibberish.

It’s built for privacy nerds, terminal romantics, and anyone who prefers encryption with a little style.


🌐 AESus Web App (Lite Version)

Want to encrypt messages in style, right from your browser?

πŸ‘‰ aesus.vercel.app

⚠️ Note: The web version uses simplified encryption (AES-256-CBC with SHA-256 derived key). For stronger, authenticated encryption (AES-256-GCM + PBKDF2 + salt + nonce), use the Rust CLI version.

Perfect for casual message locking or secret note passing. Not recommended for storing the nuclear codes.


✨ Features

  • πŸ”‘ Memorable passphrases β†’ PBKDF2-HMAC-SHA256 β†’ AES-256-GCM key
  • πŸ” AES-256-GCM with random salt + nonce, versioned output
  • πŸ“ File encryption/decryption with optional --out override
  • πŸ§ͺ Message encryption with embedded salt + nonce (prints hex blob)
  • 🎲 Diceware-style passphrase generator
  • βš™οΈ Clean and modern CLI built with clap
  • πŸ¦€ Fast, safe, zero-bullshit Rust implementation

πŸ“¦ Installation

Install locally from source:

cargo install --path .

πŸ“‘ Or globally (once published):

cargo install aesus

πŸ” Examples

Encrypt a message:

aesus encrypt "Confess nothing" --key scythe-raven-lemon-halo

Returns an encrypted hex blob (salt + nonce + ciphertext), ready to share or stash.


Decrypt a hex blob:

aesus decrypt --hex 01abcd... --key scythe-raven-lemon-halo

Encrypt a file:

aesus encrypt --file secret.txt --key pancake-prophet-echo-oxide

Creates: secret.txt.aesus Or use --out to choose your own destiny:

aesus encrypt --file secret.txt --key ... --out recipe.sealed

Decrypt a file:

aesus decrypt --file secret.txt.aesus --key pancake-prophet-echo-oxide

Or save the result under any name:

aesus decrypt --file recipe.sealed --key ... --out final-form.txt

Generate a passphrase:

aesus generate --words 6

Output:

quest-ember-black-icicle-neon-crane

Memorable, weird, and more secure than hunter2.


πŸ›  Roadmap

  • AES-GCM encryption with versioned format
  • --out flag for flexible output paths
  • Per-file random salt and nonce
  • Diceware-style passphrase generator
  • Config and vault-like features
  • Cross-platform builds β€” Windows deserves privacy too, apparently
  • GUI enhancements & WebAuthn/biometrics (maybe)
  • Whispered Latin chants on success β€” a joke... unless?

πŸ“œ Disclaimer

AESus is not divine. It won’t recover your passphrase or stop you from encrypting your taxes as pancake.jeff.

Use responsibly. Backup your data. Don’t test encryption tools with your only copy of anything, unless you like pain.


🩸 License

MIT. Free as in freedom, and as in β€œfree to use for your cursed backup rituals.”


πŸ•³οΈ Contact

Made by Andrew Garcia Open to feedback, PRs, bug reports, or cryptic fanmail.

Commit count: 0

cargo fmt