priveasyVoting
priveasyVoting is a simple, versatile solution for private voting. Offering a variety of voting resolution styles, multiple ways to determine voting eligibility and able to be used by everyone.
Created on 19th May 2024
•
priveasyVoting
priveasyVoting is a simple, versatile solution for private voting. Offering a variety of voting resolution styles, multiple ways to determine voting eligibility and able to be used by everyone.
The problem priveasyVoting solves
Problems Solving
- Public voting: On public blockchains, voting data can be seen at any point. This reveals what individual addresses are voting for. Additionally, subsequent voters can see what prior users have voted for which can bias their decision.
- Restrictive voting styles: Traditionally blockchain voting models have had to stick to simplistic systems such as First Past the Post due to computational overhead incurring excessive gas costs. On zkSync, the chain is scalable enough to facilitate more complex voting styles that arguably come to a better consensus such as Ranked Choice Voting, Single Transferable Vote and Quadratic Voting.
- Only available for blockchain users: In order to vote on a blockchain, users had to already have a blockchain wallet and funds to pay for the voting transaction. zkSync's native account abstraction is leveraged to allow social logins and a Gasmaster is deployed to fund their transactions. This massively lowers the barrier for entry, as users simply need an email to receive their unique voting code.
Use Cases
priveasyVoting is a flexible protocol that can be adapted for a wide range of use cases. In it's current form, there are multiple ways to allow blockchain and non-blockchain users to vote. The protocol could very easily be utilized to enable sending voting links via alternative sources such as through social media or SMS.
Challenges we ran into
- There were issues with getting the frontend to consistently function correctly. Performing the same action could either result in a successful or failed tx. Attempted to debug as thoroughly as possible to get a proof of concept ready to demo.
- Attempted to use txTsuko for an easy integration of a gasless paymaster on zkSync, but found that they were not deployed for use on the testnet. Instead, deployed a simple GeneralPaymaster and funded it.
- Encountered issues with integrating social logins with web3auth, which supports account abstraction for EIP-4337 models but currently not compatible with zkSync's native account abstraction. For now, we implemented a rudimentary mock implementation.
Tracks Applied (5)
Global Bounty
Aleph Zero
Product Path
Aleph Zero
Best cryptography for society
Nethermind Research
Best ZK Application deployed on zkSync
zkSync ∎
Prizes for Finalists, Hackers' Choice & Chewing Glass
Cheer Project
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.
Discussion
Builders also viewed
See more projects on Devfolio