Security & Privacy
Your privacy is not a feature—it's our architecture.
How We Protect Your Data
🔒 Local-First Architecture
Your PDFs never leave your device.
PrivDF runs entirely in your browser using modern Web APIs (PDF.js, Web Crypto, IndexedDB). When you upload a PDF, it stays in your browser's memory—we don't have servers to receive it.
Data we DON'T collect: PDFs, annotations, passwords, API keys, usage patterns.
🔐 Client-Side Encryption
AES-GCM encryption with your passphrase.
All highlights and notes are encrypted before storing in your browser's IndexedDB. We use the Web Crypto API with AES-GCM (256-bit keys). Only you have the passphrase—we can't decrypt your data.
🤖 Privacy-Respectful AI
Only text chunks are sent to Venice AI—never your PDF.
When you use AI features, we extract text from your PDF locally, then send only that text to Venice AI. Venice AI processes your request and doesn't retain the data. You control your own Venice API key.
🛡️ Security Headers
Industry-standard HTTP security headers.
- ✓ Content Security Policy (CSP) - Prevents XSS attacks
- ✓ Strict Transport Security (HSTS) - Forces HTTPS
- ✓ X-Frame-Options - Prevents clickjacking
- ✓ X-Content-Type-Options - Prevents MIME sniffing
🗑️ Complete Data Deletion
Delete everything with one click.
The "Delete All Data" button in the app wipes all annotations, cache, API keys, and settings from your browser's storage. We can't recover it because we never had it.
📦 Portable Exports
Your data, your control.
Export your PDFs with encrypted annotations as ZIP files. Move them to another device, back them up, or delete the local copies. You're never locked in.
Open Source & Auditable
PrivDF is open source. You can review the code, audit the security, or run your own instance. Transparency is the foundation of trust.
Security Questions
What data do you collect?
We collect anonymous usage metrics (page views, button clicks) via privacy-friendly analytics (no cookies, no tracking). We don't collect PDFs, annotations, passwords, or API keys.
Where is my data stored?
Your data is stored in your browser's IndexedDB (local storage). It never leaves your device unless you explicitly use AI features (which send only text) or export annotations.
Can you recover my passphrase?
No. Your passphrase is used locally in your browser to encrypt/decrypt data. We never see it, and we can't reset it. If you forget it, you'll lose access to your encrypted annotations.
What about Venice AI?
Venice AI processes your text requests and doesn't retain the data. You provide your own API key, so you control the relationship. Read Venice's privacy policy.
Found a security issue?
Please report it to security@privdf.ai. We take security seriously and will respond promptly.