Zero-knowledge, by construction

Lockday is end-to-end encrypted. Your content is encrypted on your device before it is sent anywhere, so the people who run the server, including us, cannot read it. Here is exactly how that works, in plain terms.

What the server can & cannot see

The server's job is to sync encrypted data between your devices. It needs a little metadata to do that, and nothing more.

Visible to the server
  • Random IDs Identifiers that are random, never derived from your content
  • Sync metadata Create and update timestamps, and whether an item is deleted or waiting to upload
  • Links between items Which task belongs to which project, and which account owns it
  • Shared project members For a project you share, which accounts can open it and their role
Encrypted, never visible
  • Titles & notes Everything you write
  • Dates, times & durations Your schedule, deadlines, and time blocks
  • Priority, reminders & completion How urgent it is, when to remind you, and what is done
  • Labels & assignees Your tags and who is on a task
  • Attachments The files you add, including their names and sizes
  • Project, section & label names How you organize
  • Recurring schedules How often something repeats
  • Habit history & streaks Every completion you log, and the streaks built from it
  • Your app settings Defaults, filters, and layout choices, down to which projects you hide

When you share a project, the server sees which accounts are members and their role. It never sees the project's contents, and each member is handed the key to that one project alone, wrapped to their own keypair.

We store only the current version of each item, never a history of your edits the way many apps do. Because every change is encrypted before it syncs, the server can tell that something changed, but never what.

How your data is locked

Lockday uses envelope encryption. Each item gets its own key; those keys are sealed to your personal keypair; and that keypair is wrapped with a key derived from your secret.

  1. Your content is encrypted with a unique per-item key (a DEK).
  2. Each item key is sealed to your personal public key, so only your private key can open it.
  3. Your private key is the single root secret. It is wrapped with a key derived from your password or recovery secret using Argon2id, and never leaves your device in usable form.

Because the root key never changes, you can rotate your password or add a new unlock method without re-encrypting your data.

The cryptography

Content encryption AES-256-GCM

Envelope encryption: every task, note, and name is sealed with its own unique data key.

Key derivation Argon2id

Memory-hard (m=64 MiB, t=3), so guessing your password stays slow and expensive even on GPUs and ASICs. Runs only on your device.

Key wrapping X25519 + ML-KEM-768

A post-quantum hybrid (ML-KEM-768, NIST FIPS 203, combined with X25519). Each item key stays sealed as long as either algorithm holds, so your data survives a future quantum computer.

Password storage (server) BCrypt

Over a hash that was already computed on your device.

Transport TLS + signed JWT

Encrypted in flight, with signed access tokens.

Unlocking the app

No lock

Opens instantly. The key is protected by a random device key.

PIN

6–12 digits. Entered to unlock, never stored unencrypted.

Biometric

Face or fingerprint via your OS, backed by the same PIN.

After a few wrong attempts, unlocking is rate-limited with an increasing cooldown that survives restarts. On phones the wrapped key is additionally protected by the hardware keystore (TEE / Secure Enclave).

Plausible deniability

Sometimes the threat is not a remote attacker but someone standing over you who can force you to unlock the phone. Lockday lets you hand it over without handing over your real data.

  • Decoy PIN. Set a second PIN that opens an ordinary-looking workspace holding only the projects you choose to expose. To anyone inspecting the device it looks like a normal, lightly used task app.
  • Hidden real data. Your real tasks stay encrypted under a separate key and are simply invisible in decoy mode. There is no locked-vault prompt to reveal that anything is being kept back.
  • Optional panic PIN. A third PIN opens the decoy workspace and first wipes the real data from the device, so it cannot be recovered even under forensic inspection.

Plausible deniability is free, syncs across your devices, and is available once you set a PIN or biometric unlock.

Recovery

End-to-end encryption has a hard rule: account recovery is not data recovery. If you forget your secret and have no backup, no one, including us, can decrypt your data. That is the point.

So Lockday walks every new user through recording a recovery phrase and saving a key backup during onboarding, and lets you verify that secret any time from Settings. The backup carries your key wrapped with a portable secret you control, so you can restore on a new device.