WHSPR

Some things are meant to stay between us.

Private conversations, end-to-end encrypted in your browser and connected through your Solana wallet. No email. No password.

End-to-end encrypted · Sign-In with Solana

The channel

Written here. Readable only there.

Follow one message from your keyboard to theirs. The server in the middle only ever holds a sealed envelope.

Your deviceIdle

 

Ciphertext · 51 B
Relay server
  • Sees: sender, recipient
  • Sees: time and size
  • Cannot read: contents
Recipient's deviceIdle

 

  1. Step 1 · Compose

    You write in your browser. The words exist only on your device.

  2. Step 2 · Encrypt

    A fresh XChaCha20-Poly1305 key seals the message, then is wrapped for each recipient key.

  3. Step 3 · Relay

    The server stores and forwards ciphertext. It sees who, when and how much, never what.

  4. Step 4 · Decrypt

    Only the recipient's private key can unwrap the content key and read it.

Illustration · glyphs shown are not real ciphertext

Wallet identity

Your wallet proves who you are. It never touches your words.

  • Sign in by signing a one-time message. No transaction, no fee, no email, no password.
  • The message is bound to this site, expires in five minutes, and can only be used once.
  • Encryption keys are generated separately in your browser. Your wallet only signs a statement linking them to your address.
  • Your wallet never decrypts anything and cannot restore your message keys. That is what the encrypted backup is for.

Works with Phantom · Solflare · Backpack

Signature requestNo transaction
your-whspr-domain wants you to sign in with your Solana account:9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWMSign in to WHSPR. This request does not trigger a blockchain transaction or cost any fees.URI: https://your-whspr-domainVersion: 1Chain ID: mainnetNonce: k3V9qX2mTz8LwP4cIssued At: 2026-10-14T21:04:00.000ZExpiration Time: 2026-10-14T21:09:00.000Z
Ed25519 signature

3pYc8fWQnR2kVxTe5HmJbL7aZsDq4uN9gKcEo1tXyBvM6rWiPdFhA2jSlUeQ8nTz

  • Signature matches the wallet address
  • Domain and expiry are valid
  • Nonce consumed, cannot be replayed

The real sign-in message format · address, nonce and signature are examples

Key verification

Trust is something you can check.

Every published key carries a signature from its wallet, and WHSPR checks it on your device. If a contact's keys ever change, you see it, and sending pauses until you review.

Mara7xKX…qA3P · wallet-signed key
Remembered on your device
F97B4203BBB508F24FC8F90DC5B285E1
Published now · signed by Mara's wallet
F97B4203BBB508F24FC8F90DC5B285E1

Fingerprints match. Compare these groups with Mara in person or on a call to verify her identity.

Interactive example · real fingerprint algorithm on example keys

Disappearing messages

Some conversations shouldn't last forever.

Set a timer per conversation. Expired messages are deleted from the server and removed from every WHSPR client in the conversation.

A timer cannot stop a screenshot, a photo of a screen, or a modified client. We say so plainly.

This message will disappear in one hour.

  • 5 min
  • 1 hour
  • 1 day
  • 1 week

The messenger

Quiet by design.

Nothing to configure before your first message. The security details stay one tap away, never in the way.

Product illustration · sample conversation, not live data

Security model

What WHSPR protects, and what it doesn't.

Read the security model

Protected

Message contents
Encrypted and decrypted only in your browser. The server and network see ciphertext.
Silent key swaps
Every key is signed by its wallet and checked on your device. Changes are surfaced.
Replayed sign-ins
Each challenge is single-use, domain-bound and expires in five minutes.
Accounts without the wallet
Signing in requires a signature from the wallet itself.

Not protected

Metadata
The server sees who talks to whom, when, and roughly how much.
A stolen device key
There is no ratchet yet, so a stolen long-term key can open past messages.
Screenshots and modified clients
Disappearing timers cannot control what a recipient keeps.
A compromised device
Malware or a malicious extension on your device sees what you see.

Start a conversation only two people can read.

Open WHSPR

Connect a Solana wallet · no email, no password