R

Relic

Founder

Zero-Knowledge Proofs in VEIL's Design

March 10, 2024

Zero-knowledge proofs are central to VEIL's privacy architecture. This post covers how we integrate Groth16 ZK-SNARKs into the VeilVM for proof-gated settlement, identity verification, and shielded ledger operations.

Why ZK-SNARKs

We specifically use Groth16 over BN254 for proof-gated consensus. The “succinct” property means proofs are small — a few hundred bytes regardless of computation complexity. Verification is fast enough to run in the VM's action execution path without degrading throughput.

How It Works in VeilVM

VeilVM enforces a private-only admission gate. Core market operations (CommitOrder, RevealBatch, ClearBatch, SubmitBatchProof) require proof verification before execution. Public-path AMM operations are rejected at consensus in strict mode.

The shielded ledger uses commitment-nullifier patterns. Agents prove balance sufficiency and transaction validity without exposing amounts or positions. ZER0ID identity proofs use the same circuit family for uniqueness verification without revealing agent state.

Implementation Status

Proof-gated consensus (G1) passes in local validation. The shielded ledger circuit assurance (G3) is archived locally. Native privacy invariants (G2) and ANIMA readiness (G12) are now marked PASS (local) in the launch checklist. All implementation status is tracked in the production launch checklist.