Contract FLiWPBuu9fHkYNuVDGyEJx9SMHUBjFzXwYvZmcqqpump pump.fun chart
Stealth sends · Solana · ed25519

The chain sees the money.
It never sees who caught it.

CloakSend pays to a one-time Solana address that only the receiver can find and only the receiver can spend. Same SOL. Same block. No name attached.

0 programs to trust 1 signature to set up ~0.000005 SOL to send
CloakSend mark
The problem · one address forever

Posting your wallet is posting your bank statement.

Paste a Solana address in a bio, an invoice or a group chat and you have handed over every payment you have ever taken, every coin you hold, and every wallet you have ever touched. Forever, to everyone, searchable.

01

Your balance is public

Anyone paying you can see what else landed, what you sold, and what you are holding right now.

02

Your payers are linkable

Everyone who ever paid that address can see everyone else who ever paid it. Your client list is theirs.

03

It is permanent

You cannot unpublish an address. Rotating by hand means a new address per payment and a mess to track.

How it works · maths, not promises

One cloak address. A fresh landing pad every time.

You publish a cloak address once. Every sender turns it into a brand new Solana address that has never appeared on chain before. Different sender, different block, different address, every single time.

STEP 01

You sign one message

Your wallet signs a fixed sentence. That signature deterministically becomes two secret keys: a spend key and a view key. Nothing is uploaded, nothing is stored, nothing is deployed.

STEP 02

You publish a cloak address

The two matching public keys pack into one string starting cloak1…. Put it in your bio. It is not a wallet, holds nothing, and reveals nothing.

STEP 03

The sender rolls a key

Their browser picks a random one-time key, shakes hands with your view key, and derives a Solana address that is mathematically yours. They pay it like any normal address.

STEP 04

Only you can open it

Your view key spots the payment. Your spend key, plus that handshake, is the only private key on earth that can move it. Sweep it into any wallet you like, whenever you like.

The whole scheme, in four lines
receiver holds s, v  →  publishes S = sG, V = vG
sender rolls r  →  publishes R = rG in the memo
both compute c = H(rV) = H(vR)  — nobody else can
payment lands on P = S + cG  — spendable only with s + c

Curve25519, the same maths Solana already uses to check every signature in every block. No mixer, no pool, no bridge, no custody.

Live demo · running in your browser, right now

Cloak a send and watch the address appear.

This is not an animation. Your browser is doing the real derivation on the real curve. Run it twice with the same cloak address and you will get two completely unrelated Solana addresses.

SOL

  1. 1
    Sender rolls a one-time key r
  2. 2
    Handshake with the receiver's view key
  3. 3
    Shared scalar c, known to exactly two people
  4. 4
    One-time Solana address P = S + cG
The vault · twelve identical boxes

Every box looks the same. One of them is yours.

Twelve real one-time addresses, freshly derived. Eleven belong to strangers, one was cloaked to you. Nothing on the outside says which. Scan the vault with your view key and watch exactly one open.

Each tile is a genuine Solana address derived in this tab. The scan is the real one the app runs: a handshake per box, then a comparison.

Honest limits · read this part

What it hides. What it doesn't.

CloakSend hides the receiver. It is not a mixer and it will not pretend to be one.

Who received itLands on a fresh address with no link to your published identity
hidden
Your payment historyTen payments to one cloak address land on ten unrelated addresses
hidden
Which cloak address was paidOnly a holder of the view key can test an announcement
hidden
Who sent itThe sender pays from their own wallet, in public, as normal
public
The amountSolana transfers are transparent. Round numbers are a fingerprint
public
Where you sweep itSweeping into your main wallet links the two. Sweep somewhere fresh
public

Cloaking breaks the link between your published address and the money. It does not hide that money moved, and it never will. Anyone selling you that is selling you something else.

Under the hood · nothing to deploy

No program. No pool. No one holding your money.

STATIC

A page, not a service

The whole app is HTML and one dependency-free script. No backend, no accounts, no analytics, no wallet drainer disguised as a connect button.

MEMO

Announcements ride along

Every cloaked send carries a memo with the one-time key and taps a beacon address with one lamport, so a receiver can list every announcement in a single RPC call.

KEYS

Secrets never leave the tab

Your keys come from one wallet signature, live in page memory, and vanish when you close it. Same signature, same keys, any device, forever.

Questions

The awkward ones first.

Is this a mixer?
No. Your coins never leave your control and never enter a shared pool. A cloaked send is a plain SOL transfer from the sender's own wallet to an address that happens to be yours. Nothing is pooled, nothing is custodied, nothing is bridged.
Can the sender spend the money after sending it?
No. The sender can compute the one-time address, because they picked half the handshake. The private key for it is your spend key plus the shared scalar, and the sender never sees your spend key. They can look. They cannot touch.
What if I lose the tab?
Nothing is lost. Your keys are derived from a signature over a fixed message, so reconnecting the same wallet and signing again rebuilds exactly the same cloak address and finds every payment ever sent to it.
Can I send to an ordinary wallet address too?
Yes. Paste a normal Solana address in the send box and CloakSend sends straight to it, in the clear, like any wallet would. It says so plainly before you confirm, because nothing about that payment is cloaked. The cloaking only happens when the recipient is a cloak1… address.
Does it work with tokens, not just SOL?
v1 cloaks SOL. Token support needs a token account created at the one-time address and a little SOL there to pay for it, which is more moving parts than v1 ships with. It is the next thing on the list.
Why do I need to sign a message?
Because a signature is the one secret your wallet can reproduce on demand without exposing a private key. It costs nothing, moves nothing and touches no chain. Only ever sign it on this app.
Is this audited?
There is no contract to audit. The scheme is the stealth address construction used by Monero and specified for Ethereum as ERC-5564, ported to ed25519 for Solana. The code is a single readable file with no dependencies, served as-is. Read it before you trust it, and start with a small amount.

Get paid without getting profiled.

One signature, one cloak address, and every payment after that lands somewhere new.