Desktop application for hidden-volume container encryption with plausible deniability.
QuietBox es una herramienta de escritorio de grado defensivo diseñada para activistas, periodistas, investigadores y personas bajo riesgo de coacción física, legal o fronteriza.
Permite cifrar un archivo o conjunto de carpetas dentro de dos volúmenes independientes en un único contenedor binario (.qbv):
- Volumen Señuelo (Decoy): Contenido inofensivo que se revela al introducir la contraseña señuelo.
- Volumen Oculto (Hidden): Contenido sensible que se revela únicamente con la contraseña oculta.
El archivo contenedor es matemáticamente indistinguible de ruido aleatorio puro (entropía > 7.999 bits/byte). Ningún análisis forense de bajo nivel puede demostrar si existe o no un segundo volumen oculto en su interior.
[ Contenedor de Tamaño Fijo (ej. 500 MB) ]
Offset 0 Offset FINAL
┌────────────────────────────────────────────────────────────────────────────────────┐
│ Cabecera Cifrada Señuelo (512 B) [Salt | Nonce | Longitud | AES-GCM(Header)] │
│ Datos Cifrados Señuelo (ZIP uncompressed + AES-256-GCM) │
│ ... Relleno Aleatorio CSPRNG (OsRng) ... │
│ Cabecera + Datos Cifrados del Volumen OCULTO (Posición no determinista) │
│ Relleno Aleatorio hasta el tamaño total exacto │
└────────────────────────────────────────────────────────────────────────────────────┘
- Sin Bytes Mágicos: No existen cabeceras en texto claro, firmas de archivo ni identificadores de versión expuestos.
- Posicionamiento No Determinista: La posición del volumen oculto se deriva mediante hash keyed determinista (
BLAKE3) a partir de la contraseña oculta y el tamaño del contenedor, ubicándose en la mitad superior del archivo. - Tiempo de Respuesta Constante (Constant-Time Response): Al abrir un contenedor, la aplicación ejecuta siempre las derivaciones de clave para evitar ataques de canal lateral (timing attacks).
- Cero Retención en Memoria: Todas las claves y estructuras sensibles implementan
ZeroizeOnDrop. - Cifrado Autenticado (AES-256-GCM): Cualquier manipulación de bytes se detecta automáticamente sin filtrar metadatos.
- KDF Resistente a GPU/ASIC: Utiliza
Argon2idcon parámetros mínimos seguros (por defecto: 256 MB RAM, 3 iteraciones, 4 hilos).
- Haz clic en NEW ARCHIVE o arrastra los archivos iniciales a la ventana.
- Introduce un nombre para el contenedor.
- Define la PRIMARY PASSWORD (abrirá el volumen señuelo).
- (Opcional) Marca ENABLE ALTERNATIVE (HIDDEN) PASSWORD:
- Define la contraseña oculta (debe ser distinta a la principal).
- Añade los archivos ultra confidenciales que pertenecerán a ese volumen.
- Haz clic en CREATE → y elige la ruta de guardado (
.qbv).
- Abre QuietBox y arrastra tu archivo
.qbvo pulsa OPEN ARCHIVE. - Escribe tu contraseña:
- Si introduces la contraseña señuelo, verás únicamente los archivos señuelo.
- Si introduces la contraseña oculta, accederás a los archivos confidenciales.
- Extrae o añade nuevos archivos en tiempo real.
npm install
npm run tauri devnpm run tauri buildEl binario final se generará en:
src-tauri/target/release/bundle/
QuietBox is a defensive-grade desktop application for activists, investigative journalists, and privacy-conscious users operating in coercive environments.
It encrypts files within two independent volumes inside a single binary container (.qbv):
- Decoy Volume: Harmless decoy content unlocked via the primary password.
- Hidden Volume: Sensitive content unlocked exclusively with the hidden password.
The resulting container is mathematically indistinguishable from pure random noise (entropy > 7.999 bits/byte). No forensic tooling can prove or disprove the existence of a secondary hidden volume.
- AES-256-GCM authenticated payload encryption.
- Argon2id memory-hard key derivation function.
- Zero-knowledge memory management (
ZeroizeOnDrop). - No magic bytes, no plaintext headers, no identifiable signatures.
npm install
npm run tauri dev # Development
npm run tauri build # Standalone release (.exe)Distributed under the MIT License. See LICENSE for details.