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.
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.
Your balance is public
Anyone paying you can see what else landed, what you sold, and what you are holding right now.
Your payers are linkable
Everyone who ever paid that address can see everyone else who ever paid it. Your client list is theirs.
It is permanent
You cannot unpublish an address. Rotating by hand means a new address per payment and a mess to track.
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.
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.
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.
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.
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.
Curve25519, the same maths Solana already uses to check every signature in every block. No mixer, no pool, no bridge, no custody.
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.
- 1Sender rolls a one-time key r
- 2Handshake with the receiver's view key
- 3Shared scalar c, known to exactly two people
- 4One-time Solana address P = S + cG
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.
What it hides. What it doesn't.
CloakSend hides the receiver. It is not a mixer and it will not pretend to be one.
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.
No program. No pool. No one holding your money.
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.
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.
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.
The awkward ones first.
Is this a mixer?
Can the sender spend the money after sending it?
What if I lose the tab?
Can I send to an ordinary wallet address too?
Does it work with tokens, not just SOL?
Why do I need to sign a message?
Is this audited?
Get paid without getting profiled.
One signature, one cloak address, and every payment after that lands somewhere new.