OPEN A FRESH ROOM
Click once. Your browser generates a hybrid keypair (X25519 + ML‑KEM‑768) and a fresh room ID. No account, no email, no install. The room exists the moment you make it.
Bluebells is in closed beta. If someone gave you an access key, paste it below. The key is verified server-side and never stored on this device in cleartext.
Bluebells is a messenger where every conversation is a sealed capsule: encrypted on your device, carried inside the URL itself, indexed only by keys you hold. No servers store your words. No accounts attach to your identity. Built openly. Verifiable.
Click once. Your browser generates a hybrid keypair (X25519 + ML‑KEM‑768) and a fresh room ID. No account, no email, no install. The room exists the moment you make it.
Send a single-use seed through any channel you trust. It works once. It expires in 15 minutes. If somebody intercepts it, the legitimate consumer can't join, and you'll know to rotate.
Every message is XChaCha20‑Poly1305 encrypted under a room key only your devices hold. The URL carries the ciphertext. We can't read it. Network observers can't read it. Nobody can.
When you leave, the conversation rests in the URL and your local library. Reopen the link to wake it. Roll the room key anytime. Or burn it forever and the conversation becomes literally unreadable.
Bluebells is built on an open protocol. Every primitive below has been chosen for one reason: to remain unbreakable both today and after quantum computers arrive.
256-bit keys, 192-bit nonces. The extended nonce eliminates reuse risk at any volume of traffic. RFC 8439.
Every operation, shard, and attachment is content-addressed. Identical payloads collapse to identical hashes. Deduplication for free.
Hybrid construction. Both classical and post-quantum secrets must hold. Defends against harvest-now-decrypt-later.
Every operation, every authority action, signed twice. Verification requires both. SLH-DSA layered for long-term integrity.
Per-shard and per-attachment keys derived on demand from the room key plus the content hash. Nothing stored that doesn't need to be.
256 MB memory, 4 iterations. Local device key wrapped under your passphrase. Deliberately expensive to brute-force.
Doesn't the URL leak everything?
The URL holds only ciphertext, a version byte, and an opaque room ID. Decryption requires the room key, which never leaves your devices. A URL screenshot reveals nothing. A URL in browser history reveals nothing.
What if I close my browser?
Your local library, encrypted under your device root key, keeps the conversation. Reopen the URL, or open the room from your library. Pair another device by QR code and the conversation follows you there.
What can your relay actually see?
Opaque bytes addressed to rotating rendezvous IDs, for up to 60 seconds, with no auth and no logs. You can run your own. You can run several at once. The protocol is designed assuming you don't trust ours.
One click and your browser mints a fresh hybrid keypair, derives a room ID, and prints a URL. Send it to anyone, on any channel, and the conversation begins. Nobody else, including us, has any way to read it. Ever.