A technical breakdown of each feature: what it does, how it's implemented, and why the design decisions were made that way.
Each file uses a freshly generated 256-bit symmetric key, encapsulated under ML-KEM-768 using your vault's public key. The file itself is encrypted with AES-256-GCM using a key derived via HKDF-SHA-256 from the ML-KEM shared secret and a per-file salt. Decryption requires your ML-KEM secret key and the correct Argon2id-derived vault key.
The entire QSAFE container — ciphertext, encapsulated key material, and all policy fields — is signed using ML-DSA-65 after encryption. The signature is verified before any decryption attempt. Any modification, including to policy metadata, produces a verification failure. This ordering prevents chosen-ciphertext attacks and ensures policy fields cannot be tampered with.
When encrypting a file, you can optionally attach a policy: "This file cannot be opened until [date]." The unlock date is embedded inside the signed QSAFE container. Because the signature covers the policy fields, the time-lock cannot be removed or modified — doing so would break the signature and prevent decryption.
Every action taken in your vault is recorded: file encrypted, file decrypted, policy denied, signature failed, vault exported. Each log entry includes a timestamp, the action, the file name, and the result. The audit log is stored alongside your vault in IndexedDB.
Your vault lives in your browser — but you can export it at any time as a single encrypted backup file. The export includes all your encrypted files, policies, and audit logs — but not your secret keys in raw form (they remain encrypted with your password). Import the file in any browser to restore your vault.
| Feature | QSafe Vault | ZIP Password | VeraCrypt | Standard Cloud |
|---|---|---|---|---|
| Quantum-safe encryption | ✓ ML-KEM-768 | ✗ | ✗ | ✗ |
| Runs entirely in browser | ✓ | ✗ | ✗ | ✗ |
| No installation needed | ✓ | ~ | ✗ | ✓ |
| Zero file uploads | ✓ | ✓ | ✓ | ✗ |
| Digital signatures (tamper proof) | ✓ ML-DSA-65 | ✗ | ✗ | ~ |
| Time-lock policies | ✓ | ✗ | ✗ | ✗ |
| Audit log | ✓ | ✗ | ✗ | ~ |
| Brute-force resistant KDF | ✓ Argon2id | ✗ | ✓ PBKDF2 | ~ |
| No account required | ✓ | ✓ | ✓ | ✗ |
Open your vault and encrypt your first file in under 30 seconds.