Zero-Knowledge Commit-Reveal Groth16

Coming soon. This feature is built and on the AERE roadmap, its on-chain contracts are not yet deployed. Actions are disabled until launch.

Real ZK system on AERE Network. The circuit is preimage.circom (453 non-linear constraints). Trusted setup: BN254 + Powers of Tau (2^10) + Groth16 ceremony with 1 contribution. Solidity verifier at 0x94AF…c29F, registry contract at 0x34F7…A299. The proof is generated in your browser using snarkjs.wasm. Use cases: anonymous DAO voting, mixer commitments, anonymous airdrop claims.

Registry status

Total commitments,
Total claims (proofs verified on-chain),
Verifier contract0x94AF0740ad4b149F0bb860b0Dda61027322Bc29F
Commitments contract0x34F7b38dDC6b9d4f2ADC165AcF2b22B2349AA299

Commit + Reveal Flow

Step 1 · Generate a (secret, nullifier) pair

Your secret stays in this browser. The nullifier is revealed later (as a hash) so each commitment can only be claimed once.

,

Step 2 · Compute Poseidon commitment + nullifier hash

Real Poseidon-2 hash from circomlibjs running in your browser.

,

Step 3 · Submit commit() on-chain

,

Step 4 · Generate Groth16 proof browser-side

Loads preimage.wasm (~2 MB) + preimage_final.zkey (~250 KB) and produces a real proof. Takes 1-5 seconds.

,

Step 5 · Submit claim(), verifier executes BN254 pairing on-chain

,

How this is real