Per-item keys wrapped in AWS KMS, requests signed by the device that sends them, number matching on your phone, and a record of every reveal written before the value is shown.
Your deviceSigns every request with its own P-256 key.
Your phoneNumber matching before an unlock or a card.
Identity StudioSign-in, step-up and the audit record.
The vaultEach item sealed under its own data key.
AWS KMSWraps every item key; logs every unwrap.
Why it matters
One leaked laptop should not mean every secret.
A breach stays small
Opening one item never opens another, because each has its own key, bound to that item.
A copied app is not your app
Requests are signed by a key that lives with the device, so a stolen cookie or a copied app cannot pretend to be it.
A tired yes is not enough
Number matching means the person at the screen and the person holding the phone have to agree.
How it works
The reveal path, step by step.
What happens between pressing Show and seeing one field.
Your app1Signs the requestECDSA P-256 over method, path, device, time and body hash.
Identity Studio2Checks itWithin 120 seconds, not replayed, from a connected device.
Phone3You match the numberThree numbers; one is on your screen. Lapses after 10 minutes.
Vault4Records the revealThe audit row is written before any value leaves.
AWS KMS5Unwraps one keyOnly this item's key, under its own encryption context.
Your app6Shows one fieldOn that device only. The unlock lasts 5 minutes at most.
The same path in the Mac app and in Chrome. A card asks your phone again every time and shows for 60 seconds.
The exact mechanisms
Twelve mechanisms, with their numbers.
Per-item encryption, wrapped in AWS KMS
Every item gets a fresh data key from AWS KMS, wrapped under the vault's own dedicated KMS key with an encryption context naming the owner, the vault and the item. A sealed payload copied to another item will not open. Every unwrap is logged in AWS CloudTrail.
The Chrome extension and the desktop app sign each request with their own P-256 key. The vault refuses a request more than 120 seconds old or one it has already seen. On a Mac the key lives in the Secure Enclave; in Chrome it is a key the extension cannot export.
ECDSA P-256 / SHA-256±120 sreplay refused
Number matching and “It wasn't me”
Your phone shows three numbers and your screen shows one. A wrong number refuses the request. “It wasn't me” refuses it and records it. Vaarta Authenticator asks for your biometric on every approval.
3 numbersrequest lapses after 10 min
Reveal and fill rules
Unlocking on a computer or in Chrome opens a session of five minutes at most. A reveal returns one field per request. In the web console a reveal needs a step-up no older than five minutes. Every reveal is recorded before the value is returned.
unlock ≤ 5 minone field per requestcredential.item.revealed
Cards, 60 seconds at a time
A card asks your phone every time, shows for 60 seconds, and each field can be used once per approval. Cards and identities live only in your personal vault: never shared with an organization, never seen by an agent.
60 sone use per field
One-time codes without the key
Only the current six-digit code ever leaves the vault. The authenticator key that makes it never does.
Device-only items
Mark an item device-only in the Mac app and it is sealed on that computer with AES-256-GCM, its key in the macOS Keychain. No request to our servers ever carries it.
AES-256-GCMmacOS Keychain
Locks when you step away
The Mac app locks on sleep, screen lock, idle, closing the window or quitting. The extension locks on screen lock, idle or closing its popup. Anything you copy is cleared from the clipboard after 30 seconds.
idle: 1, 2 or 5 minclipboard: 30 s
A breach check that keeps your password
Only the first five characters of the password's SHA-1 hash leave, to a k-anonymity range query, with padding so the reply size says nothing. The prefix comes from a stored hash, so no item is opened to check it.
5-char prefixAdd-Padding
Encrypted export
Export your personal vault after a fresh step-up, as one file sealed with a passphrase of at least 12 characters. One-time-code keys and cards come along only if you choose them and confirm.
Argon2id m=64 MiB t=3 p=1AES-256-GCM
Sealed files
Up to ten files on any item, 1 MB each, each under its own data key. A download needs a step-up and is recorded.
10 files1 MB each
Password health
Reused passwords, weak ones found on a known-bad list, and breached ones, in one list with a health ring.
Your choices
Options you control.
Idle lock
Choose 1, 2 or 5 minutes for the Mac app and the extension. Five is the default.
Device-only
Keep any item on one Mac, out of sync, out of our servers.
Ask every time
Set a signing key to ask before every signature (the default), or allow a time-limited grant.
Touch ID
Optionally require Touch ID to open the Mac app's window.
Disconnect anything
Every browser, computer and agent is listed in your vault. Disconnect one, or all.
Leave
Export everything in your personal vault, sealed with your own passphrase, whenever you like.
Security notes
What we state plainly.
Where the keys live
Item keys are wrapped by AWS KMS. Production will not start the vault without AWS KMS and the vault's own key.
A Mac keeps its device key in the Secure Enclave. An unsigned test build uses the login Keychain instead.
The Windows and Linux apps are coming; on Linux the device key will be a software key in the Secret Service, not hardware.
What is recorded
Every reveal, file download, use, signature and export writes an audit row.
Deleted items wait 30 days in the trash, then they are gone.
A data-subject erasure covers the vault and schedules your KMS signing keys for deletion.
In which planAll of this, in every plan.See plans →