Local-first & open source

Open any archive
or encrypted file.
Re-encrypt into any format.

ZIP, tar, age, GPG, NTFS — unlock it all. Then re-package into age, GPG, AES-zip, or a Fordan vault. On any OS. No cloud. Your keys never leave your machine.

terminal
# Convert an age-encrypted bundle to a GPG-encrypted archive
$ fordan convert archive.age -f gpg -o archive.gpg --key team.pub
✓ Source: age-encrypted (read-only)
✓ Sink: GPG/PGP — 3 entries written
✓ Source untouched. blake3: a7f3…

# Re-encrypt a ZIP with a forgotten password → Fordan vault
$ fordan convert old.zip --old-password hunter2 -f vault -o safe.sec
✓ Source: ZIP (AES-256, read-only)
✓ Sink: Fordan vault (ChaCha20-Poly1305, Argon2id)
✓ 4 812 files · source untouched.

# Extract an NTFS drive image to a local folder
$ fordan extract disk.img -o ./rescued
✓ NTFS source (931 GiB, read-only)
✓ 14 203 files extracted. Source checksum unchanged.
Read-only source access
age · GPG · AES-zip · vault
BLAKE3 integrity checks
Zero network calls

Source → Sink

Open anything. Re-encrypt into whatever you need.

Source (open these)

  • .zip Standard & AES-256 ZIP
  • .tar .tar.gz .tar.bz2 Compressed archives
  • .age age-encrypted bundles
  • .gpg .pgp GPG / OpenPGP files
  • .sec Fordan vault containers
  • .img NTFS / FAT32 disk images
  • dir/ Any local directory

Sink (encrypt into these)

  • .age age (X25519 or SSH key)
  • .gpg GPG / PGP public key
  • .zip AES-256 ZIP (password)
  • .sec Fordan vault (ChaCha20-Poly1305 + Argon2id)
  • dir/ Plain folder (extract/decrypt)

How it works

One engine. Source → Sink. Format logic lives in the ends, never in the middle.

  1. 01

    Pick a Source

    Point Fordan at any archive, encrypted container, disk image, or directory. It opens it read-only and checksums the container before touching anything.

  2. 02

    Choose a Sink

    Select your output format — age, GPG, AES-zip, Fordan vault, or a plain folder. The engine streams entries straight from Source to Sink without ever needing both in memory simultaneously.

  3. 03

    Convert

    Run fordan convert. Every entry passes through the engine. The Sink seals itself. The Source is verified unchanged. Nothing is moved or deleted from the original.

  4. 04

    Verify

    Run fordan verify on the output to re-check every AEAD authentication tag. A vault that cannot be fully verified is treated as corrupt, not partially valid.

Built for trust

Every design decision puts your data's safety first.

Source is always read-only

The source handle has no write API. The type system makes it structurally impossible to accidentally modify your original — whether it's a ZIP, an age file, or a raw disk image.

Vetted crypto only

No homebrew ciphers. ChaCha20-Poly1305 or AES-GCM for encryption; Argon2id for key derivation; BLAKE3 for hashing. All from audited RustCrypto crates.

Any OS, any format

Mac, Linux, Windows. Every output format is portable and versioned. No OS-specific quirks. The vault format spec lives in docs/ alongside the code.

Tamper-evident output

Every encrypted artifact carries an AEAD authentication tag. fordan verify re-checks every tag — a vault that cannot be fully verified is treated as corrupt, not partially valid.

Zero telemetry

The core library and CLI have zero network calls. No analytics, no update checks, no phoning home. Your file names, keys, and plaintext never leave your machine.

Browser WASM viewer

Decrypt .sec files directly in your browser — no install required. The WASM module runs entirely client-side. Keys and plaintext never reach a server.

Download

Binary builds for every platform. No installer wizard. No telemetry.

All platforms

Ready to rescue your files?

Fordan is open source, free, and built to stay that way.