Cloak anything.
Reveal nothing.
CloakDrop encrypts your files in this tab with AES-256-GCM. The key is generated here, stays here, and rides inside the link — never on a server. Today it encrypts and stores; it does not yet send. A link opens only in the browser that made it.
A CloakDrop link is plain text, so it survives any channel you already use
Not yet, though: in this build a link only opens in the browser that made it. Sending one to someone else shows them an empty page. The relay that will carry drops between devices is being built — what works today.
The drop
Cloak your files
Paste it here — the key after the # stays in your browser and unlocks the files locally. In this build a link opens only in the browser that created it.
That doesn't look like a CloakDrop link — it needs #t=…&k=…
A label is yours to choose and stays on this device. It is the one thing here that is not encrypted — write what helps you tell two drops apart, not what the drop contains.
Filenames are inside the encrypted manifest, so this list cannot show them
— without the key from the link there is nothing here to read. It can delete a drop,
which is what you need when the link is gone.
What it does show — how many drops, how large, when — is on this screen for anyone
standing behind you. On a machine you do not control, close this view when you are done.
Without one, the link carries the key: whoever forwards it forwards the files. With one, the link is useless on its own — say the password on the phone, not in the same message. Eight characters is the minimum; three or four words beat eight random characters, and they survive a phone call.
The key is in this link. Anyone who gets the whole link gets the files — treat it like the files themselves. It stops opening after 24 hours, and after that the app removes the encrypted pieces the next time you open it. The button below does it now, for real.
The key is not in this link. It is wrapped with your password, so the link alone opens nothing. Send the password by another route — on the phone, in person, anywhere but the same message. Nobody can recover it for you, not even us: it was never here. It stops opening after 24 hours.
Still this browser only. Nothing was uploaded, so on another device the link shows nothing yet. Carrying drops between browsers is what the relay will do.
Encrypted here · stored here · relay in the works
Cloaked files,
for your eyes.
This drop was cloaked in this browser. The key came in with the link — decryption happens right here, with nothing fetched from anywhere.
This drop has a password
The key is not in the link — it is wrapped. Ask whoever sent it for the password; they were told to pass it on separately.
That password does not open this drop.
This link didn't open
Ciphertext only — nothing was uploaded, nothing is fetched
Encrypt · Chunk · Seal
Under the cloak
Real AES-256 encryption, no accounts, and links that stop opening when you say.
Cloaked inside your browser
AES-256-GCM runs in your tab, chunk by chunk. Filenames are encrypted too, inside the manifest — plaintext never leaves this tab.
The key rides in the link
It lives after the # — the URL fragment. Browsers never send fragments to servers, proxies, or logs.
Every file type welcome
Documents, photos, footage, archives — the cloak doesn't care what's inside. A link stops opening after the time you pick — an hour, a day or a week.
We couldn't look if we wanted to
No accounts, no tracking, no data on our side at all — no file, no filename and no key ever leaves this tab. Wrong key, no files: cryptography keeps the promise, not a privacy policy.
Security, spelled out
No trust required. Verify it.
Every claim on this page maps to a mechanism you can inspect in your browser's dev tools. Nothing is hidden — except your files.
Cipher
AES-256-GCM via the WebCrypto API
Hardware-accelerated, authenticated encryption — the same primitive password managers rely on.
Key handling
Generated locally, never transmitted
The key travels only inside the URL fragment (#…), which browsers keep client-side by specification.
Chunking
4 MB chunks, unique IV per chunk
An 8-byte random prefix plus a counter guarantees no IV ever repeats under the same key.
Metadata
Filenames encrypted inside the manifest
The stored record holds ciphertext, sizes, and a timestamp. Nothing readable — and in this build that record never leaves your browser.
Integrity
Tampering fails loudly
GCM authentication rejects any modified byte — a wrong key or altered ciphertext yields no output at all.
Limits
Where the edges are
These are the limits this build runs under. All of them are in the code on this page.
FAQ
Fair questions
Is the encryption real?
crypto.subtle and never transmitted. Open your dev tools' network tab while you cloak a drop — you will see no request at all, because this build has no relay to send to. The key exists only in your link's fragment.Is there a server?
What happens if I lose the link?
How long does a link keep opening?
Can I read the code?
Ctrl+U. The whole client is one unminified file, because a crypto product that says trust me instead of read it yourself is asking the wrong thing of you. It is not licensed for redistribution, but reading and checking it needs no licence.