Please use a larger screen for the best experience on zkVot.

How it works?

Face 1

Let's say you and your friends at the office want to make a decision together. You want to vote on a proposal, but you want to keep your votes secret from each other. You also want to make sure that the votes are counted correctly. zkVot makes this possible, but how?

Your friend Necip creates an election via zkVot app by providing a list of voters, options, and a question.
(on Mina blockchain, we'll explain why)

Face 2
Face 3

You see you are a voter in the election, and you want to vote.

You select the option you want to vote for, and you create a zk-proof with a click of a button in app.

Face 4
Why zkProof
Blue Question Mark

Why do we need a zk-proof? Because the generated zk-proof shows

that someone who is eligible to vote, voted for a specific option

without revealing the voter's identity. This is the magic of zk-proofs.

Faces Circle

Is it done?

No, you submit your vote proof to a place where anyone in the world can see it. Remember that it doesn't reveal your identity, but it shows that someone voted for a specific option.

Now who will count the votes? The answer is simple: everyone who wants to count the votes. Since all the votes are public, anyone can count the votes. (even you)

Thinking Faces

The counters read all the vote proofs, and they verify that the zk-proofs are valid. They combine the valid proofs and generate a final result zk-proof. This final result cannot be faked with fake votes, and it shows the final result of the election. (example: 10 votes for option A, 5 votes for option B)

Votes Mina Amount

All counters now have their own final result zk-proof. How do we know which one is correct? We don't, zkVot does. Remember that the election was created on Mina blockchain? People submit their final result to Mina where election was created.

The election created on Mina blockchain is designed to accept only the zk-proofs that are valid.

So we eliminated the invalid results, but still, we have multiple valid results. Which one is the final result?

Since counters can create a final result proof that only includes the votes they prefer, we need a way to select the final result that is fair to everyone.

It's simple, whoever has the most votes in their final result proof wins. This is the final result of the election.

All Counters

Hooraay! You and your friends made a decision together fully privately and securely.

Faces Line