Step 1
client-sideUpload and encrypt
Select files and set a password. Encryption happens in your browser before anything leaves your device.
> SecretDrop
Share .env files, API keys, and configs through password-protected, expiring bundles. Files are encrypted in your browser before upload.
AES-256-GCM encryption with PBKDF2 key derivation. The server never sees your plaintext data.
Free tier available. No credit card required.
Step 1
client-sideSelect files and set a password. Encryption happens in your browser before anything leaves your device.
Step 2
zero-knowledgeSend the generated link to your recipient through any channel. The link alone reveals nothing.
Step 3
no account neededThey enter the password, files are decrypted in their browser, and downloaded directly.
256-bit
AES-GCM encryption
Industry-standard authenticated encryption for file content and metadata.
600K
PBKDF2 iterations
Key derivation iterations for password-based encryption key generation.
0
Plaintext on server
Zero-knowledge architecture. The server never sees your unencrypted files or passwords.
90 days
Maximum TTL
Configurable time-to-live. Bundles are automatically deleted after expiry.
Coming Soon
Encrypt and share secrets without leaving your editor.
Pipe secrets through your terminal and CI/CD pipelines.
Developers still share .env files and API keys through Slack, email, and sticky notes. These channels were not built for sensitive data.
API keys and .env files shared in plain text over channels that log, index, and persist everything.
Once shared, secrets live forever in chat history. No way to revoke access or know who downloaded them.
When a key leaks, there is no record of who accessed it, when, or how many times it was downloaded.
The solution
Encrypt files in your browser, share a link, set an expiry. Recipients enter a password to decrypt. The server never sees your data.
Zero-knowledge architecture
The server stores only encrypted blobs and verification hashes. Decryption happens entirely in the recipient's browser.
Features
Everything you need to securely share sensitive files with developers, contractors, and team members.
Encryption
Files are encrypted in your browser using AES-256-GCM before upload. The server only stores encrypted blobs. Keys are derived from your password via PBKDF2 with 600,000 iterations.
Security
Each bundle is locked with a password. The server stores only a verification hash, never the password or encryption key.
Policies
Set time-to-live from hours to 90 days. Bundles are automatically deleted after expiry. Premium users can set download limits and failed-attempt locking.
Access
Share multiple files in a single encrypted bundle. File names are encrypted alongside content for complete metadata protection.
Analytics
Premium users can monitor who accessed their bundles, when, and how many times. Every view, attempt, and download is logged.
Pricing
Start with the free tier. Upgrade when you need more bundles, larger files, or custom policies.
Free
No credit card required
For individual use and quick secret sharing.
Premium
$79 billed yearly
For teams and developers who share secrets regularly.
Lifetime
Pay once, use forever
Permanent Premium access with no recurring charges.
Create your first encrypted bundle in under a minute. Free tier available, no credit card required.
How it works
From file selection to secure delivery in under a minute.
Select the files you want to share, set a password, and configure expiry. Files are encrypted in your browser with AES-256-GCM before upload.
Copy the bundle link and send it to your recipient through any channel — Slack, email, or a note. The link alone reveals nothing.
The recipient opens the link, enters the password, and files are decrypted in their browser. No account required.
Our principles
Zero-knowledge architecture Client-side encryption Automatic expiryExpected outcome
Your secrets are shared securely
Files are encrypted, access-controlled, and automatically deleted after expiry.
Use cases
SecretDrop fits into the way developers already share files — but with encryption, expiry, and access control.
Send environment configurations to freelancers and contractors without exposing credentials in Slack or email.
Credentials shared securely with automatic cleanup after the engagement ends
Share API keys, service account credentials, and access tokens with new team members during onboarding.
New team members get credentials without them persisting in chat history
Securely transmit configuration files, certificates, and secrets needed for CI/CD pipeline setup.
Sensitive deployment configs never stored in plain text outside the pipeline
Provide new hires with database passwords, SSH keys, and service credentials on their first day without storing them in shared docs.
Onboarding credentials delivered securely and automatically cleaned up afterward
SecretDrop works for any scenario where you need to share sensitive files with a link and a password.
Comparison
Compare sharing secrets through everyday tools versus a purpose-built encrypted channel.
Why this matters
Exposed credentials are the leading cause of security breaches. The average cost of a data breach involving stolen credentials is significantly higher than other attack vectors.
Password managers are built for credential storage, not file sharing. SecretDrop handles multi-file bundles with configurable policies, automatic expiry, and access analytics — without requiring the recipient to install anything or create an account.
Trust & Security
SecretDrop is built around a documented security model. Here is how your data is protected.
Files are encrypted using AES-256-GCM in your browser before upload. The server receives only encrypted blobs — never plaintext.
Encryption keys are derived from your password using PBKDF2 with 600,000 iterations and SHA-256. Verification hashes use a separate derivation path.
The server stores verification hashes, not passwords or encryption keys. It cannot decrypt your files under any circumstances.
Bundles are permanently deleted after their TTL expires. A cleanup job runs every 5 minutes to enforce this.
Even with full database access, an attacker cannot decrypt your files. The encryption key is derived from your password client-side and never leaves your browser. Only a verification hash — derived via a separate path — is sent to the server.
Resources
Explore articles, guides, and resources to help you get started and succeed.
An overview of SecretDrop's encryption model: AES-256-GCM, PBKDF2 key derivation, and the zero-knowledge architecture.
GuideStep-by-step guide to creating an encrypted bundle, sharing the link, and managing access policies.
Best PracticesCommon mistakes when sharing credentials and how to avoid them. Includes recommendations for key rotation and access control.
ComparisonHow SecretDrop compares to 1Password, Bitwarden, and LastPass for sharing files and credentials with external parties.
FAQ
Find answers to the most common questions about SecretDrop.
Common questions about SecretDrop.
SecretDrop is an encrypted file sharing tool for developers. It lets you share .env files, API keys, and configuration files through password-protected, expiring bundles. Files are encrypted in your browser before upload using AES-256-GCM.
No. Files are encrypted in your browser before being uploaded. The server only stores encrypted blobs and a password verification hash. The encryption key is derived from your password, which is never sent to or stored on the server.
No. Recipients only need the bundle link and the password. There is no sign-up, no app to install, and no account required to access shared files.
How SecretDrop protects your data.
SecretDrop uses AES-256-GCM for file encryption and PBKDF2 with 600,000 iterations for key derivation. The encryption key and password verification hash use separate derivation paths, so the verification hash cannot be used to decrypt files.
Expired bundles are automatically marked as unavailable and their encrypted files are permanently deleted from storage. A cleanup job runs every 5 minutes to enforce TTL policies.
Premium users can enable failed-attempt locking, which permanently locks the bundle after a configurable number of incorrect password attempts. Rate limiting also restricts password verification to 10 attempts per minute.
Plans and billing details.
The free tier includes 1 active bundle, 5 MB per file (10 MB per bundle), and a fixed 7-day expiry. Client-side encryption and password protection are included on all tiers.
Premium includes 25 active bundles, 50 MB per file (100 MB per bundle), configurable TTL up to 90 days, custom download limits, failed-attempt locking, and full access analytics. Available at $9/month, $79/year, or $126 lifetime.
Can't find what you're looking for? We're here to help.