Security
A concrete, technical account of Nocturne's zero-knowledge architecture — what protects your data, and what we can and cannot see.
Our security model
Nocturne's privacy guarantees are structural, not promotional. The service is designed so that the server stores data it cannot read. This page documents how that works in concrete terms.
Your vault passphrase derives the key that wraps your Master Key. That passphrase never leaves your browser, and the Master Key is created so that it can never be exported.
Key hierarchy
Encryption specifics
- Key derivation — PBKDF2 with 310,000 iterations and SHA-256, run in a Web Worker so it never blocks or touches the main thread
- Master Key — an AES-GCM 256 key created with extractable: false, so the browser will not let it be exported by us or anyone
- File encryption — AES-GCM 256 with a unique initialization vector per file
- Key wrapping — your Master Key is wrapped with a Key-Encryption Key using AES-KW and unwrapped only in memory
On-device processing
On the Free tier, Whisper (speech-to-text) and BERT (keyword modeling) run locally in your browser via WebAssembly. Lecture audio and transcript text are never uploaded for this processing.
Infrastructure and access controls
- Row-Level Security is enforced on every database table and storage bucket, so a row is only ever reachable by its owner
- Encryption in transit (TLS) and at rest across all infrastructure
- Least-privilege access for our small team, with no path to decrypt user content
- Encrypted blobs are stored as opaque files with no readable metadata about their contents
What we can and cannot see
- That an account exists, and its email
- That an encrypted blob exists, and its size
- Aggregate, non-identifying usage counts
- Your passphrase or Recovery Kit
- Your Master Key
- The decrypted contents of anything you upload
No backdoor
No password reset exists. There is no backdoor. This is the direct cost of true zero-knowledge encryption: if you lose both your passphrase and your Recovery Kit, no one — including us — can recover your data. We consider that a feature, which is why the Recovery Kit step is built into onboarding.
Responsible disclosure
We welcome reports from security researchers. If you believe you've found a vulnerability, email security@nocturne.app with details and steps to reproduce. We commit to acknowledging reports promptly, working with you in good faith, and not pursuing legal action for good-faith research that respects user privacy and avoids data destruction.
Subprocessors
A current list of subprocessors is maintained in our Privacy Policy. Each is limited to the minimal data required to operate the service and never receives decrypted content.
This document is a design artifact for the Nocturne product and is not legal advice.