How it works

Private by design.

Compliant by default.

Deposit

01 /04

Transfer tokens to an unspendable address derived from your secret. Looks like a normal ERC20 transfer—indistinguishable from regular transactions.

Poseidon2 hashVirtual burnAny ERC20

Prove

02 /04

Generate a ZK proof that you know the secret and have balance. The proof hides which chain, which token, and which address you deposited from.

Groth16Merkle proofConfidential set

Attest

03 /04

Get a compliance signature from Union. We see source and destination for audit—but only we do. Nothing is linked on-chain.

Off-chain KYCAudit trailRegulatory ready

Redeem

04 /04

Withdraw to any address on any supported chain. A nullifier prevents double-spend without revealing your identity.

CrosschainPartial redemptionsInstant

Zero-knowledge prover

Prove without revealing.

Generate a Groth16 proof that you own funds—without revealing which chain, which address, or which deposit. The proof verifies balance ownership while the source stays hidden in the confidential set.

Run your own prover for maximum privacy. Self-hosted provers never see your witness data leave your infrastructure.

input: secret, amount, beneficiary
output: groth16 proof
zk-prover ● computing
groth16 ~8s

Use cases

Built for real workflows.

Private transfers for payroll, treasury, OTC, and more. Same privacy guarantees, any use case.

employee_1: ████████

employee_2: ████████

employee_3: ████████

total: $847,000

Payroll

Batch payments to employees without exposing individual salaries. Each recipient gets a unique nullifier—no links between payouts.

dao.eth → ?

amount: $2.4M

destination: ████

status: private

Treasury

Move DAO funds across chains without revealing strategy. Deposit on one chain, redeem on another—source hidden in the confidential set.

size: $4.2M

slippage: 0%

market impact: none

OTC

Execute large trades without market impact. Virtual burns look like normal transfers—no signals for front-runners.

from: client.eth

to: ████████

holdings: hidden

Payments

Send or receive without linking wallets. Partial redemptions let you pay exact amounts from your private balance.

binance → ████

████ → uniswap

correlation: 0%

CEX/DEX

Break the link between centralized and decentralized accounts. Deposit from CEX, redeem to DEX—no correlation possible.

owed: 50,000 USDC

from: ████████

settled: private

Settlements

Close positions privately. ZK proofs verify you have the balance—counterparties never see your full holdings.

Attestation layer

Encrypted always.
Decrypted if needed.

All attestation data is encrypted at rest. Decryption only happens for compliance or audit—and only when legally required. On-chain, there's nothing to link.

Or run your own attestor. Enterprises and institutions can self-custody their compliance data—you control the keys, you control access.

Source address: encrypted
Destination address: encrypted
Additional info: encrypted
On-chain link: none
attestor.union.build ● live
idsourcedeststatus
6e716dae████████████████
dd066fe4████████████████
347b30cc████████████████
60fa65d2████████████████
34ee4567████████████████
f6063e7a████████████████
dc538441████████████████
a0748d15████████████████
8 attestations public: 0 fields

// stored encrypted

source: AQCoSOqCaNKa6cZ...

destination: AQBnhbTCcHegOEF...

metadata: AQDPF1XZwoiw8gN...

// decryption requires legal process

Features

Everything you need.

Private crosschain transfers with built-in compliance. No compromises.

01

Anonymity set

Your withdrawal proves membership in a set of all deposits across all chains—without revealing which one is yours. The more deposits, the stronger your privacy.

02

Compliant by design

Privacy and compliance, not either/or. Attestor holds encrypted data—decryption only with legal process.

03

Virtual burn

Deposits go to unspendable addresses derived from your secret. Looks like a normal transfer—indistinguishable on-chain.

04

Self-custody

Run your own prover and attestor. Enterprises control their own keys—compliance data never leaves your infrastructure.

05

Flexible withdrawals

Withdraw any amount, not fixed denominations. Each withdrawal uses a unique nullifier—no link between your own transactions.

ready to start?

Move money privately.

ZK-verified on-chain. Compliant off-chain. Crosschain from day one.

Compliance Required

By using this service, you acknowledge that you are responsible for complying with all applicable anti-money laundering (AML), know-your-customer (KYC), and sanctions regulations in your jurisdiction.

Lawful Use Only

This service is intended for lawful privacy protection, not for concealing illegal activity.

Regulatory Cooperation

Encrypted compliance data may be decrypted pursuant to valid legal process.

Sanctions Compliance

Not available to persons or entities subject to OFAC or other applicable sanctions.