← Back to home

starknet-zk-verifier

A repository where I show how to use cairo and garaga to veryfy zk-SNARKS on starknet

Screenshots

starknet-zk-verifier screenshot 1
starknet-zk-verifier screenshot 2
starknet-zk-verifier screenshot 3

Problem Statement

The starknet-zkproof-verifier project demonstrates how to verify zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge) on StarkNet, a layer-2 scalability solution for Ethereum. The project involves two main parts:General ZK Verification Example: This section shows the process of generating, verifying, and using zk-SNARKs proofs on StarkNet using the Circom framework for generating zk-SNARK circuits and the Garaga tool for StarkNet integration.Starknado-Cash: This section shows an attempt to implement Tornado Cash functionality (a privacy-preserving protocol) on StarkNet, enabling private transactions. The Starknado-Cash system leverages zk-SNARKs to ensure anonymity.

Solution

I made the project using:StarkNet: A layer-2 scalability solution on Ethereum using validity proofs (zk-rollups) for scalability, where the zk-SNARK verifier contracts are deployed and proofs are validated.Garaga: A tool designed to generate and deploy zk-SNARK verifiers on StarkNet, and facilitate the process of verifying proofs on-chain.snarkjs: A toolkit for generating zk-SNARK proofs, handling trusted setups, and interacting with Circom circuits.Circom: A programming language and toolchain for designing zero-knowledge circuits.

Hackathon

ETHGlobal Singapore

2024

Contributors