Your passwords. Untouchable. Mathematical privacy.
Not policy.
Touch ID unlocks your vault. Nothing else needed. Your stuff stays on your device. We never see it. Not even with a court order. Not even in 2032. Touch ID unlocks your vault. Local-only. We never see it. OPAQUE authentication. ML-KEM-1024 hybrid envelopes. WebAuthn PRF unlock. Verifiable transparency log. The cryptography your incumbents have not shipped. OPAQUE · ML-KEM-1024 · WebAuthn PRF. Cryptography incumbents skipped.
The threat model changed.
The architecture didn't.
Every mainstream password manager you know was designed in the 2017 threat model. None of them ship the cryptography that 2026 actually requires. The numbers are not subtle. The 2017 threat model. None ship the cryptography 2026 requires.
VuVault is the architecture they have not shipped. Built from primitives standardized in the last 18 months — OPAQUE, ML-KEM, WebAuthn PRF, FROST, AKD.
Three things, no asterisks. Three sentences, all defensible.
ML-KEM-1024 + X25519 hybrid KEM with AES-256-GCM. Resistant to harvest-now-decrypt-later by
construction. Sub-millisecond cryptographic overhead — matches X25519
performance, no perceptible cost. ML-KEM-1024 + X25519 hybrid + AES-256-GCM.
Sub-ms overhead.HKDF(WebAuthn-PRF(passkey, salt) ‖ SecretKey).
The Secret Key is 256 bits of true random, generated client-side, never
transmitted. Even with a complete server compromise + Argon2id break,
attackers face 256 unbreakable bits. Vault key = HKDF(PRF ‖ SecretKey). 256 bits, never
transmitted.Your credentials,
masked by default. No screenshots. No DOM secrets.
ItemKind variants share the
same hybrid envelope. Field-level masking is enforced before
render — secret strings never appear in the DOM until you tap
reveal. Seven ItemKind variants · one envelope · masked-before-render.REVEAL_TTL_MS = 30_000 in VaultDetail.svelte; clipboard auto-clears via setTimeout(60_000) regardless of clipboard-read permission. Every reveal is
audit-logged locally. REVEAL_TTL_MS = 30_000 · unconditional 60s clipboard clear.password-health.ts scores entropy and reuse
in-memory; the server only ever observes (deviceId, sequenceClock, ciphertext). Footer
surfaces ZK state, suite, and build hash — proof, not
policy. In-memory entropy/reuse check · server sees only ciphertext + clock.The most polished vault
you've ever used. No screenshots. Live SVG.
100dvh root, no body scroll.
Every panel sized to fit; only the item list scrolls internally. 100dvh root · no body scroll · only the list
scrolls.Local-only. Audit-feed: vault size · ZK status · suite · build hash.Touch ID, then done. Native-grade UX, web-grade reach.
vault-codec.ts. Encrypted CRDT ops · hybrid envelope. Server holds opaque
blobs.Local-only.Beyond file shares.
Beyond cloud backups. Every byte ciphertext.
No exceptions.
vuvault-doc-aad-v1) bound to the
document UUID, device salt, and credential id. Encrypted bytes
persist to a separate Dexie table; sync uploads opaque ciphertext to vaults/<accountId>/documents/<blobId>.bin in
R2. Bucketed padding ships with Tier 2 CRDT sync. Per-doc AES-GCM · document-scoped AAD · opaque ciphertext server-side.src/routes/api/documents/[blobId]/+server.ts and refuse anything but base64-encoded sealed bytes.docs/ARCHITECTURE.md).Four steps. Nothing else needed. Ten layers. Each defensible.
We did the homework.
Here's the receipt.
| VuVault | 1Password | Bitwarden | Proton Pass | Apple Passwords | |
|---|---|---|---|---|---|
| Server cannot see master passwordOPAQUE / aPAKE — Tier 2 deployment | Tier 2 | ||||
| Post-quantum vault encryptionML-KEM-1024 hybrid (FIPS 203, KAT-locked) | |||||
| Master-password-free unlockWebAuthn PRF | |||||
| Verifiable transparency logCONIKS-style key log — Tier 2 | Tier 2 | ||||
| Private breach checkPIR — server learns zero — Tier 2 | Tier 2 | ||||
| Threshold-recovery without serverFROST t-of-n — Tier 3 | Tier 3 | ||||
| Reproducible builds + transparencySHA-384 manifest now · Rekor publish Tier 2 | |||||
| Self-hosting / BYO storagePoint at your own R2 / S3 — Tier 2 | Tier 2 | ||||
| Open sourceApache 2.0, fully forkable | |||||
| Lifetime priceOne time, no subscription | $25.60/yr | $35.88 | $19.80 | $23.88 | free |
$25.60. A year.
Every device. Every feature.
No per-user pricing. No tier games. Cancel any time.
Don't take our word.
Take our hashes.
Three independent ways to verify what's running on your device matches what we say is running. No incumbent ships any of these.
91496082 c987d33d 22899931
23af8bcd 610ca812 1d989535
24ce6388 9f00d3f2 b8132d5a
f7dab78b 330b3838 b355e668
✓ matches release v0.1.13
signed by vu-release-key
✓ verified · 2026-04-28
✓ uploaded vuvault-sync
✓ R2 bucket: vault-blobs
Your data. Your device.
Your control. Untouchable by construction.
Verifiable by
anyone.
Get the password manager that 2030 actually needs. Today, for $25.60/year. The password manager 2030 needs. $25.60/year. Read the whitepaper, audit the source, deploy the server. Or just use it — $25.60/year. Read it, audit it, deploy it. Or use it — $25.60/year.