E-voting on the Tangle
The full article was originally published by Samuel Rufinatscha on Medium. Read the full article here.
Traditional voting systems have been around for a very long time. The idea is simple, you have some people that stay near the urns, people vote and at the end those persons have to count everything and see the turnout of that vote. There’s also mail based voting, which means you receive an envelope, vote and then you send it back. But both systems can be influenced by third parties, and are not reliable. Votes can easily be altered or eliminated behind closed doors. Not only that, also the transport of votes isn’t safe, as someone can get access to them or some of them can be lost. Moreover, people have to travel and waste time just to go and vote. A lot of them don’t do that, which is why the voting percentages are pretty low nowadays, at least when compared to a decade or two ago. And on top of that, the traditional voting system is expensive. It requires a lot of money invested in the infrastructure.
Electronic voting (e-voting) is intended to facilitate the process while ensuring security and privacy. It allows people to vote at any time and from anywhere in the world. This encourages people to state their opinion and thus increases the participation rate. In addition, it eliminates the costs for physical infrastructure.
The development of a secure voting protocol is not trivial. The following work makes use of the immutable and feeless nature of the Tangle. In addition, Masked Authenticated Messaging, one of IOTA’s most powerful modules, provides the foundation for secure data transmission .
An e-voting protocol is acceptable if following requirements are met :
The voter’s ballot must be treated confidentially. No one, not even the electoral authorities may link a ballot to the voter who casts it. In addition, a voting system shall be coercion-resistant and not allow anyone to prove that it was voted in a particular manner.
To achieve integrity, it must be impossible for a vote to be altered or eliminated. Besides that, it must be ensured that only valid votes are included in the tally.
The protocol must provide an authentication mechanism to ensure only eligible voters are allowed to vote. Therefore, a voter must be given some form of legitimacy to authenticate during the vote. In addition, the idea of “one voter, one vote” must be preserved.
There are two categories of verifiability: individual and universal.
Individual verifiability, as the name indicates, allows an individual to verify that the vote has been properly received and is part of the final tally. Universal verifiability means anyone can verify that the election was properly performed and all votes have been counted correctly. To achieve universal verifiability, the results and collected ballots are published for public viewing.