Home

Awesome

zk-KYC App

This project is supported by a grant from the ZK Grants Round funded by Aztec, Ethereum Foundation, Polygon, Scroll, Taiko, and Zk Sync.

This repository comes with a blog post that provides more details about its content and the concepts.

Description

The zk-KYC app implements a privacy-preserving KYC process using zero-knowledge proofs (ZKPs). The app comprises a set of zero-knowledge circuits and a front-end application that enables users to prove and verify the validity of KYC checks without revealing sensitive data.

KYC checks

The app demonstrates the following zk-KYC building blocks using Noir:

How It Works

  1. Proof Generation: The prover inputs private values into the app. The app uses NoirJS to generate zero-knowledge proofs that these values meet the KYC criteria.

  2. Proof Verification: The prover copies the generated proof and shares it with the verifier. The verifier can independently verify the proof using their part of the app without accessing the prover's actual data.

  3. Data Privacy: The verifier only receives the zero-knowledge proof, ensuring that the prover's personal data remains private.

Development

Compile the circuits

make compile

Install app dependencies

make install

Run app locally

make start