Private Transactions on Ethereum

Send and receive tokens without leaving a trace. ZK Wormhole Protocol let users burn and re-mint anonymously using zero-knowledge proofs.

Inspired by EIP-7503: Zero-Knowledge Wormholes

How It Works

Burn

Transfer zk wormhole erc20 to a precomputed dead address making them permanently inaccessible and lost forever.

Prove

Use SP1 zkVM to prove you can precompute the dead address and sent enough funds to it.

Mint

Validate the proof on-chain via relayers and mint the tokens to a different recipient address.

Wormhole Privacy Visualization

How ZK Wormhole Protocol Ensures Privacy

Inspired by EIP-7503: Zero-Knowledge Wormholes, a proposed standard for private token transfers on Ethereum.

The ZK Wormhole ERC20 token standard enhances transaction privacy by breaking the on-chain link between sender and receiver. Tokens are sent to a precomputed unspendable address (which looks like a standard 0x address). Users can later re-mint the tokens, even partially, by providing a zk-SNARK proof using the succinct.xyz SP1 zkvm.

The zk-SNARK proof validates the following:

  • The sender knows the precomputed dead address.
  • The sender can compute the dead address using CREATE2 based on the SP1 program, where:
    • The sender and bytecode are fixed.
    • The salt is calculated from the depositor's secret.
    • The sender has sent enough funds to the dead address.

Anyone can re-mint the tokens to a recipient address validating the proof on-chain, making the transaction untraceable.