Two chain IDs
Veilify always works with two distinct chain IDs. Mixing them up breaks signatures.
Every Veilify deployment gets its own virtual chain ID, so signatures can never be replayed across deployments.
What the proxy does
- Writes
- Reads
- Veilify methods
eth_sendTransaction and eth_sendRawTransaction are intercepted. The proxy decodes the transfer:- native ETH:
{ chainId, to, value } - ERC-20:
{ chainId, to: token, data: transfer(recipient, amount) }
Where the proxy runs
- Hosted: the Veilify Network endpoint. Simplest. The operator can see your private history, because it holds your viewing key.
- On-device (planned): browser extension or mobile app. Your viewing key never leaves the device.
Adding Veilify Network to a wallet
The app requests the network withwallet_addEthereumChain, using the values from veilify_getChains:
The chain ID and RPC URL are published at launch on Deployment Addresses.