Needed a fast way to share secrets last night...
So I threw together a stateless version.
How it works without a database:
The Browser: Encrypts your text locally using AES-GCM, then uses the server's public key to seal a tiny envelope containing just the AES key and an expiration timestamp. The raw text never leaves your screen.
The Link: Packs everything into the URL hash fragment.
The Server: When the link is opened, the Go backend decrypts the tiny envelope, verifies the timestamp, re-encrypts the AES key for the recipient, and flushes its memory.
If it's expired, it returns a 410 Gone. The server never sees or stores your actual secret text, it only handles the transient envelope key for a split second.
I'd love some feedback if anyone has some -> https://crate.cc/tools/share
Posted Jul 10, 2026, 6:00 PM UTC