Ethereum
Ethereum blockchain voting sets precedent with Moscow elections
Suffrage has been the greatest symbol of democracy, a unique way of expressing freedom. Over time, this word inspired many movements: universal male suffrage, black suffrage, and women’s suffrage, but all the movements had the same goal, the right to vote in political elections without any disparities. Our ancestors fought, held protest marches, and in some places even held hunger strike in order to be a part of the government formed by the people, for the people, and to the people.
But how often do we exercise this right? The statistics of the past elections held worldwide shows that an overwhelming majority of people failed to cast their ballots. There are various reasons for this, but it comes down to one main factor- accessibility. In this fast-moving world, everything we do is influenced by technology. However, for some reason, the electoral process continues to adhere to age-old inefficient process.
We live in a world where everything is just one click away, then why not voting? Convenience in voting is one of the main points highlighted by the US 2020 Presidential Candidate. His official campaign blog states,
“It’s ridiculous that in 2020 we are still standing in line for hours to vote in antiquated voting booths. It is 100% technically possible to have fraud-proof voting on our mobile phones today using the blockchain. This would revolutionize true democracy and increase participation to include all Americans – those without smartphones could use the legacy system and lines would be very short.”
Ridiculous? Of course, it is. When all the other industries and sectors have advanced over the years, why not the voting system? Why should we stick to an age-old tradition when all else has moved forward?
Blockchain for voting: A far-fetched dream?
In 2009, an anonymous person who went by the pseudonym Satoshi Nakamoto introduced Bitcoin – a peer-to-peer electronic cash system based on blockchain technology. A decade after the cryptocurrency and the technology was introduced to the world as the new Internet revolution, everybody wanted to buy-in.
From companies like IBM, Microsoft to banks like JPMorgan Chase, to regulatory authorities, everyone wanted to leverage this new technology for cross-border payments, supply chain, data storage and much more. One such sector this technology was poised to disrupt is the voting system.
Several claimed that leveraging blockchain technology could result in the creation of a system where people can cast their votes from anywhere in the world with just one click while maintaining transparency.
Sandeep Nailwal, the co-founder and COO of Matic Network, is one such person who believes that the voting system could be transformed by leveraging blockchain technology. He said,
“If blockchain voting was to become widespread, this would begin to highlight the real-world use cases of blockchain technology to the masses, likely leading to a hugely increased level of awareness of the opportunities blockchain can provide and will encourage exploration by actors within many industries of the benefits of blockchain for their specific needs. “
“At the moment, blockchain is a rather niche cutting-edge technology, but this is largely due to a lack of awareness and understanding at this early stage. Having blockchain utilized in the voting process would mean mass adoption of a blockchain-based system, and much greater levels of understanding among the general population and organizations alike.”
Even though the blockchain industry, in general, is still in its nascent stage, its use for voting was already envisioned by Alexei Navalny, a Russian lawyer, and political activist, for Moscow’s 2019 elections.
The Moscow Elections:
The very move of leveraging blockchain technology for voting in the capital of Russia can be considered an important milestone in the history of Russian elections as the country has constantly been under the radar for accusations of electoral fraud in both Presidential and Legislative elections. The allegations have, in the past, resulting in protests in Moscow and St. Petersburg.
The initial announcement with regard to blockchain voting was made at the beginning of December 2017 led by the Moscow Department of Information Technology via Active Citizen. The platform has been active for years, enabling residents to influence the city’s management via smart technology. This Smart Voting system was supported and promoted by Alexei Navalny in order to defeat the ruling party of Russia – United Russia
This voting system leveraged the Ethereum blockchain and would have allowed Moscovites to count the votes to validate the legitimacy of the results in real-time; creating a transparent system. The system was proposed to enable people to vote on their smartphones or computers, and this information would be stored on the Ethereum blockchain. Notably, this would mark as the first use of blockchain technology for voting in a large-scale operation, demonstrating the potential of blockchain technology to the world.
On Ethereum blockchain being leveraged for the Smart Voting system in Moscow, Sandeep Nailwal stated that “it would, in essence, mean mainstream adoption of blockchain technology in that area of life.” He further stated,
“If Ethereum was able to provide the answer to the flawed traditional voting system – which is, of course, a huge conundrum that traditional technology is not able to overcome – this would undoubtedly bring mass awareness of blockchain as a solution to many current technological problems. As Ethereum is by far the most secure, decentralized and widely-used smart contract platform, Ethereum would stand to benefit the most from this increased level of awareness and interest.”
To do so, Moscovites were required to install the Active Citizen software, after which he/she would become a node, recording the entire data and thereby, making it a distributed ledger and eliminating any chance of fraud or obstruction of data.
The Great Dismay:
While the prospect of Ethereum blockchain leveraged for Moscow voting saw a positive response in the community, the smart voting itself was not as easy as pie. In August 2019, a French Researcher, Pierrick Gaudry released a document titled, ‘Breaking the encryption scheme of the Moscow internet voting scheme’.
Gaudry illustrated how the encryption scheme used in the code is “completely insecure,” adding that it could be broken within minutes. He said,
“The encryption used in this system is a variant of ElGamal with key sizes that are too small […] It can be broken in about 20 minutes using a standard personal computer, and using free software that is publicly available.
He further said, “More precisely, it is possible to compute the private keys from the public keys. Once these are known, any encrypted data can be decrypted as quickly as they are created.” The research suggested the key size be increased by at least 2048 bits as a solution. Gaudry also stated that the worst possible outcome would be that the voters voting data would be revealed as soon as they cast their vote via this system.
Succeeding this, the representatives of the project released a statement on the French researcher’s findings, stating that they would increase the key size to 1024 bits as a solution to the problem highlighted. The statement read,
“We absolutely agree that 256×3 private key length is not secure enough. This implementation was used only in a trial period. In few days the key’s length will be changed to 1024. We are very welcome for you to try to use cudo-nfs or similar or any other methods to break the used cryptography.”
The Scalability Trilemma:
While blockchain technology being leveraged for the voting system could be music to one’s ears, it sure would not be as simple as it seems. Even today, one of the main problem’s that needs to be addressed with Ethereum is its scalability problem, which comes under the blockchain trilemma concept. The scalability trilemma, a concept that was first brought up by the creator of Ethereum – Vitalik Buterin – asserts that a blockchain system can have not more than two components out of the three; decentralized, security, and scalability.
Nailwal stated that Ethereum being leveraged for mass elections would “certainly be a problem,” considering Ethereum’s current base infrastructure. He also stated that Ethereum’s network is “consistently congested and that the transaction processes are too lengthy to be radically usable for high-user-volume applications,” further citing the example of CryptoKitties.
“Although Ethereum has captured a significant market share- along with the imaginations of many blockchain enthusiasts- on its mission to facilitate the decentralized future as the decentralized ‘world computer’, it suffers from crippling scalability issues which cannot be ignored.”
CryptoKitties, launched by Axiom Zen on October 2017, was one of the most hyped blockchain games. The game gained a lot of traction, with players spending thousands of dollars for some kittens. But importantly, the game raised concerns of Ethereum’s scalability as it resulted in a massive congestion crisis. Nailwal stated that while this blockchain game did expose Ethereum 1.o’s scalability limitations, it was, however, not the only culprit. He said,
“[…] the Ethereum network can currently handle just 15 transactions per second [TPS]. If we extrapolate this out to a 24-hour period, that’s around 1.3 million transactions per day. The highest number of transactions ever seen on the Ethereum network was a little over 1.3 million, on Thursday, January 4, 2018. This was during the peak of Ethereum’s congestion, causing huge problems for network participants in terms of lengthy transaction times.”
Further, Sandeep Nailwal explained how this could play out in elections by taking the 2018 Russian Presidential elections, which saw a turnover of 68 million voters.
“That’s 68 million votes which, in the case of using an Ethereum-based blockchain voting system, would equate to 68 million transactions running through the network within the span of time voters have to cast their votes (not accounting for the rest of the network transactions being utilised for other use cases within that same period of time). 68 million transactions through the Ethereum network would beyond cripple the network, bringing the whole system to a grinding halt.”
Nailwal further stated that if there was congestion in the Ethereum network during the voting period because of the high number of votes being cast, then it would result in the entire process being delayed for several days. He added that this would not be acceptable “in the context of a political voting process.” He stated that this could be solved with a high-throughput [TPS] Layer-2 solution, enabling near-instant transactions that will be secured by the Ethereum mainchain; a system similar to that of Matic Network.
Trenton Van Epps, a Developer Advocate at Whiteblock, also had a similar view on solving Ethereum’s scalability crisis. He said,
“There are many promising scalability solutions being developed for Ethereum that will be able to accommodate large-scale systems, including Serenity [Ethereum 2.0), plasma and ZK-Rollups. However, it’s important to be thorough when implementing blockchain voting systems, as naive implementations end up creating more problems than they solve. Zero knowledge mechanisms, which obfuscate user identifiers, are crucial to a minimum viable voting system.”
The Political Play:
Notably, the technical problems pointed out by the French Researcher and Ethereum’s scalability were not the only issue to brew in this so-called revolutionary elections. The entire idea of making the entire voting system more transparent was came crashing down days before the election day. According to a Russian news portal – Meduza – the online voting system designed to have “three means of controlling for the correct counting of votes” was forsaken because of restrictions placed by Moscow’s officials.
The online voting system was supposed to allow users to verify whether their votes were accurately recorded in the system, but this plan was eventually discarded. A decryption key was supposed to be made public in order to allow people to decrypt and count the votes, but this access was reduced to “the total number of encrypted ballots, the number of decrypted ballots, and the percentage of decrypted ballots.”
One of the key aspects of this entire system was access to the smart voting system’s blockchain. People were assured that they would be able to track all the transactions, enabling them to monitor the entire process. This was also, however, called off by the officials with the decision to restrict access to specific blocks.
The local news portal said,
“Developers never explained publicly why they decided to abandon voting transparency, but the city’s working-group members say the programmers told them unofficially that they scrapped the vote-verification system on orders from their employer.”
It further stated,
“As a result of all these shortcomings, the Moscow Mayor’s Office can effectively publish whatever Internet voting results it likes […] The only conceivable way of verifying the online election results would be to take the city to court, where officials could be compelled to grant access to the system’s original blockchain and vote decryption key.“
The Curtain Call:
The elections that took place on September 8 – Sunday turned out to be one of the most controversial ones. According to reports, some of the opposition’s leading candidates were not even allowed to participate in this elections, thereby resulting in one of the biggest protests to take place in almost a decade. With everyone’s attention set on the results, the smart voting system was going to have its first test run in three precincts in Moscow for the local elections.
This test run, however, was not as successful as it was purported to be. Reports stated that the system crashed even before the elections began, and this was followed by two more outages. According to Medusa, some of the voters who had signed up for smart voting were not able to cast votes because of technical problems.
Ilya Massukh, a member of RF Public Chamber stated, {translated from Russian}
“The failure occurred in the general infrastructure of the public services portal, we localized the problem and tried to restore the hardware and replace it. They replaced it within 15 minutes, after which a second failure occurred, it was necessary to stop the voting system for an hour to exclude the systems that caused the failure.”
The tech blame game:
Google and Facebook, two of the biggest tech giants in the world, were accused of interfering in Russia’s elections. As per a local news portal, Aleksandr Malkevich, a member of Russia’s Civic Chamber stated that Google’s search engine displayed the smart voting system ads to those who were searching for data regarding the local elections in Moscow.
A comeback?
Despite the failures, the Smart Voting saw a turnover of 90.8 percent among the 10,200 registered users. Even, Navalny remarked that the results of Smart Voting was “fantastic,” on his social media handle. Additionally, the anti-corruption lawyer is also looking forth to using this system in future elections. As for the elections results, the ruling party, United Russia, which supports Vladimir Putin lost one-third of its seats in Moscow parliament, however, retained majority.
“If something’s important enough, you should try. Even if the probable outcome is failure,” Elon Musk.