A simple, secure, and fully offline file encryption tool built with vanilla JavaScript, using modern browser cryptography standards.
No dependencies. No server. No data ever leaves your device.
Styled with modest-ui.
- AES-256-GCM encryption for confidentiality and integrity
- PBKDF2 with SHA-256 and 100,000 iterations for strong password-based key derivation
- All operations happen locally in your browser
- Mobile-friendly, responsive UI
- Styled with modest-ui — a minimal, themeable CSS component library
- No build tools, no frameworks — just open
index.htmland go
- Choose a file you want to encrypt or decrypt
- Enter a secure password
- Click Encrypt or Decrypt
- The tool:
- Derives a secure key from your password using PBKDF2 + SHA-256
- Encrypts/decrypts your file using AES-256-GCM
- Combines metadata (salt + IV) with the ciphertext
- Automatically prompts a secure download of the output file
- Uses the Web Crypto API, built into all modern browsers
- All encryption/decryption is done in-memory
- AES-GCM provides both encryption and tamper protection
- PBKDF2 with 100,000 iterations defends against brute-force attacks
The encrypted file is structured as follows:
| Bytes | Contents |
|---|---|
| 0–15 | Salt (16 bytes) |
| 16–27 | IV (Initialization Vector, 12 bytes) |
| 28+ | Ciphertext + Auth Tag |
This format allows the decryption tool to re-derive the key and decrypt the file securely.
Just open index.html in your browser — no internet or installation needed.
- Click Choose File
- Enter a password
- Click Encrypt
- Save the generated
.encfile
- Choose the
.encfile - Enter the same password used to encrypt
- Click Decrypt
- The original file is downloaded with a
.decextension
- A modern browser:
- Chrome
- Firefox
- Safari
- Edge
- Mobile browsers supported
Always use a strong, unique password — the tool is only as secure as the password you choose.
MIT License — free to use, modify, and distribute.
Built by Marcus using nothing but love for crypto, privacy, and clean HTML (and a little AI). UI components by modest-ui.