Blog

Blockchain services as a further step in e-voting

Collective decision-making is an important part of social progress. Since ancient times social life relies heavily on collective decisions. And this process hasn’t changed much, it has always been expensive and difficult to organize. National elections are a striking example here. Hundreds of millions of ballots, thousands of polling places, and numerous officials to be responsible.

Even a smaller audience is hard to be gathered for voting. You need to find a time slot that fits everyone, provide a polling place, many different print copies, and send reminders to all the participants. This can be hard even for a small group of neighbors because you might not find everybody at their places on the first, on the second try, and so on.

At the end of the XX century, online voting instruments began to gain popularity. Most of them are free, and the people can vote remotely, so you often don’t need money at all to organize such a poll.

But what is usually most important for official voting is not the cost, but the immutability and transparency. E-votings here yield to the traditional paper polls. There are many ways to ensure ballot security and fair counting for a paper poll, and they are used depending on the exact case. In e-voting, we fully rely on a “black box”. This is not about technical impossibility — this is about economic infeasibility of the operator’s interfering with clients’ business processes. It’s just a user agreement that usually protects us here.

It is enough for daily issues, like where to go for a company party or what to buy for a colleague’s birthday. But in economics, politics, and other strictly regulated fields, any collective decision-making is too important. Traditional e-voting services do not meet such high demands in transparency and credibility.

The covid pandemic has aggravated this problem today when any offline meeting is a threat to its participants. But the situation is changing with new instruments of e-voting, based on cryptography and blockchain. They do provide all the advantages of online voting and the credibility level of secured paper polls.

Blockchain-based e-voting services

There is a number of blockchain-based e-voting services on the market, and we’ll take a closer look at them on the example of WE.Vote, developed by Waves Enterprise.

WE.Vote looks like a usual web service for online voting. In the web interface, a poll administrator creates a new poll, sets up e-ballots, and adds e-mails of the voters. Then the e-ballots are sent to the voters, the system counts the votes and provides a report with the poll results. As you see, everything is like in traditional polls.

To explain the difference from traditional voting services, we’ll dive deeper into the mechanisms of WE.Vote. Don’t worry, we’ll make it understandable even for readers without IT experience.

Storing data in blockchain

Traditional e-voting services are based on a standard IT architecture, where all the data is stored on a single provider’s server. In blockchain voting, the data with all its change history is stored at many independent and synchronized servers at the same time.

It means that the service provider is unable to change neither the poll basic information nor its e-ballots. To fake the results, you have to hack at least more than a half of voters’ devices at the same time — this is close to impossible. And even if you do it, you won’t be able to verify your fake results — the poll will be impeded because your results won’t pass blockchain integrity check. All of it is far less possible than losing data during traditional online polls, in a consolidated operator’s infrastructure.

For storing data WE.Vote is using Waves Enterprise main network, which consists of more than 40 independent nodes. Poll data is accepted, checked, and stored independently within each node. Poll observers can be provided with special instruments to ensure there were no violations. All the confidential poll data is stored separately, and it’s available to authorized poll administrators. They can’t impact any poll that has already been started, they can only stop it, if such an option has been enabled before.

Smart contracts

A smart contract is a computer algorithm that translates poll conditions to the language of blockchain network. WE.Vote is using smart contracts for its smart ballot box. Without accessing ballot data, it can check validity of its sender, data format, and even its relevance to the poll logic. So if your account is not included in the list of voters, which had been created before the poll, you won’t be able to participate anyway. Also, you can’t sabotage the poll by sending more than one vote — the service will figure it out even before counting results.

Smart contracts here play the role of independent observers, which automatically prevent any violations. In offline voting, you’d need a special group of people for that — subject to “human factor” and all the problems connected. And in traditional, not blockchain-based distant votings there are no observers at all: you have to design your voting very carefully and then rely on the provider’s “black box”.

Crypto algorithms

All the poll data in WE.Vote is secured by crypto algorithms. They encrypt both poll data and the choice of the voters. This information is always transferred in encrypted form since a voter clicks his ballot till the results are counted. The encryption keys are not available for the blockchain operator. Only after the results were counted, the service decrypts the total sum. This is possible thanks to the homomorphic encryption technology used in WE.Vote.

In paper voting, it’s almost impossible to support such a level of ballot secrecy. As for centralized e-voting services, their operators can potentially track any vote.

Functionality of blockchain polls

Blockchain-based online polls are so technically advanced that you can doubt if this doesn’t restrict its functionality. In fact, you can implement any poll logic in smart contracts. In addition to simple polls, WE.Vote includes weighted voting, where you can set a relative weight of any voter. Also, you can set a poll quorum, choose a voter with a casting vote, and in general set up everything according to the rules of your organization.

Criticism for e-voting

Some experts argue against e-voting. One of the most complete reviews here is provided by a famous blogger Tom Scott in his video published in 2019. Let’s analyze Tom’s arguments:

  • “E-voting lacks anonymity”. In blockchain voting, homomorphic encryption can ensure total anonymity, as described above.
  • “E-voting lacks trust”. We can verify blockchain voting credibility with special instruments for observers. To know how it’s done, for example, at Russian federal elections, check out this post by an independent IT professional.
  • “E-ballots can be easily changed or corrupted”. In WE.Vote blockchain polls, a user vote is encrypted right on the user’s device, so it gets protected even before it gets transferred. And the system itself is unable to decrypt and change the votes due to a lack of a common private key of decryption.
  • “Source data of an e-voting can be modified to confuse the voters”. The source data of blockchain-based e-voting is being encrypted and put into blockchain right after it was created. Read the “Storing data in blockchain” section above to see that it’s absolutely safe there.
  • “Voters don’t know if their votes are counted”. Any participant of blockchain e-voting can verify that transactions with his key were stored into blockchain — that means his vote was counted. Also, in the post we mentioned above, you can check how the total number of votes is verified.
  • “Attacks on e-voting can be easily scaled”. Requirements for hacking a blockchain poll were described in the “Storing data in blockchain” section above. The chance of hacking enough devices to even break, not fake a blockchain voting is far, far less than the chance of faking enough paper ballots to fudge offline poll results.
  • “The central counting server is a weak point anyway”. Yes, we agree with Tom here, centralized e-voting solutions are not reliable enough. That’s why we use distributed architecture for the most important, most critical functionality of WE.Vote.
  • “The interface between the voter’s intention and what’s written in the database is a weak point”. In our service, a voter makes his choice and encrypts it locally, so no one is able to track his exact choice. Meanwhile, a voter can always find his signage in the blockchain history to ensure his vote has been counted.

Blockchain voting: world experience

The legislation is moving towards e-voting in many fields. At the national level, remote e-voting is used in many countries around the world. Brazil has been working with online voting since 1996 and is now experimenting here with new technologies, including blockchain, within the “Eleições do Futuro” project.

Waves Enterprise is participating in the pilot run of “Eleicoes do Futuro in 2020”. Source

In the state of West Virginia, Voatz e-voting app was used in elections in 2018, though after two years it was declined. The reason was the cybersecurity vulnerabilities found in the process before the app puts the votes into blockchain for storage. The Thai Democrat Party has also used blockchain e-voting to elect its leader. Finally, a blockchain-based e-voting system based on our technologies has been used for two years during the federal elections in Russia, and it has successfully processed more than 600,000 votes in 2021.

Also, blockchain-based e-voting services have already proved themselves in dissertation committees of some universities. Steklov Mathematical Institute of Russian Academy of Science, Samara State Agrarian University and other universities are using WE.Vote.

In other cases, blockchain-based e-voting is used to guarantee immutability of votes. WE.Vote was used to choose the winners of some prestigious awards in Russia, including “Digital lawyer of the year” and “Treasurer of the year”.

The pandemic has given a large boost to online voting, which is allowed to be used in many fields today. There are many tools for e-voting available, but among them, it’s only blockchain-based services that meet the highest standards for security and transparency.