pantry

Security

How pantry protects your data

Your devices encrypt your logins, notes and clips before they sync. pantryd stores and passes on ciphertext it cannot read.

Keys

Master key

Derived from your master password with Argon2id (256 MiB, 3 passes, 4 lanes; about a second on a laptop). It only seals the keyring.

Vault keys

32 random bytes each, kept in the keyring. Replace them after a leak, and your other devices follow.

Encryption

XChaCha20-Poly1305 with a random 24-byte nonce, for everything.

Devices

Each has its own key, which its server allows. An invite code pins the server's key, so a device trusts the right server from the start.

Passkeys

P-256 keys in your vault. Only signatures ever leave pantry pass.

What protects what

If…then
someone gets the server's disk or a backupCoveredThey get ciphertext, and the vault key wrapped by your password, which Argon2id makes slow to guess.
someone gets a device's disk while pantry is closedCoveredThe same.
the server itself is maliciousCoveredIt can neither read nor change your data. It can withhold items or serve old ones, and it sees counts, sizes, times and device names.
a device is stolenCoveredRevoke it, then replace the vault key and password. It cannot read anything written after that.
your master password leaksCoveredChange it and replace the vault key. Old copies then only open old data.
malware runs as you while the vault is unlockedNot coveredNo password manager can protect you from that.

Shared data

Shared logins and shared notes are for everyone with an account on that server. Their keys exist on the server only locked to each account, so shared data is as safe as the weakest master password on the server. Your own logins, notes and clips are never shared.

Report a problem

Found a security issue? Please write to security@pschulz.at before telling anyone else.