Send a one-time secret

Your message is encrypted in this browser before it is sent. The key never leaves the link, and the server deletes the message the moment it is read.

0 / 32768 bytes

Link expires after

How it works

  • Encryption happens here, in your browser, with AES-256-GCM. What you type never travels as plaintext.
  • The 32-byte key lives only in the link after the #. Fragments are never sent to any server, so the server never sees the key.
  • Reading deletes the message on the server before it is shown. If delivery fails partway, the message may be lost forever.

Honest limits

  • Anyone holding the full link can read the message once. Share it only over a channel you trust, and assume anyone it is forwarded to can use it first.
  • Deletion removes the live database record, not every physical copy: ciphertext may remain in database free pages, backups, or filesystem snapshots. A reader may keep clipboard contents, screenshots, or notes.
  • You trust this hosted page while you use it: a compromised server could serve modified JavaScript. This protects messages from a curious server and network observers — not from a server that turns malicious.
  • On the read page the link fragment is stripped from the address bar immediately and kept only in memory. Reloading then loses access on purpose; keep the original link until the message is revealed, and do not paste it back into history or shared places.