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

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.