Privacy
Wachtwoordje is built to know as little as possible. This is exactly what happens.
Passwords
Passwords are created in your own browser, using your device’s secure random generator (Web Crypto). They are never sent, stored or logged (unless you share one yourself with Share a secret, see below). The same goes for your Wi-Fi network name and for your own Wi-Fi password if you enter it for the QR code. The strength you see belongs to the generated password and is calculated on your device.
Has your password leaked?
Only when you press Check or Enter does your device create a SHA-1 hash of the password, and we send only its first 5 characters to Have I Been Pwned. You receive a list of hundreds of possible hashes (padded with fake entries), and the comparison happens on your device again. Your password, or its full hash, never leaves your device. Have I Been Pwned does see your IP address, like any website you visit.
Share a secret
With Share a secret you send a secret, such as a starter password, through a link that works once. Your browser encrypts the secret (AES-256-GCM) before it is sent. The key is only in the part of the link after the hash sign (#), and browsers never send that part to a server. We only store the encrypted text, a random code and the expiry time. So we cannot read the secret, and cannot recover it either.
As soon as someone opens the link and clicks "Show secret", the secret is deleted from the server. Not opened? Then it disappears after the chosen period (at most 7 days). To prevent abuse we keep hourly counters with a code derived from your IP address that cannot be reversed. Our hosting provider's server logs contain your IP address and the time as usual, but never the secret or the key. The encrypted files are not included in backups.
Overview
| What | Why | Who receives it | How long |
|---|---|---|---|
| First 5 characters of a hash (breach check) | Because you ask for it (legitimate interest, Art. 6(1)(f)) | Have I Been Pwned (via Cloudflare) | We keep nothing |
| Amount, name and account for a coffee | To process your gift (performance of a contract, Art. 6(1)(b) GDPR) and Dutch tax retention (legal obligation, Art. 6(1)(c)) | Mollie and your bank | 7 years (Dutch tax law) |
Cookies koffie and koffie_lang | To show your payment status (performance of a contract; strictly necessary cookie, no consent needed) | No one | One hour at most |
| Counter for coffee payments, using a non-reversible code derived from your IP address | Preventing one visitor from blocking the coffee button for everyone (legitimate interest, Art. 6(1)(f)) | No one | One 10-minute window; then deleted at the next payment request |
| Anonymous counts: how often a feature is used (for example Copy or QR download), totalled per hour, with device type (mobile, tablet or desktop) and language | Understanding what is useful and improving the app (legitimate interest, Art. 6(1)(f)). No cookie, nothing on your device, no IP address, and it cannot be traced back to you. With Global Privacy Control or Do Not Track your browser is not counted. | No one | Only the totals, for as long as they are useful |
| Encrypted secret with expiry time (Share a secret) | Because you share a secret (legitimate interest, Art. 6(1)(f)); we cannot read it | Nobody; only someone with the full link can decrypt it | Until it is opened, at most 7 days |
| Counter for Share a secret, with a code derived from your IP address that cannot be reversed | Preventing abuse and overload (legitimate interest, Art. 6(1)(f)) | Nobody | One hour; then deleted |
| Server logs: IP address, time, requested page | Security, troubleshooting and general visitor statistics (counts per page) (legitimate interest, Art. 6(1)(f)) | Our hosting provider Vservs (the Netherlands) | 30 days at most |
| Appearance and language (site), settings (extension) | Remembering your choice | Stays on your device | Until you clear it |
We use no trackers, no ads and no third-party analytics: only the anonymous counts above, on our own server. The site also works offline; for that your browser keeps the site’s files, not personal data.
Your rights
You may access your data and have it corrected or deleted, restrict or object to processing, and have your data transferred, where the law allows. Email us; we respond within a month. If you disagree with us, you can file a complaint with the Dutch Data Protection Authority (Autoriteit Persoonsgegevens).
Contact
Wachtwoordje is the responsibility of Vienix, Hollandiastraat 49, 1335 VH Almere, the Netherlands, Chamber of Commerce 42034979, hello@vienix.dev. See also the terms.
Updated on 4 November 2026.