About
ZKGate.fun is a lightweight experimental system to prove group membership via Zero Knowledge Proofs without exposing your EVM address, while still ensuring the prover actually owns the address (via EVM signature binding).
This project is a demonstration of combining:
- Sparse Merkle Tree (SMT) membership proof
- zkSNARK (Groth16) verification on-chain
- EVM signature verification binding the proof to the signer
Features
- On-chain verifier generated by Circom & snarkjs
- Off-chain proof generator using CircomlibJS
- Combines ZK proofs with address signature (prevents proof hijacking)
- Fully local setup with Anvil, Hardhat, Circom
Repository
View the full project and source code on GitHub:
Get Started
See the README.md
in the repository for detailed setup, proof generation, and contract deployment steps.
Example workflows include:
- Generate Merkle proof & inputs
- Compile circuits & setup trusted ceremony
- Deploy verifier & registry
- Submit proof + signature via on-chain call