Zero-Knowledge Encrypted Notes
How zero-knowledge encryption works
When you create a bpad account, your password is used to derive an encryption key using Argon2id and HKDF directly in your browser. This key never leaves your device. Your notes and images are encrypted with AES-256-GCM before being sent to the server. The server stores only the initialization vector (IV) and ciphertext — never the plaintext or the key.
What the server can and cannot see
- Can see: your username, an authentication verifier (PBKDF2-hashed, not the password), and encrypted ciphertext.
- Cannot see: note content, note titles, image content, tags, or any plaintext you write.
Recovery without compromising privacy
At account creation, bpad generates a one-time recovery code. If you forget your password, this code allows your browser to re-derive access to your notes and set a new password. Notes are never decrypted on the server during this process.
Biometric unlock
On devices with biometric support (Face ID, Touch ID), bpad uses WebAuthn PRF to unlock your vault with a fingerprint. The biometric never transmits your password — it unwraps a device-stored key that unlocks the vault locally.