Zero-knowledge · self-hosted · open

Your secrets, encrypted before they ever leave your device.

iVault is a self-hosted vault for passwords, cards, identity documents, notes, files and 2FA codes. Everything is encrypted in your browser with keys derived from a master password that never reaches the server.

Argon2id AES-256-GCM RSA key-wrapping Ciphertext-only server

Everything in one encrypted place

One vault for every kind of secret — on the web, your phone and your browser.

Passwords

Unlimited logins with a strong generator, favorites, and instant client-side search — grouped by website for quick access.

Cards & bank accounts

Credit cards, bank details, IBAN/SWIFT — every field encrypted before it leaves your device.

Identity & product keys

Passports, licences, national IDs, and software licence keys, all in one encrypted place.

Authenticator (2FA)

Built-in TOTP: scan a QR, import from Google Authenticator, and read live codes on web, mobile and the extension.

Secure notes & files

Free-form encrypted notes, plus images, PDFs and documents attached to any record.

Vault sharing

Share a vault with public-key key-wrapping. Roles, member management and revocation — the server never sees a key.

Sync everywhere

End-to-end-encrypted delta sync keeps web, the Flutter app and the browser extension in step — even offline.

One-click import

Move in from Bitwarden, LastPass, Chrome, Edge or 1Password — parsed and encrypted entirely in your browser.

Encrypted backup

Export a portable, encrypted backup you can restore to your own account at any time.

Strong 2FA

Protect sign-in with an authenticator app, an emailed PIN, or a passkey — your choice.

Browser extension

Autofill logins and cards, save new logins with a prompt, and read your 2FA codes without leaving the page.

Audit log

An append-only trail of every action — and admins get a user directory with per-user activity.

How zero-knowledge works

The server stores only ciphertext. Here's the chain that protects it.

1

Derive

Your master password runs through Argon2id in the browser to produce a master key. The password itself is never sent.

2

Split

HKDF splits that into an encryption key and an authentication key. Only the authentication key touches the server.

3

Encrypt

Every record is sealed with AES-256-GCM under a per-vault key, which is wrapped for each member with RSA-OAEP.

4

Store

The server keeps only opaque blobs. Even with full database access, no one can read your vault without your master password.

Wherever you work

Web app
Flutter app
Browser extension
Bearer-token API

Own your data. Run your own vault.

Free, self-hosted, and built so that trust is never required — only math.

Get started free