Umbra
- Name: Umbra
- URL: https://app.umbra.cash/
- Category: stealth-address payment protocol / recipient-privacy infrastructure / meta-transaction withdrawal middleware
- Tags: ethereum-ecosystem
- Summary: Umbra is recipient-privacy infrastructure for EVM payments: stealth addresses, announcement scanning, and relayer-aided withdrawal. Useful lower-bound privacy rail, not a mixer and not full transaction privacy.
- What it does:
- Lets users receive funds at fresh stealth addresses on EVM chains while remaining unlinkable to public recipient identities from the perspective of outside observers
- Uses app-derived spending and viewing keys so senders can compute recipient-specific stealth addresses without interactive address exchange
- Publishes encrypted randomness and announcement data that receivers can scan with a viewing key to identify transfers intended for them
- Supports direct ETH delivery to stealth addresses and contract-held token delivery with later withdrawal by the recipient
- Provides meta-transaction and relayer flows so token withdrawals do not require the stealth address itself to already hold ETH for gas
- Exposes an SDK (
umbra-js) so other apps can integrate key generation, sending, scanning, and withdrawal behavior
- Key claims:
- The official README repeatedly says Umbra is a stealth address protocol for EVM networks and explicitly contrasts it with mixers: the sender remains public, but the receiver’s identity is obscured because the funds land at a fresh address that outsiders cannot link back to the recipient.
- The README’s seven-step walkthrough shows the core split clearly: users derive spending and viewing keys from a signed message, publish the public keys, senders generate a stealth address using the spending key and random number, the random number is encrypted with the viewing key, and the receiver scans announcement events to recover matching payments.
- The README emphasizes that Umbra does not provide “full” privacy like Aztec or Zcash. That limitation is useful, not disqualifying: it makes Umbra a clean lower-bound comparison for recipient privacy without privacy-preserving amount, sender, or asset-source obfuscation.
- The
umbra-jsREADME explains a crucial operational design choice: ETH can be sent directly to the stealth address, but tokens are instead held by the contract because a token-only stealth address would otherwise lack ETH to pay gas for withdrawal. This contract-holding and relayer pattern is a major part of Umbra’s real control surface. - The same SDK docs say users can separate spending and viewing keys, allowing third-party scanners to detect incoming transfers without being able to spend them. That makes Umbra more than an address trick; it is also scanning and notification middleware.
- The SDK docs describe
withdrawOnBehalf()and a default relayer, showing that recipient privacy UX depends partly on meta-transaction infrastructure and whoever operates or substitutes for the relay path. - ERC-5564 is not Umbra documentation, but it is an important adjacent standard in this pass because it codifies a singleton announcer contract, spending/viewing key vocabulary, and non-interactive stealth-address interfaces that closely match the control surfaces Umbra helped make legible.
- The strongest comparison frame is therefore not “privacy app” but “stealth-address recipient-privacy rail with relayer-aware withdrawal design.”
- Whitepaper: No canonical standalone Umbra whitepaper or litepaper surfaced in this pass. The clearest primary materials were the official app FAQ, the repository README, and the
umbra-jsSDK README; ERC-5564 is also a useful adjacent standard for situating the mechanism; see../whitepapers/umbra-primary-sources-2026-05-11.md. - Sources:
Internal linkages
- Best mechanism baseline: erc-5564.
- Best broader privacy contrast: railgun.
- Keep the note on recipient privacy, announcement scanning, and relayer-dependent withdrawal, not on generic
privacy appbundling.
Control surface
-
Practical control sits in announcement scanning, viewing-key handling, relayer availability, contract-held token withdrawal, and which wallet or service runs the recipient-discovery path.
-
Umbra is small but useful because it makes the stealth-address rail visible without pretending to solve full transactional privacy.
-
Last reviewed: 2026-06-10 UTC