Security
Juratify is built so that the evidence it stores is tamper-evident, private by construction, and verifiable by anyone without trusting us. This page describes the architecture in plain language for security and procurement review.
Zero-knowledge, client-side encryption
For client-sealed events, payloads are encrypted in your own environment with XChaCha20-Poly1305 under a data key that you hold and that is never transmitted to us. We store ciphertext only and cannot read client-sealed payloads. This is a structural property, not a policy promise: we cannot decrypt what we do not hold the key for. If you lose your data key we cannot recover it, though the integrity metadata remains verifiable.
Server-sealed events, ingested through the OTLP door, are processed transiently at ingestion and encrypted at rest with a per-workspace key derived on our side. You choose which mode each integration uses.
Tamper-evident records
Every event is hash-chained to the one before it, so editing, deleting, or reordering any record breaks the chain. On ingest the vault signs a receipt over each record, proving it existed at that time under a published key. On a schedule, the vault signs Merkle checkpoints over all records in a period, anchoring the whole chain against later tampering. If anything is altered, verification fails and points to the exact event where the chain broke.
Append-only storage and hosting
Customer data is hosted in the European Union (Frankfurt, Germany). Events and receipts are append-only: database triggers reject updates and deletes for every role, so records cannot be edited or removed through the Service. Access is isolated per workspace with row-level security, so members only ever see their own workspaces.
Open, independent verification
You do not have to take our word for any of this. The evidence format is a frozen, documented specification, and the verifier is open source, so anyone can re-verify a downloaded bundle offline with no Juratify account and no network access:
npx @getjuratify/verify <bundle>.json --data-key <key>
The public keys that receipts and checkpoints are signed with are published at /.well-known/juratify-keys.json, so an auditor can record them out of band and confirm a bundle really came from this vault. See the evidence format specification and the open-source repository for the full details.
Compliance posture
Juratify is designed to support EU AI Act Article 12 and Article 26 record-keeping. It is a tool, not legal advice, and it does not by itself guarantee or ensure compliance with any law.
Security questions and due-diligence requests can go to support@juratify.com. See also our privacy policy and terms.