Skip to main content

The ZK Proving Stack

ZENDEX constructs its privacy infrastructure using modern zero-knowledge tooling:

  1. Noir DSL: All business logic, cryptographic checks, balance constraints, and signature verifications are defined in Noir zero-knowledge circuits.
  2. Barretenberg Backend: Circuits are compiled into bytecode and processed by Aztec's Barretenberg proving engine using UltraPlonk constraints.
  3. Solidity Verifier Contracts: Barretenberg exports single-purpose Solidity verifier contracts deployed on-chain to validate proof submission gas-efficiently.

By adopting UltraPlonk, ZENDEX eliminates the risk of per-circuit trusted setups associated with Groth16 while maintaining small proof sizes and low verification gas costs on the Horizen EVM.

Proofs for Each Private Action​

Each private action needs two proofs, generated in your browser:

  • an inclusion proof that your note exists in the vault, without saying which one it is;
  • an action proof that the swap, order, split, join or withdrawal follows the rules, for example that the amounts add up.

Generating proofs takes from a few seconds to a minute, depending on your device. Keep the tab open until the action completes.