Non-custodial by design¶
Trust boundaries
The coordinator's trust boundary is narrow on purpose: it can arrange a transaction and ask you to sign, but only you can authorise spending your coins.
What the coordinator can do¶
- Match participants into a pool
- Build the combined transaction
- Collect each participant's signature
- Broadcast the result
What it can't do¶
- Can't steal — it never holds your keys or funds
- Can't redirect — you only sign a tx paying your own destination + change
- Worst case — it can refuse service or log who joined; it cannot take coins
Note
Your private key is used only by a signer running on your machine. Verify that for yourself — the signer is source-available.
Why this holds¶
A signature commits to the whole transaction (see Anatomy). With SIGHASH_ALL, your
approval means "exactly these inputs, exactly these outputs" — including your own equal output and your
change. Nothing can be added, dropped, reordered or retargeted after you sign without breaking every
signature. That is what makes handing a half-built CoinJoin to a coordinator safe.