Threat model

What the encryption is for.

Updated 20 July 2026

A security claim without a threat model is marketing. This page says exactly what Skerry protects you from, what it cannot protect you from, and how the cryptography works, so you can check our claims instead of trusting them.

What Skerry protects against

What Skerry cannot protect against

How the cryptography works

A random 256-bit master key encrypts your notes with AES-256-GCM. That master key is itself wrapped by a key derived from your passphrase with Argon2id (RFC 9106: 64 MiB, 3 passes, 4 lanes), and stored in a keyfile beside your notes. A recovery code is a second, independent wrapping of the same master key. Changing the passphrase re-wraps one key instead of re-encrypting your library. Attachments in encrypted notes are sealed under the same master key. Backups and sync objects are sealed before upload; the sync file listing itself travels inside a sealed, authenticated manifest.

The search index never stores encrypted note content. While the vault is unlocked, encrypted notes are searched through an index that lives only in memory and vanishes on lock. The passphrase is held in a zeroizing buffer and wiped when the vault locks. Server credentials for backup and sync, the URL included, live only in the device Keychain, never in settings files, and you can skip giving Skerry a login entirely by mounting the server in Files or Finder and syncing through the folder.

Check it yourself

The note format and the entire cryptographic core are open source, with the format documented in plain language and the Argon2id implementation gated on the RFC's own test vectors. Read the code, run the tests, or write your own client: github.com/kordloom/skerry-format.

Found a weakness? Tell us at hello@skerrynotes.com. We will credit you and fix it.