Security

Encrypted on your device. We can’t read it.

MyLifePapers is local-first. Your records are sealed with a key only you hold, before anything ever syncs. No account, no email, and no way for us to open your vault.

  • Local-first
  • End-to-end encrypted
  • No account or email
  • Open about the limits

What we protect, and how

Four promises, and how the app keeps them.

Sealed on your device

Your passphrase derives a key that encrypts your whole database and your files before anything syncs. The key is built on your device and never leaves it.

We never hold your key

Your passphrase, and the keys derived from it, live in memory only while you are unlocked, and are wiped when you lock. We store ciphertext we cannot open.

You choose where it syncs

Sync through your own cloud (Google Drive, Dropbox, OneDrive, or a local folder) or our encrypted backup. Either way, your records are sealed before they leave your device.

No account, no tracking

No sign-up and no email to try it. No analytics SDKs, no telemetry, no tracking of any kind.

How the lock works

One chain, from your passphrase to your records. It runs entirely on your device.

  1. 1

    Your passphrase

    Stretched with Argon2id (64 MiB of memory, 3 passes) into a key that only your device ever computes.

  2. 2

    Unlocks your data key

    That key unwraps your household data key, a random 256-bit key generated on your device that never leaves it.

  3. 3

    Encrypts everything

    The data key encrypts your local database and every record file before it syncs. Reading your records requires a device that has your passphrase.

To read your records, a device has to have your passphrase. We can’t, and neither can your sync provider.

You do not have to take our word for it

Open your sync folder, on your Desktop or in Google Drive, Dropbox, or OneDrive. Your records live in files that end in .enc, and they hold nothing but sealed bytes. Open one and there is nothing to read.

That is the point. If your cloud account were ever breached, your records stay sealed. The key that opens them was never there to steal.

What we’re honest about

Strong encryption comes with real trade-offs. Here are ours, stated plainly.

Lose both keys, lose the data

If you forget your passphrase and lose your recovery code, your records are gone. There is no backdoor and no master key. We would help if we could; mathematically, we cannot.

An unlocked device is an open vault

Encryption protects data at rest. A device that is unlocked and in the wrong hands can read what is on it. Use a device lock and biometrics.

A sync folder is not invisible

Whoever holds the folder can see that sealed files exist, how large they are, and when they changed. The contents stay encrypted.

The specifics

For the technically curious. Every line matches the shipping code.

Passphrase key derivation
Argon2id. 64 MiB of memory, 3 iterations, 1 lane, 32-byte key, 16-byte random salt.
Vault encryption
XSalsa20-Poly1305 (libsodium secretbox). 256-bit key, 24-byte nonce, authenticated.
Local database
SQLCipher whole-file encryption. Page key derived via HKDF-SHA256 from your data key.
Household data key
256-bit, generated on your device. Held in memory only while unlocked, zeroed on lock.
Adding a member
Your data key is wrapped with a one-time key carried inside the invite, then re-sealed under the new device’s own passphrase. Neither passphrase is ever shared.
Recovery
Your passphrase, plus a one-time recovery code that unlocks a second, equal copy of the key. No master key exists.
Share links (Trusted Access, Send)
PBKDF2-SHA256, 100,000 iterations, then AES-256-GCM. The access code lives in the link and never reaches our servers.
Unlock
Face ID, Touch ID, or Android biometrics, with passphrase re-entry every 14 days. Desktop locks after 15 minutes idle and on sleep or screen lock.
Randomness
The operating system CSPRNG (libsodium randombytes / WebCrypto). Never Math.random for anything that protects data.
Failed unlocks
Rate-limited with backoff before any key derivation runs.
Telemetry
None. No analytics SDKs, no crash-reporting SDKs, no tracking.

Records that only you can open.

Buy once for your whole household. No account, no email to try it.