Stealth Addresses
Enable unlinkable transfers on a transparent chain by deriving a one-time destination address per transaction using a Diffie-Hellman shared secret between sender and receiver keys. Observers see a transfer to a fresh address; only the recipient can detect and spend the funds.
Enable unlinkable transfers on a transparent chain by deriving a one-time destination address per transaction using a Diffie-Hellman shared secret between sender and receiver keys. Observers see a transfer to a fresh address; only the recipient can detect and spend the funds.
- Stealth keypair held by the recipient: a view key used to scan the chain and a spend key used to control funds.
- Ephemeral sender key generated per transaction; combined with the recipient view key to produce a shared secret.
- Derivation function that converts the shared secret into a stealth address and an optional view tag for fast scanning.
- Optional registry or directory that publishes recipient view keys so senders can discover them.
- Wallet or account-abstraction stack that can fund and operate the stealth address without re-linking it to the recipient's primary address.
Guarantees:
- On-chain observers do not see a direct link between sender and recipient identities.
- The recipient can scan and spend without the sender needing further interaction.
- Retrospective disclosure is possible by voluntarily sharing the view key with a specific auditor.
Threat model:
- The hardness of elliptic-curve Diffie-Hellman; key compromise reveals all past and future stealth addresses derived from the same view key.
- Wallet implementation correctness in handling view and spend keys and in funding the stealth address without re-linking it.
- Metadata at the network layer (RPC provider logs, relayer identity, IP addresses) and repeated address reuse by the recipient are out of scope.
- Amount and token type are visible on-chain by design.
- Amount leakage: transfer values remain visible and can expose competitive information.
- Scanning cost: recipients must scan all transactions, or use view tags and prefiltering to reduce load.
- Funding the stealth address to cover gas can re-link the stealth address to a known source unless account abstraction or dedicated gas-payer flows are in place.
- Interoperability depends on EIP-5564 adoption across wallets and on registry availability.
- Regulator workflows require voluntary view-key sharing; there is no scoped access path by default.
An institution owes a counterparty tokenised stablecoin. The recipient publishes a public view key in its directory entry. The sender derives a stealth address using the shared secret and transfers the stablecoin to that address. On-chain, the transfer looks like a payment to a fresh address. The recipient's wallet detects the funds via the private view key, then moves them to a custodian wallet. For audit, the recipient can later disclose the view key to a regulator for the relevant window.