Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Continuum: Background Checker with Zero-Knowledge Proof

Continuum: Background Checker with Zero-Knowledge Proof

This is the slide of my final project at Zero-Knowledge University https://zku.one
Continuum is a background checker using Zero-Knowledge Proof to reveal personal data selectively. All the personal data are stored locally and never shared anywhere. Instead, Continuum generates the proof in a way others can not identify you. It is using zkSNARKs(groth16) for proof generation.

Tomoaki Imai

April 25, 2022
Tweet

More Decks by Tomoaki Imai

Other Decks in Technology

Transcript

  1. Problems Difficulty in proving your background pseudonymously • Traditional background

    checks can’t be done without revealing real-identity • Companies require background checks to review that the person exists but not all data is needed • Employees do not have a control of who’s holding personal data
  2. Solution Minimize exposing personal data using Zero-knowledge proof • Users

    can select what data needs to be revealed from their personal data • Company confirms the validity of the data through Zero-knowledge proof third-party background check service Blockchain Pseudonym wallet commitment of background Zero knowledge Proof Select data to be revealed Proves such that the pseudonym account is authorized by the third party and revealing data required for bg checks
  3. PoC Design • Github is used for authorization and checks.

    Users can selectively reveal their github profile data to generate proofs • Once revealed, users can mint NFT to make it visible on-chain
  4. MerkleTrees (1)Authorize and get data from Github - Data is

    stored locally and it will not be sent to anywhere (2) When revealed, the commitment hash of criteria is stored in Merkle tree Commitment hash: - Signature of user - data to reveal MerkleTree exist for every criteria - how long you are on Github - Received Stars - Followers (3) Generate Zero-knowledge proof from MerkleProof (4) verify proof and mint NFT