zkVot is a client side trustless distributed computation protocol designed to achieve anonymous and censorship resistant voting while ensuring scalability. The protocol is created as an example of how modular and distributed computation may improve both decentralization and scalability of the internet.
zkVot brings various distributed layers (e.g. blockchains), zero knowledge proving technology, and client side computation together to make most of the distributed value on an actual use case. By implementing this project, our main goal is to show that the technology is ready, and it is just a matter of time and perspective to bring decentralization into the life of the actual end user.
Even though some solutions presented here may seem specific to a voting application, actually it is possible to extend concepts across different domains and solve various problems by embracing the same approach. And with this consideration, maybe it is even more appropriate to describe zkVot as a protocol more than a product: In an internet that is fully designed on top of censorship resistant layers and distributed computation, zkVot is one of the first utilizers of a transfer protocol that we want to create with the hope of a better internet.
See here for the full draft article of zkVot.
This repository includes these parts of zkVot:
- Application for voters and election creators
- CLI for aggregators
- Backend for UX purposes