unit PT-8086 · shielded transfer machine

Send without a trace

Enter a destination address and an amount. The proof is generated inside your browser and a relayer signs the withdrawal. Nothing on chain connects your wallet to theirs.

Live on Base with real USDC in our own pool, and on Sepolia with free test money. The pool on Base is young — the figures below are the whole of it, not a sample.

base pool holds
USDC
notes in tree
merkle root
status
connecting

01 — mechanism

Money does not travel in a straight line

Tokens sit together in one pool. Ownership is recorded as cryptographic commitments in a Merkle tree. Moving value inside the pool emits no transfer at all — so there is nothing to follow.

YOUR WALLETpublicDEPOSITSHIELDED POOL26-level merkle treecommitmentnullifierno ERC-20 transferinside: fully sealedsignsRELAYERDESTINATIONpublicno link between the two ends
01 Deposit

Your wallet sends tokens into the pool. This step is public and cannot be hidden — but only fixed denominations are accepted, so every deposit looks identical.

02 Prove

Your browser generates a Groth16 proof: you own a note in the tree, you are not double-spending, you are not minting money — without revealing which note.

03 Wait to be buried

The pool refuses to pay out a note until three later deposits have landed on top of it. Depositing and withdrawing minutes apart is what gives senders away on every pool that allows it, so this one does not allow it. On a quiet pool our keeper supplies those three, which takes about eight seconds; after 24 hours the wait is waived outright, so money is delayed and never trapped.

04 Withdraw

A relayer takes the finished proof and signs for you. Your wallet never appears. The relayer cannot change the recipient — that address is bound into the proof.


02 — where it runs

Where it runs

A shielded pool hides you among the people using it, and that crowd is the one ingredient cryptography cannot supply. Ours is being built one deposit at a time, in public, and the numbers above are the honest size of it today.

Our own poollive

Base · chain 8453

Live with real Circle USDC. Fixed denominations, a 3% fee of which half goes back to the people providing the crowd, burial before payout, and our relayer signing every withdrawal. Young: the crowd here is being built one deposit at a time, and the pool figures above are the whole of it.

The same pool, free moneylive

Sepolia · chain 11155111

Identical contract, identical rules, a faucet instead of a bank. This is where to find out what a transfer feels like — how long it waits, what the screen says while it does — before any of it costs anything.

Built, not switched onnot live

Arbitrum · chain 42161

The code to send through Railgun's shielded pool is written and works — RailgunApp drives it — but the network is off the picker for now, so nothing here offers it. When it comes back this line changes with it.

Unaudited, and the trusted setup still has one contributor. Send what you can afford to lose.


03 — plainly

What is hidden, what is not

No privacy tool hides everything. This is the real boundary.

hidden
  • Transfer contents — no addresses, no amounts
  • Ownership of every note
  • Balances — there is no balanceOf
  • The link between two notes sent to the same person
  • Your wallet does not sign the withdrawal
still visible
  • That you used this pool at all
  • The depositing wallet and the receiving wallet
  • Amounts in and out — the ladder makes them identical, not invisible
  • A thin pool is defeated by statistics, not by breaking the math

necessary vs sufficient

Cryptography is necessary. Real anonymity also needs a crowd and delay — neither of which can be written in code.


04 — measured

No estimated figures

Everything below was measured on real hardware and read back from chain — the gas figure is a withdrawal that actually settled on Base, not a simulation. Anything unmeasured is labelled as such.

constraints
32,301
proof (Node CLI)
1.14 s
gas to verify
235,455
gas, withdrawal on Base
1,389,468

Verifying the proof costs only 235k. Most of the gas is 26 on-chain Poseidon hashes to insert into the tree — which is why a cheap chain matters more than a smaller circuit.


05 — what happens next

Product now, token after

The pool works today with none of what follows. The token gates access and pays the people supplying cover; it is not what makes the machine run.

todaylive

The pool, running

  • Live on Base with real USDC, and on Sepolia with free money
  • No token, no holding, no allowlist
  • Half of every fee already paid to whoever supplies depth
Q3 2026planned

Launch, open to all

  • Token issued
  • Service stays open, no holding required
  • Fee share keeps paying the people providing cover
Q4 2026planned

Holders only

  • Private transfers become a holder service
  • Supplying depth becomes a holder position
  • The crowd and the holders become the same people
2027planned

Supply only falls

  • 0.5% of platform fees converted to the token and burned
  • Not a buyback that can be paused, a burn
  • Every transfer settled removes supply for good

Dates are intent, not a contract. The only column above that is already true is the first one, and it is marked as such.


Send something

Base moves real USDC through our own pool. Sepolia does the same thing with free money and nothing to install but a wallet — the same contract, the same waits, so nothing about it is a surprise later.

open the apptry on testnet