Concepts
A short glossary. Every term below is used elsewhere in these docs.
Keys and addresses
| Term | Meaning |
|---|---|
| Spending key | The private key that controls funds on your stealth addresses. Keep it secret and backed up. |
| Viewing key | A second private key that only lets someone recognise your payments. It cannot spend. You can give it to a scanner. |
| Meta-address | The two public keys joined into one string, st:eth:0x.... Safe to publish. Never used as an address on chain. |
| Ephemeral key | The sender's one-time random key for a single buy. Its public half is published, its private half is thrown away. |
| Shared secret | The point both sides compute separately: ephemeral private key times viewing public key, or viewing private key times ephemeral public key. |
| Stealth address | The one-time address for a single buy. Derived from the spending public key plus a hash of the shared secret. |
| Stealth private key | The spending key plus the same hash. Only the receiver can compute it. |
Standards
| Term | Meaning |
|---|---|
| ERC-5564 | The stealth address standard: how to derive addresses and how to announce payments. Scheme 1 is secp256k1 with view tags. |
| ERC-6538 | A registry where people can publish their meta-address under their own address. Optional. |
| Announcer | The singleton contract that emits Announcement events. Same address on every chain. |
| View tag | The first byte of the hashed shared secret, published with each announcement so scanners can skip most of them. |
Chameleon pieces
| Term | Meaning |
|---|---|
| Router | The contract that buys from a Pons curve into a stealth address, tops it up with gas and announces it. |
| Curve | A Pons bonding curve for one token. Exposes buy, sell, token, getReserves, graduated. |
| Gas dust | A small amount of ETH the router sends to the new address so it can pay for its own transactions. |
| One-time funder | A wallet used once to call the router, so the wallet people watch is not the one sending the transaction. |
| Skin | The colour the site gives an address, taken from its first two bytes. Decoration only. |
Why each buy has its own address
If two buys used the same address, a tracker could link them. Because the shared secret depends on a fresh random key every time, the derived address is different every time, and nothing on chain connects them except the viewing key, which you control.