Broadcasters & Relaying
How transactions are submitted privately through the Waku network.
What is a broadcaster?
A broadcaster is an independent operator who submits RAILGUN transactions on behalf of users. When you use broadcaster mode, the zero-knowledge proof generated in your browser is sent to a broadcaster, who then submits the unshield transaction to the blockchain. Your public wallet address never appears on the transaction.
This is the key mechanism that protects sender privacy on the unshield side. Without a broadcaster, you would need to submit the transaction yourself, which links your public address to the withdrawal.
The Waku network
Broadcasters are discovered through the Waku peer-to-peer messaging network. Waku is a decentralized communication protocol — there is no central server. When the app starts, it connects to the Waku network and listens for broadcaster fee advertisements.
Each broadcaster publishes the tokens they support, the chains they operate on, and the fees they charge. The app discovers available broadcasters automatically and selects one when you initiate a transaction.
The app monitors Waku peer health continuously. If peer connections drop to zero for three consecutive checks (~45 seconds), the broadcaster client automatically restarts to re-establish connections.
Fee structure
Broadcasters charge a fee for their service, deducted directly from your shielded token balance. The fee covers the gas cost of submitting the transaction plus a margin set by the broadcaster operator. Different broadcasters may charge different fees.
When the app selects a broadcaster, it factors in the fee. The amount that arrives at the recipient will be your shielded balance minus the broadcaster fee. This is why the received amount may be slightly less than what was originally shielded.
Trustless by design
Broadcasters cannot steal your funds. The zero-knowledge proof specifies the exact recipient and amount for the unshield — the broadcaster can only submit it as-is or refuse. They cannot modify the transaction parameters, redirect funds, or access your private key.
If a broadcaster fails to submit your transaction (goes offline, rejects it, or times out), the app will detect this and you can retry — either with a different broadcaster or using direct mode. No funds are at risk.
When no broadcasters are available
Broadcaster availability depends on the chain and token. Occasionally, no broadcasters may be online for your specific combination. When this happens, you have two options:
- •Wait and retry — broadcasters come and go; one may become available within minutes
- •Switch to direct mode — you submit the transaction yourself using your own gas; this is cheaper but your address is visible on the unshield
Direct mode: the privacy tradeoff
In direct mode, you submit the unshield transaction from your own wallet. This means your public address appears as the transaction sender on the blockchain. The shield side is still private — no one can link the original deposit to this withdrawal based on the pool alone — but your address is associated with the unshield event.
Direct mode is useful as a fallback when no broadcasters are available, or when you want to save on fees and accept the reduced privacy.