Hide in plain sight.
Steganography + multi-layer encryption desktop & mobile app.
Features • Installation • How It Works • Security • Build • License
Русский • Беларуская • 中文 • 日本語
GuardCrypt lets you hide encrypted messages and files inside ordinary-looking files — images, audio, PDFs, archives. The container files look and work normally, but carry your secret inside. Only the person with the right password can reveal it.
100% offline. Your data never leaves your device.
- Steganography — hide data inside PNG (LSB), JPEG, GIF, TIFF, BMP, WAV, MP3, MP4, AVI, PDF, ZIP
- Multi-layer encryption — up to 3 layers: AES-256-GCM → ChaCha20-Poly1305 → XSalsa20-Poly1305
- QR Vault — generate and scan encrypted QR codes
- Standalone Cipher — encrypt/decrypt files and text without steganography
- Cross-platform — Windows (Electron) + Android (Capacitor)
- No telemetry — zero analytics, zero tracking, zero network calls
| Level | Algorithms | KDF | Noise |
|---|---|---|---|
| Standard | AES-256-GCM | PBKDF2-SHA512 (600k iter) | — |
| Hardened | AES-256-GCM + ChaCha20-Poly1305 | Argon2id (64 MB, 3 iter) | 16–256 KB |
| Paranoid | AES-256-GCM + ChaCha20 + XSalsa20 | Argon2id (256 MB, 6 iter) | 256 KB–2 MB × 3–7 blocks |
Go to Releases and download:
- Windows —
GuardCrypt-win-x64.zip(unpack and runelectron.exe) - Android —
GuardCrypt.apk
# Clone
git clone https://github.com/SergeyLubivui-dev/GuardCrypt.git
cd GuardCrypt
# Install dependencies
npm install
# Development
npm run dev
# Production build
npm run build
# Package (Electron)
npm run packageRequirements: Node.js 18+, npm 9+
- Choose a container — pick any regular file (photo, audio, document)
- Add your secret — type a message or select a file to hide
- Set a password — create a strong password to protect your data
- Done — the file looks exactly the same but carries a hidden payload
- Open the sealed file in GuardCrypt
- Enter the password
- Get your original data back
- All encryption runs locally — nothing is sent over the network
- Military-grade encryption: AES-256-GCM, ChaCha20-Poly1305, XSalsa20-Poly1305
- Key derivation: PBKDF2-SHA512 or Argon2id (memory-hard)
- Noise padding defeats statistical analysis
- Passwords are never stored — derived keys are held in memory only during operations
- Clipboard auto-clears after 30 seconds
- Ed25519 digital signature verifies build integrity at startup
- Electron security: sandbox enabled, context isolation, strict CSP
| Layer | Technology |
|---|---|
| Desktop | Electron 33 |
| Mobile | Capacitor 6 |
| UI | React 18 + Tailwind CSS + Framer Motion |
| Crypto | TweetNaCl.js, Argon2 (native), Web Crypto API |
| Build | Webpack 5, TypeScript 5, electron-builder |
src/
├── crypto/ # Encryption, KDF, envelope format, workers
├── main/ # Electron main process, IPC, preload
├── qr/ # QR code generation and scanning
├── renderer/ # React UI, components, hooks, i18n
├── security/ # Build integrity verification (Ed25519)
├── stego/ # Steganography engines (PNG LSB, JPEG, generic)
└── types/ # Shared TypeScript interfaces
This project is provided as-is for personal and educational use.
Made with privacy in mind.