Halo2-KZG
Uses the public Powers of Tau setup, not a custom launch ritual you have to trust.
Stop leaking your portfolio every time you pay. Shield ETH or USDT, send privately by Nox ID, and unshield to a fresh wallet. Every proof runs locally in your browser and is verified on-chain.
Uses the public Powers of Tau setup, not a custom launch ritual you have to trust.
Sparse Poseidon cuts gas ~22% versus reference Poseidon, with the same outputs and no proof changes.
Multi-threaded proving runs locally, so note secrets do not leave your browser.
Notes enter the Merkle tree immediately and are spendable after confirmation. No aggregator, no batch queue.
The app is organized around normal payment actions, not protocol ceremony. Shield, Send, Receive, and Unshield each map to a concrete on-chain flow.
Deposit ETH or USDT into the pool. The contract reconstructs the note commitment from the actual asset and value, then inserts it into the Merkle tree.
Transfer privately to a Nox ID or meta address. The proof hides the sender, recipient note, and amount while preserving balance correctness.
Share a standard Nox ID, a diversified receive address, or a pay link. Incoming notes are encrypted so the recipient can auto-discover them.
Withdraw to any Ethereum address. Use direct withdrawal or the relay for gasless UX when the destination wallet starts empty.
Nox wraps stealth meta-addresses in wallet-native surfaces: a readable Nox ID for repeat contacts, and custom pay links for invoices, people, or one-off deposits.
Create a separate link for one person, invoice, or counterparty.
Human-readable names resolve to stealth meta-addresses, so users can share "wintermute" instead of a long cryptographic payload.
Reusable and custom links let anyone deposit to your private balance from a simple URL, without learning the underlying note format.
One identity per counterparty. Hand a different receive address to each invoice, friend, or service. All derived from the same seed, but unlinkable even if recipients compare what you gave them.
If we vanish (frontend, relay, prover, all of it), anyone holding their seed can withdraw funds directly from the contract by forfeiting privacy. No team, no upgrade, no permission required.
The supporting services make the wallet feel fast and recoverable, but the contract remains the source of truth for funds, nullifiers, roots, and emergency exits.
Withdraw to a fresh wallet that has zero ETH for gas. The relay broadcasts on your behalf and takes its fee from the shielded balance. It never touches your funds and never sees your seed.
Monitors sanctioned deposits, exposes pool stats, and helps wallets sync the Merkle tree faster. Fully optional. The contract is the source of truth, the sentinel just makes browsing it easier.
The commit-reveal trapdoor lives in the immutable contract. Users keep custody no matter what happens to the team. Privacy is sacrificed, but the funds always come home.
Sepolia gas, on-chain IMT insert
real Halo2-KZG proof with change
real proof, 16 public inputs
Nox aims for the useful middle: wallet-grade UX, private transfers, arbitrary amounts, and an explicit path to immutable contracts.
| Dimension | Nox | Tornado Cash | Railgun | Privacy Pools |
|---|---|---|---|---|
| Model | UTXO JoinSplit | Fixed-denomination mixer | UTXO JoinSplit | Association-set pool |
| Amounts | Arbitrary | Fixed denominations | Arbitrary | Arbitrary |
| Deposit gas | ~583k | ~1.1M | ~1.2-1.5M | ~300k est. |
| Withdrawal gas | ~966k | ~300k | ~500k | ~350k est. |
| Anon set | Global, arbitrary amounts | Per denomination | Global per token | Per-asset, curated subset |
| Settlement | Instant, next block | Instant | Instant | Pending approval queue |
| ZK system | Halo2-KZG | Groth16 | Groth16 | Groth16 |
| Trusted setup | Universal Powers of Tau | Circuit-specific phase 2 | Circuit-specific phase 2 | Circuit-specific phase 2 |
| Private pay links | Yes | No | No | No |
| Handles | Yes | No | No | No |
| Private memos | ECIES | No | Yes | No |
| Multi-token | ETH + ERC-20 unified pool | ETH + ERC-20 separate pools | ETH + ERC-20 shared pool | Segregated per-asset pools |
| Compliance | On-chain ASP in proof | None | Viewing keys | Off-chain ASP + approval queue |
| Emergency recovery | Batch escape hatch | No | No | Ragequit exit |
| Browser proving | ~20s WASM | ~15-30s | ~60-120s | ~10-20s est. |
| Protocol fee | 0% | 0% | 0.25% | 0% |
Connect a Sepolia wallet, create a Nox ID, and run the full private payment loop in a few minutes.