DE
ke·posLegal

Security

How we secure Kepos — and how you can report vulnerabilities.

Last updated: 2026-05-09

This English version is provided solely as a translation for convenience. The German version is the authoritative and legally binding version.

Encryption model

  • envelope_v1 — AES-GCM with per-note keys wrapped via vault_keys, which in turn are derived from Argon2id master keys generated from your password.
  • BIP39 recovery phrase — 24 words generated once when the account is created. Without this phrase, recovery is not possible if the password is lost.
  • AAD binding — each ciphertext is bound to (tenantId, noteId, vaultId) via Additional Authenticated Data. Substitution attacks (for example, reassigning a note) fail because of an AEAD tag mismatch.
  • RLS — PostgreSQL Row-Level Security policies are active (migration 0068). Every query runs within the correct tenant scope. Cross-tenant access is prevented by the database itself; isolation does not depend on the application layer.

Responsible disclosure

Found a security vulnerability? Notify us first, then publish. We will respond within 7 days and coordinate a reasonable disclosure timeline.

Email: mail@tiamat-labs.com

Out of scope

  • Social engineering of employees
  • Physical security of hosting locations
  • DoS / DDoS against staging or production
  • Automated scanner reports without reproducible exploits