zkMoku
Secret White List app using Zero Knowledge Set Membership. We prove only belonging
Screenshots




Problem Statement
Provides an SBT that allows user to prove that user has certain attributes without having to show certain specific things. For example, you can prove that you voted but not which way you voted, or you can prove that you like fruit but keep secret which fruit you like. Others are included in the whitelist but do not reveal who they are, so you can check your rights while maintaining your privacy.
Solution
This ZkMoku consists of three components.The first is the webfront end. This simply communicates with the server to use ZkSM and with Polygon Chain to handle Contracts.It consists ofReact / Nextjs / Ether.js / SIWE / Wagmi etc. It communicate with Go server using gRPC/Protobuf with Connect-Go.The second is Solidity. It is a simple ERC721 based class. However, Json of Metadata is managed by OnChain. I managed contract using HardHat.The last is a Go server to run zkp SetMembership, which is the core of this project.The core of this project is a technology called Zero Knowledge Proof for Set Membership. https://eprint.iacr.org/2019/1255.pdfThis is a technology that can prove membership, but keeps any of the members secret. This allows for various use cases such as being on a whitelist but not knowing which one you are.
Hackathon
ETHGlobal Tokyo
2024
Prizes
- 🏆
🏊♂️ Polygon — Pool Prize
Contributors
- MizukiSonoko
36 contributions