Security at a glance
- Files and file names are encrypted with AES-256-GCM in your browser before upload
- Encryption keys never reach our servers in usable form, so we can't read your files
- Your account password never leaves your device
- Optional two-factor authentication with one-time email codes
- Files are stored redundantly across several data centers, designed to survive fire and floods
- Servers and database hosted in Finland, under the GDPR and Finnish data protection law
End-to-end encryption with AES-256-GCM
When you share a file, your browser generates a new random 256-bit key just for that file. The file is split into chunks, and each chunk is encrypted with AES-256-GCM using its own unique nonce before anything is sent to us. The file name is encrypted with the same key, so we don't know what you're sharing either.
AES-GCM is authenticated encryption. If a single bit of an encrypted file is changed, whether by a faulty disk or someone tampering with it, decryption fails instead of silently handing you a corrupted file.
Where the key lives
The key is placed in the part of your share link after the #. Browsers never send that part of a URL to the server, so when your recipient opens the link, their browser downloads the encrypted file and decrypts it locally. We only ever see encrypted data.
Zero-knowledge accounts
You don't need an account to use VeilShare. If you create one, it's designed so we still can't read your files, and your password never leaves your device.
When you sign in, your browser runs your password through Argon2id, a memory-hard algorithm built to make password guessing slow and expensive. From the result it derives two separate keys: one that proves to our server who you are, and one that unlocks your personal master key. The server only stores a salted hash of the first, and your master key is stored encrypted with the second.
Every file saved to your account has its key encrypted with your master key. That lets you open your files from any device after signing in, while we only ever hold locked copies.
Recovery key and key rotation
When you sign up, you get a recovery key. It's the only way to keep access to your saved files if you forget your password, because we can't reset encryption we don't hold the keys to. If you think your key may have been exposed, you can rotate your master key from your settings, which re-encrypts every saved file key in your browser.
Two-factor authentication
Turn on two-factor authentication in your account settings and a correct password is no longer enough to sign in.
- Codes are generated with a cryptographically secure random number generator
- Each code expires after 10 minutes and works only once
- Codes are stored hashed, never in plain text
- Code guesses and resend requests are rate limited to block brute-force attempts
You can also see every device signed in to your account and sign out any session you don't recognise, or all of them at once.
Protection against fire, floods and hardware failure
Encryption protects your files from people. Here's how they're protected from physical disasters like fire, floods and failing hardware.
File storage built to survive a lost data center
Encrypted files are stored on Cloudflare R2, which is designed for extreme durability. Each file is stored as multiple copies or erasure-coded fragments spread across many disks in several data centers within a region. Cloudflare designs it so data survives disk failures and physical damage to a data center, such as fire or flooding.
Servers and database in Finland with daily backups
Our application servers and database run at Hetzner in Helsinki, Finland, in a data center certified to ISO/IEC 27001:2022, the international standard for information security management. That means your account data is covered by the GDPR and Finland's Data Protection Act.
The database is backed up automatically every day, with the last seven days of backups kept. If a server fails, we can restore it from a recent backup.
Stolen hardware doesn't expose your files
Your files and file names are encrypted with keys we never hold, so a stolen disk, a leaked backup or a breach of our servers can't expose what you've shared.
What we can't protect against
No service can promise perfect security, and we'd rather be honest about where the risks are:
- If you lose a link, or forget your password without your recovery key, the files can't be recovered by anyone
- Malware on your device, or your recipient's device
- We can see basic metadata needed to run the service, like file size and expiry date
See our privacy policy for the full list of what we process and how long we keep it. Found a security issue? Email [email protected] and we'll look into it.
Frequently asked questions
Sources
Share a file securely
Free, no account needed. Your file is encrypted in your browser before it's uploaded, and we can't read it.
Share a file