Repository navigation
What's New
New Features
- Gzip compression before encryption (automatic, reduces file size)
- Streaming encryption for large files (configurable threshold, default 100 MiB)
- Directory encryption via tar archiving (
encrypt-dir/decrypt-dir) - Re-encrypt command — change password without manual decrypt/re-encrypt
- Encrypted private key storage — protect key files with AES-256-GCM passphrase
- Shell completions for bash, zsh, fish, powershell
- Audit logging — all operations logged with timestamps
- Configuration file (
encryptor.toml) for Argon2, compression, limits, audit - Format version 2 with compression flag (v1 files still decryptable)
- Criterion benchmarks for Argon2id + AES-GCM throughput
- Release workflow — automatic binary builds for Linux/Windows/macOS on tag push
- Interactive password prompts with confirmation
- Progress spinners for all operations
Bug Fixes (from v0.1.0)
- Fixed device fingerprint: was random UUID (broken), now deterministic SHA-256
- Fixed header size calculation: was
file_size + 1000(broke all signed decrypt) - Fixed key derivation collision with length-prefixed concatenation
- Wired unused RateLimiter into CLI decrypt path
- Added password validation in CLI encrypt path
- Set restrictive file permissions (0600) on private keys
- Removed unnecessary async/tokio dependency
- Deduplicated key derivation code
Documentation
- Complete rewrite of all documentation for v0.3.0
- Updated ARCHITECTURE.md, SECURITY.md, and all guides in
/documentation
Breaking Changes
- Files encrypted with v0.3.0 use format v2 (v1 files still decryptable)
- CLI is now synchronous (tokio removed)
Installation
git clone https://github.com/RasyaAndrean/Universal-Encryption-System.git
cd Universal-Encryption-System
cargo build --releaseBinary releases for Linux/Windows/macOS will be attached once the release workflow completes.