Blockchain enters mainstream in Romanian elections

Until a few years ago, Romanian elections were run in a surprisingly fraud-prone process. Consider for instance the identification document: the Romanian ID, a cheap plastic card, is considered one of the least-secure and easy to counterfeit ID documents in the EU.
Romanian_Identity_Card_2018.png
(source)
Not only that, but a very significant proportion of Romanians voters leave abroad, with hundreds of thousands in Italy, Spain, United Kingdom, France and Germany. The Romanian "diaspora" is traditionally voting massively but as Romanians can travel freely (in normal, non-Covid times at least) inside the EU, Romanians can vote at any polling station outside the Romanian territory without the need of prior registration, simply by presenting their ID card.

In each of these countries tens or even hundreds of ad-hoc polling stations are set up to allow Romanians to participate in elections. That leaves open the possibility for a Romanian abroad to travel from one polling station to another and vote multiple times. Especially since the "device" to prevent multiple voting is ... a stamp which the polling station assessors apply on the back of the (plastic) ID card ...

backidcard.PNG
The back of a typical ID card with the stamps "Has voted" ... not a very sophisticated means to avoid multiple voting ...(source)

A few years ago, all polling stations began being equipped with computers and optical readers. Each time a voter would present her ID card, the optically readable information at the bottom of the card would be read and converted into a message which the polling station computer would send to a centralized information system called SIMPV (IT system for monitoring and preventing multiple voting). At the end of the voting process, the votes would be counted and once all the assessors (representing the electoral competitors) agreed and signed the report, this would be converted to PDF and sent to another central information system, called SICPV.

These two IT systems were developed by a branch of the Romanian army, the "Special Telecommunications Service"

STS.PNG
The "Special Telecommunications Service" provides cryptographically protected communication services and the management of cybersecurity incidents: https://sts.ro

Legislative elections 2020

Sunday December 6th, 2020 Romania held legislative elections to renew the Parliament. This time, at the request of the Romanian electoral authority (AEP), the STS added, for additional assurance, a third system to lend increased assurance and transparency to the voting process.

AEP.PNG
The "owner" of these IT systems is the Romanian Permanent Electoral Authority, AEP

What sets this new system apart is the fact that it advertises the use of blockchain technology, a first!

techblockchain.PNG
Source

This back-end system would receive in real time the votes from SIMPV and the polling station reports from SICPV and would "notarize" them, while exposing both a lightweight web interface and open APIs to allow anyone to "observe" the process as it unfolds. In this way, the content of the SICPV and SIMPV databases, previously inaccessible to the general public, became transparent, available for inspection in real time and ... all but immutable

Dashboard2.PNG
Lightweight web interface, available to anyone at https://voting.roaep.ro/

Here is a "block of data" recorded during the election day, including 724 individual votes
Dashboard1.PNG

Each transaction records the data which the electoral law requires, including the id of the polling station, the age and gender of the voter (which might be seen as ... questionable under GDPR but then ...)

transaction.PNG

The lightweight web interface provides a "validation" functionality allowing anyone to calculate the cryptographic hash of the data of any transaction and see that it is identical to the hash recorded alongside

validation.PNG

Blockchain technology for national legislative elections

Blockchain technology has long been touted as the best IT solution to facilitate free, fair, transparent elections. However, blockchain enthusiasts reading this report might feel a bit underwhelmed ...

The Romanian system has been developed by STS from scratch and is based on closed-source, proprietary code.

While using indeed a "blockchain data structure" (chaining blocks of data in an immutable way by use of cryptographic hashes) it is quite a long way from what has come, with the advent of Bitcoin, to be known as "blockchain". Indeed, the system is fully centralized, run on a single logical node (physically redundant for resilience and crash tolerance) controlled by the STS. The votes recorded are not based on a "decentralized identity" but are rather replicas of the votes received by the SIMPV system.

architecture.PNG
Simplified schematic architecture of the IT systems underpinning the Romanian electoral system (original drawing)

And yet, while in its current implementation it's not the "be-all and end-all" of the electoral process, it is nevertheless a huge leap forward for both democracy and blockchain technology and for this, the AEP and the STS deserve great praise.

For democracy, it adds real-time transparency. Anyone can watch the votes coming in, and then the reports from the polling stations coming in, as the polling day goes by. Using the open APIs, any NGO or electoral competitor can subscribe to the event stream and provide confirmation of the number of votes received from each polling station.

For blockchain, it proves that, somewhere between the current status of most electoral processes (i.e. "no blockchain at all") and the "blockchain everything" preached by the shrillest proponents, this technology can be implemented quite fast and at reasonable price to support and add democratic value to an electoral process. And this proof, a first at national level (to the best of my knowledge), is brought today by an EU country, my native Romania.

Sort:  

Hi Sorin, nice to see such an experiment, do you know if there will be an analysis of the benefits from this technology as compared to previous elections?

I suppose there will be, although its conclusions might not necessarily be made public. It's a "soft" topic anyway, it's hard to quantify the "additional trust gained" or the "decrease in mistrust and tension among electoral competitors". Perhaps by counting the number of lawsuits and comparing with previous elections ... but Romania is not as "litigation-happy" as the US (by a loooong way ...), so I'm not sure the measure would be a good indicator. I'll try to keep an eye on the follow-up and report if anything interesting comes to my attention.

Wow, I'm surprised to see this. I thought it would be years down till we start seeing blockchain tech being used... for some things... in elections. So while the current implementation seems completely centralized, perhaps future implementations can allow for others to independently verify each vote being cast.

Indeed, that seems to be the path forward: a total redesign of both the "blockchain" system (to use distributed computing ) and the architecture (to bring he blockchain system to the front).

Given the traditional acrimony and mistrust between the competing polotical parties, the "hashed-ID has voted" message shoild be sent to several independent nodes run on behalf of the different electoral competitors and these nodes should reach consensus.

Congrats on getting a lot of people viewing the post. It got an award for being one of the top viewed posts for one of the days.

Thank you for making an excellent front-end to the Hive blockchain

Hey Sorin,
Sorry to jump in a bit off-topic.
We are very grateful that you currently support the HiveBuzz proposal, but it will expire in a few days.
Do you mind to cast your vote for the renewal proposal we made for 2021 so we can continue with our work?
Thank you. Wish you a happy Xmas 🎅

https://peakd.com/me/proposals/147