


A Pastebin That Can't Read Your Pastes
FlashPaper is a zero-knowledge, self-destructing encrypted pastebin written in Go. It reimplements PrivateBin with full API compatibility, so existing PrivateBin clients work against it unchanged.
The browser generates a random key and encrypts the paste with AES-256-GCM before anything leaves the page. The server only ever receives and stores ciphertext, plus the paste's settings (expiry, burn after reading, discussion). The key travels in the URL fragment, the part after #, which browsers never send to the server.
Browser Server
------- ------
1. generate a random 256-bit key
2. encrypt the paste (AES-256-GCM)
3. POST ciphertext + settings -------------> store ciphertext
<------------- paste ID
share link: /?<paste ID>#<key>
\__________/ \___/
sent to the stays in the browser,
server never sent
The AES key itself is derived from that random key with PBKDF2 (100,000 iterations). A password, if set, is mixed in before that step, so the link alone is not enough to open the paste. And since the server never receives the plaintext, it has no paste content to log.