Even we can’t open your vault.
Everything is encrypted on your device with a key we never receive. What reaches our servers is the noise beside this — all we hold, all we could leak, and all anyone could ever demand from us.
New vaults are closed while passio is in private beta.
On your device
On our servers
Netflix
ada@fastmail.com
7Qv!nK2rLm94xZ
Santander
Visa, ending 4417
4929 8831 0042 4417
Ledger
Recovery phrase
ribbon fossil update panel
The part nobody enjoys
You already know how this ends.
A site you signed up for in 2019 gets breached. Your password turns up in a list that gets passed around. It is the same password you used for your email, because remembering forty different ones was never realistic. Then it is your email — and your email is the key to everything else.
Reusing passwords is not carelessness. It is what happens when a person is asked to do a computer’s job.
What happens when you save a password.
- 01
You type your master password
It never leaves the device. Argon2id turns it into a key right here, spending 64 MiB of memory per attempt — which is what makes guessing it expensive for anyone who tries.
- 02
Your vault is locked before it leaves
Every item is sealed with AES-GCM and bound to its own identity, so nothing can be swapped between items or quietly rolled back to an older version without the seal breaking.
- 03
We store what's left
Ciphertext. We cannot read it, reset it, or recover it for you. That is the trade: nobody can be persuaded, subpoenaed or breached into opening your vault, and that includes us.
Try the generator. It’s the real one.
The same function the vault and the browser extension call, running here in your browser. Nothing you generate is sent anywhere, because there is no endpoint to send it to.
····················
What’s actually in it.
- 18kinds of thing
- Logins, cards, passports, SSH keys, recovery phrases — each with its own fields rather than a notes box.
- 7managers it imports
- Bitwarden, LastPass, 1Password, KeePass, Chrome, Firefox and its own export. It names anything it could not carry.
- 64MiB per unlock
- What one attempt at your master password costs in memory — yours once, an attacker's every single time.
- 1outbound request
- The breach check, off by default. It sends five characters of a hash, never a password, and never your vault.