"The only secure file is one that doesn't appear to exist."
Getting Started β’ Documentation β’ Architecture β’ Contributing
dirLocker is a state-of-the-art cryptographic vault engineered for plausible deniability and absolute content secrecy. By fusing a high-performance Rust cryptographic core with a flexible Go application layer and a Flutter mobile client, dirLocker delivers military-grade security that integrates seamlessly into your native workflow.
| Feature | Description |
|---|---|
| π‘οΈ Ironclad Security | Powered by Rust, utilizing XChaCha20-Poly1305 & AES-256-GCM for high-speed, authenticated encryption. |
| π» Plausible Deniability | Create Hidden Volumes inside your vault. Reveal a decoy password under coercion, keeping your true data mathematically invisible. |
| β‘ Zero-Lag Mounting | Mount vaults directly as drives using FUSE (Linux/macOS) and Dokany/WinFSP (Windows). Edit files in-place with native performance. |
| π± Mobile Ready | Full-featured Android/iOS client built with Flutter. Manage your encrypted vaults on the go. |
| π Stealth Mode | Features OS-level file obfuscation and anti-forensic techniques to prevent analysis. |
| π Biometric Unlock | Unlock your vault instantly using Windows Hello, TouchID, or Linux Secret Service. |
dirLocker bridges the gap between high-level usability and low-level security through a hybrid architecture:
graph TD
User([π€ User]) -->|Interacts| GUI[π₯οΈ Desktop GUI]
User -->|Commands| CLI[β¨οΈ CLI Tool]
User -->|Taps| Mobile[π± Flutter Mobile]
subgraph "Application Layer"
GUI --> Controller
CLI --> Controller
Mobile --> FFI_Mobile[π Mobile Bridge]
end
subgraph "Rust Vault Core"
Controller <-->|CGO| Core[π¦ Core Logic]
FFI_Mobile <-->|FFI| Core
Core --> Crypto[π RustCrypto / ChaCha20]
Core --> IO[πΎ Disk I/O]
end
subgraph "OS Integration"
Controller -->|Mount| FUSE[π FUSE / Dokany]
end
Download the latest pre-built binary for your OS from the Releases Page.
Prerequisites: Go 1.24+ β’ Rust 1.70+ β’ Flutter 3.13+
π₯οΈ Desktop (Windows/Linux/macOS)
# Build the CLI and Desktop GUI
make buildπ± Mobile (Android)
# Build the Mobile APK
cd clients/mobile
flutter pub get
flutter build apk --release1. Initialize a Vault:
./bin/dirlocker-cli init --path ./my-secret-vault --size 1GB2. Mount it:
./bin/dirlocker-cli mount --path ./my-secret-vault --mountpoint ./mnt3. Done! Any files copied to ./mnt are now encrypted on the fly.
We believe functionality without documentation is a vulnerability. Explore our comprehensive guides:
- User Manual: Master the CLI and GUI.
- Mobile Guide: Setup and usage for Android/iOS.
- Security Model: Threat model, encryption standards, and key derivation.
- Architecture: Deep dive into the Rust/Go/Flutter bridge.
We welcome security auditors and privacy advocates.
- Check docs/development.md for setup.
- Review our Feature Specifications.
- Submit a PR.
License β’ Report Bug
Made with β€οΈ and β by kiro & anti-gravity