/zk-priv-vote

Primary LanguagePythonMIT LicenseMIT

Zero Knowledge Private Voting

In this project we propose an anonymous voting protocol that conceals the vote of each participant from all other participants (except the contestant voted for), and design an e-voting system that implements this protocol for leader elections. A public key encryption system is used to ensure anonymity of votes, and a zero-knowledge proof system is used to ensure verifiability of results.

Our system is compared against a non-anonymous baseline, to determine the costs involved in en- suring anonymity and verifiability. We also propose an alternate solution that uses a homomorphic encryption system and guarantees more anonymity, but do not discuss any implementation details.