Complete guide to military-grade folder and file encryption. Learn installation, usage, security best practices, and advanced features.
Enterprise security made accessible with an intuitive interface
XChaCha20-Poly1305 AEAD cipher with 256-bit keys and Argon2id key derivation
Visual drive and folder navigation with smart path detection
Works seamlessly on Windows, macOS, and Linux
Compress and encrypt entire folders into .ecrypt files
Use passphrases or raw 32-byte key files
Authentication tags prevent unauthorized modifications
Multiple installation methods for all platforms
Invoke-WebRequest -Uri "https://github.com/pandarudra/ecrypto/releases/latest/download/ecrypto-windows-amd64.exe" -OutFile "ecrypto.exe" # Run it .\ecrypto.exe
curl -L -o ecrypto "https://github.com/pandarudra/ecrypto/releases/latest/download/ecrypto-darwin-amd64" chmod +x ecrypto sudo mv ecrypto /usr/local/bin/
wget -O ecrypto "https://github.com/pandarudra/ecrypto/releases/latest/download/ecrypto-linux-amd64" chmod +x ecrypto sudo mv ecrypto /usr/local/bin/
npm install -g ecrypto-cli # Use anywhere ecrypto-cli --help
git clone https://github.com/pandarudra/ecrypto.git cd ecrypto go build -o ecrypto
Navigate your file system visually without typing paths manually
💾 Select Drive [1] 💾 C: [2] 💾 D: [3] 💾 E:
Start by choosing your drive on Windows systems
📂 Current: C:\Users\Name [1] ⬆️ .. [2] 📁 Documents [3] 📁 Downloads [4] 📁 Pictures (250 MB) [5] 📄 report.pdf (2.5 MB)
Browse folders with numbered selection and size preview
.\ecrypto.exe
You'll see an intuitive menu:
██████ ▄█████ █████▄ ██ ██ █████▄ ██████ ▄████▄ ██▄▄ ██ ██▄▄██▄ ▀██▀ ██▄▄█▀ ██ ██ ██ ██▄▄▄▄ ▀█████ ██ ██ ██ ██ ██ ▀████▀ [1] [ENCRYPT] Encrypt a Folder/File [2] [DECRYPT] Decrypt a Folder/File [3] [KEYGEN] Generate Encryption Key [4] [INFO] View Container Info [5] [UNDO] Undo Recent Operation [6] [EXIT] Quit Application
Complete CLI command documentation
ecrypto encrypt \ --in "C:\MyFolder" \ --out "backup.ecrypt" \ --pass "password"
ecrypto encrypt \ --in "C:\document.pdf" \ --out "document.ecrypt" \ --pass "password"
ecrypto keygen \ --out encryption.key
ecrypto encrypt \ --in "C:\MyFolder" \ --out "backup.ecrypt" \ --key-file encryption.key
ecrypto decrypt \ --in "backup.ecrypt" \ --out "restored" \ --pass "password"
ecrypto info \ --file backup.ecrypt
| Command | Flag | Description | Default |
|---|---|---|---|
encrypt |
--in |
Input folder or file path | Required |
--out |
Output .ecrypt file path | Required | |
--pass |
Passphrase (Argon2id) | - | |
--key-file |
32-byte Base64 key file | - | |
--argon-m |
Argon2 memory (KiB) | 262144 (256MB) | |
--argon-t |
Argon2 iterations | 3 | |
--argon-p |
Argon2 parallelism | 1 |
| Command | Flag | Description | Default |
|---|---|---|---|
decrypt |
--in |
Input .ecrypt file | Required |
--out |
Output folder path | Required | |
--pass |
Passphrase | - | |
--key-file |
Key file path | - | |
keygen |
--out |
Output key file | stdout |
info |
--file |
.ecrypt file path | Required |
ecrypto encrypt \ --in "C:\Users\Name\Documents" \ --out "documents_backup.ecrypt" \ --pass "SecurePassword123!"
Regular backups for cloud storage and disaster recovery
ecrypto keygen --out key.txt ecrypto encrypt \ --in "sensitive.pdf" \ --out "transfer.ecrypt" \ --key-file key.txt
Send encrypted file via one channel, key via another
# Fast (128MB memory) ecrypto encrypt --in folder \ --out backup.ecrypt \ --pass "password" \ --argon-m 131072 --argon-t 2
Adjust parameters for older hardware
# Strong (512MB memory) ecrypto encrypt --in folder \ --out critical.ecrypt \ --pass "password" \ --argon-m 524288 --argon-t 5
Maximum protection for sensitive data
Cryptographic implementation and threat protection
| Protection | Implementation |
|---|---|
| Unauthorized Access | 256-bit XChaCha20-Poly1305 encryption |
| Metadata Leakage | File names encrypted within container |
| Data Tampering | Poly1305 authentication tag verification |
| Brute Force | Argon2id memory-hard key derivation |
| Rainbow Tables | Unique salt per container |
| Nonce Reuse | Random 24-byte nonce per encryption |
# Windows sdelete -p 3 "C:\Original" # Linux/macOS shred -vfz -n 3 /path/file
Use secure deletion tools for originals
Cause: Output path is directory, not file
Fix: Specify file ending with
.ecrypt
Cause: Wrong passphrase or corrupted file
Fix: Verify passphrase, check file integrity
Cause: Argon2 memory too high
Fix: Reduce --argon-m parameter
Cause: Large folders or high Argon2 settings
Fix: Use key files or reduce parameters
Cause: Paths with spaces not quoted
Fix: Use quotes: "C:\My Folder"
Cause: Wrong syntax
Fix: Use --help for correct syntax
Internal structure of .ecrypt containers
.ecrypt Container Format (v1) ┌───────────────────────────────────────── │ HEADER (59 bytes, authenticated) ├───────────────────────────────────────── │ Magic Bytes "ECRYPT01" │ Version 1 │ KDF Type 0=raw key | 1=argon2id │ Argon2 Params memory, iterations, parallelism │ Salt 16 bytes (random) │ Nonce 24 bytes (random) ├───────────────────────────────────────── │ ENCRYPTED PAYLOAD (XChaCha20-Poly1305) ├───────────────────────────────────────── │ ├─ Compressed ZIP Archive │ │ ├─ File hierarchy │ │ ├─ File contents │ │ └─ Metadata │ └─ Authentication Tag (16 bytes) └───────────────────────────────────────── File Flow: Input → ZIP Compress → Encrypt → .ecrypt Container