Skip to content

This project demonstrates a secure single-click identity verification system using zk-SNARKs and MPC. The system utilizes JavaScript, Solidity, and Circom to provide a seamless and private identity verification experience.

Notifications You must be signed in to change notification settings

KishanVyas308/BlockForge

Repository files navigation

Secure Single-Click Identity Verification using zk-SNARKs and MPC

Introduction

This project demonstrates a secure single-click identity verification system using zk-SNARKs and MPC. The system utilizes JavaScript, Solidity, and Circom to provide a seamless and private identity verification experience.

System Design

Components

Circom: A circuit compiler that generates zk-SNARKs proofs. Solidity: A programming language for writing smart contracts on the Ethereum blockchain. JavaScript: A programming language for client-side interactions and proof generation.

Problem Statement

The traditional way of using KYC takes 1-2 days for verification and is centralized, raising privacy concerns due to data duplication and potential identity theft.

WhatsApp Image 2024-09-15 at 12 53 45_b628175a WhatsApp Image 2024-09-15 at 12 55 31_391eb855 WhatsApp Image 2024-09-15 at 12 56 22_448332ca image

Use of SBT

We use SBT (Soul-Bound Tokens) for identity issuance. SBTs are non-transferable NFTs that represent an individual's identity, ensuring it cannot be stolen or lost.

Use of ZKP

For identity verification, we utilize zk-proofs, which enable the verification of data without revealing the actual data. This ensures that the organizer can verify the identity without accessing the underlying data, thereby maintaining privacy.

Use of MPC

We introduce Multi-Party Computation (MPC) as a second layer for KYC verification. MPC allows for the sharing of data with multiple parties without revealing the actual data. In our project, MPC is used to request acknowledgments from multiple parties about a user's relevant data, such as insurance policies.

WhatsApp Image 2024-09-15 at 12 58 10_95f68123 WhatsApp Image 2024-09-15 at 12 58 37_717cb0fb WhatsApp Image 2024-09-15 at 13 01 12_27a7a215

For example, if a user has insurance policies with BOB, SBI, and ICICI, and purchases another policy from HDFC, during KYC verification, the system checks the user's age and existence. Additionally, it obtains acknowledgments from the parties involved to prevent fake insurance claims and fraud.

This concept can be applied to other domains as well.

Tech Stack

We utilize the smart rollup of Tezos and Etherlink Chain, which offers:

  • Low block confirmation times
  • L2 Blockchain
  • This tech stack enables fast and secure identity verification while maintaining user privacy.

About

This project demonstrates a secure single-click identity verification system using zk-SNARKs and MPC. The system utilizes JavaScript, Solidity, and Circom to provide a seamless and private identity verification experience.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published