Security design
Encrypted on your PC. Only you hold the key.
KeysWalletWatch is built so that nobody but you can read your vault: not a thief with the file, not the sync relay, and not us. Here is exactly how, and where the protection ends.
Is KeysWalletWatch secure?
Your vault is encrypted on your PC with AES-256-GCM, using a key derived from your master password by Argon2id, a deliberately slow and memory-hard function that makes password guessing expensive. The master password is never stored or transmitted. Sync and sharing are end-to-end encrypted, so the relay server only ever holds ciphertext. The main risks left are the ones no password manager can remove: a weak or leaked master password, and malware on a PC while the vault is unlocked.
Encryption
From master password to sealed vault
Everything below happens on your PC. None of it involves a server.
You type your master password
It's used in memory to derive a key and never written to disk. It's checked with a constant-time comparison, and wrong guesses add a growing delay of up to 60 seconds.
Argon2id stretches it into a key
Argon2id with 64 MiB of memory, 3 passes and 4 lanes, plus a random 32-byte salt stored with the vault. Each guess costs an attacker the same memory and time.
That key unlocks the vault key
The vault itself is encrypted with a random 256-bit key. Your password-derived key only wraps (encrypts) that vault key, which is why changing your password is instant.
AES-256-GCM seals the vault
The whole vault is encrypted with AES-256-GCM, which also detects any tampering, and written to one
.kwwfile with a fresh random nonce on every save. Saves are atomic, so a crash can't leave half a file.
| Purpose | What KeysWalletWatch uses |
|---|---|
| Password to key | Argon2id (v1.3), 64 MiB, 3 iterations, parallelism 4, 32-byte random salt |
| Vault encryption | AES-256-GCM, random 96-bit nonce per save, random 256-bit vault key |
| Recovery key | 200 random bits, derived with HKDF-SHA256, wraps the same vault key |
| Shared projects | A separate AES-256-GCM key per project, delivered with X25519 + HKDF + AES-GCM |
| Breach check | SHA-1 k-anonymity range query (first 5 hex characters only) |
| Memory | Keys and secrets are zeroed when the vault locks or the window closes |
Recovery key
No back door, so keep your spare key safe
There is no "forgot password" link, because nobody has a copy of anything that could open your vault.
When you set up a vault, KeysWalletWatch offers a recovery key: a random code that looks like KWWRK-XXXXX-XXXXX-… (8 groups of 5). It unlocks the vault key independently of your password. Print the recovery sheet and store it with your important papers. After a recovery unlock, the app asks you to choose a new master password.
If you change the recovery key later, the old printed one stops working, and the app reminds you to print the new one.
If you lose both
Without the master password and without the recovery key, the vault cannot be opened: not by you, not by Beckham Enterprises, not by anyone. That is the same property that stops a thief. Keep a backup of the vault file and a printed recovery key in a different place.
Sync and sharing
End-to-end encrypted: the relay carries, it can't read
Your PC encrypts the vault before upload and decrypts it after download. The relay at sync.keyswalletwatch.com stores the ciphertext and a version number, and refuses an upload based on an out-of-date version, which is how conflicts are caught.
Your PC
Unlocks with your master password. Encrypts every save.
Readable only hereSync relay
sync.keyswalletwatch.com keeps the encrypted vault, its version number and 30 days of earlier versions.
Cannot decryptYour other PC
Pulls every 60 s and before unlock, then merges entry by entry.
Readable only herePairing needs approval
A new PC can only join after you approve its 8-character code on a PC that's already in the vault. Codes expire after 5 minutes and allow limited tries.
Sharing needs a fingerprint check
Before you approve someone into a shared project, you compare a short fingerprint with them out of band (read it aloud). This stops a server in the middle from slipping in its own key.
Replays are refused
Shared-project blobs bind the relay's version number into the encryption, and apps refuse a copy older than one they've already seen.
Breach check
Checks leaked passwords without sending yours
The security dashboard can check your passwords against Have I Been Pwned's database of passwords exposed in data breaches, using its k-anonymity range search:
- Your PC computes the SHA-1 hash of a password.
- Only the first 5 hexadecimal characters of that hash are sent to
api.pwnedpasswords.com. - The service replies with every leaked hash starting with those 5 characters, typically hundreds.
- Your PC looks for a match in that list. The answer never leaves your computer.
The check runs only when you press it, and the app reminds you to repeat it every 3 months by default.
Threat model
What it protects against, and what it can't
No password manager protects against everything. Here's an honest account.
Protected
- Someone copies your
.kwwfile, from a stolen laptop, a backup drive or a cloud folder. Without the master password or recovery key it's ciphertext, and Argon2id makes guessing slow. - The sync relay is breached, or run by someone curious. It holds no keys and cannot decrypt vaults.
- A server tries to substitute its own key in a shared project. The fingerprint check exposes it.
- Someone walks up to an unattended PC. Auto-lock closes the vault after a few idle minutes.
- Screen sharing and screenshots. Screen-capture protection blanks the window, and remote sessions lock the vault.
Not protected
- Someone who knows or guesses your master password, or finds your recovery key. Use a long, unique master password and store the key safely.
- Malware running on your PC while the vault is unlocked, such as a keylogger or a program reading memory. Keep Windows and your antivirus up to date.
- A person you removed from a shared project keeps whatever they already saw. The project key rotates, so they get nothing new.
- Metadata on the relay: it can see device names, member names, vault sizes, version numbers and when uploads happen, though not what's inside. The privacy page lists everything it keeps.
- Passwords you copy are briefly on the Windows clipboard, where other programs can read them until it's cleared.
The app itself
Small, signed and quiet
Code-signed installer
Signed by BECKHAM ENTERPRISES, LLC. through Microsoft's Trusted Signing. Check the publisher before you run it, and compare the SHA-256 on the download page.
Rust at the core
Encryption, storage, merging and sync are written in Rust, a memory-safe language. The window is a Tauri app using Microsoft Edge WebView2.
Few network calls
It talks only to the license server, Have I Been Pwned when you run a breach check, and the sync relay if you turn sync on. No telemetry, no ads, no trackers.
FAQ
Security questions
Can Beckham Enterprises see my passwords?
No. Your vault is encrypted on your PC with a key made from your master password, which is never stored or sent anywhere. If you use sync, the relay receives only the already-encrypted vault and a version number. Nobody at Beckham Enterprises holds anything that can decrypt it.
What encryption does KeysWalletWatch use?
AES-256-GCM for the vault, with the key derived from your master password by Argon2id (64 MiB of memory, 3 passes, 4 lanes, a random 32-byte salt). Shared projects use their own AES-256-GCM keys, delivered to each member with X25519 key agreement. See the security page for the full design.
What happens if I forget my master password?
There is no reset, by design: nobody else has a copy. The way back in is the recovery key the setup wizard offers (a 40-character code starting KWWRK-). Print it and keep it somewhere safe. Without the master password or the recovery key, the vault cannot be opened by anyone, including us.
How does the breach check work without sending my passwords?
It uses Have I Been Pwned's k-anonymity range search. KeysWalletWatch hashes the password with SHA-1 on your PC and sends only the first 5 characters of that hash. The service returns every leaked hash that starts with those 5 characters, and the match is made on your PC. Neither the password nor its full hash leaves your computer.
Does KeysWalletWatch collect telemetry?
No. The app has no analytics or telemetry. It only goes online to check passwords against Have I Been Pwned when you ask it to, to talk to the license server, and to sync if you turn sync on.
See it for yourself, free for 30 days
Try every feature free for 30 days. If you keep it, it's $24.99 once for up to 5 PCs.