-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Abstract
Devs are needed to create an anonymous survey system using Zero Knowledge.
Context
ETH KIPU think tank recently did a community survey. Although the results are very nice and useful, they are hosted in a traditional database. This means that sensitive information is hard to verify. ZK technology can help making this information accessible, anonymous and verifiable.
- First we would need a list of survey participants. We'll use this list as a whitelist embedded in a merkle tree.
- Then we'll create a circuit that verifies merkle tree membership and that is able to cast a survey response proof.
- We'll also need a smart contract that verifies and stores all the results submitted on a contract state.
- Finally we'll need a relayer that is able submit the proof to the contract to preserve the users anonymity and also pays for their gas
I think this work can be achieved by combining this tutorial about zk voting and this backend example to submit transactions on-chain, also this circuit that supports ECDSA signatures and finally this tutorial that uses the EIP 712 to sign transactions and provide a good UX.
What is needed
Devs to develop the surveys circuit, contract and relayer. I would prefer if this is done using Noir because it has easy ECDSA support and the Aztec team is very active. Also a website frontend, ui, ux, wires, mockups. And also talk with Francis at ETH Kipu to the viability of making this happen with the help of ETH Kipu.