Voter via la blockchain: expérimentations et retours d’expérience
La blockchain, en tant que système décentralisé de contrôle et de stockage de l’information, offre une alternative efficace au vote en ligne traditionnel. Alors que le vote en ligne traditionnel, conduit de façon centralisée, bute sur la possible corruptibilité et faillibilité de l’administrateur du vote, la blockchain promet un vote sécurisé – c’est-à-dire inviolable – dont le résultat, transparent et fiable, est auditable par tous.
La force d’innovation du vote dans la blockchain repose sur le fait que l’enregistrement des votes ne relève plus d’une autorité centralisée mais d’une relation dite «pair à pair», c’est-à-dire décentralisée, un réseau informatique qui permet aux participants de s’affranchir d’un serveur central. Ainsi on passe d’un «single point of failure» (SPOF) ou «point unique de défaillance» – c’est-à-dire le point d’un système informatique dont tout le système dépend – à un enregistrement sécurisé par tous les ordinateurs du réseau. Cela assure une parfaite transparence du vote.
Curieux de mettre à l’épreuve ce principe et d’en constater les atouts, BELEM a développé pour le mouvement politique Nous Citoyens une solution de vote via la blockchain pour ses élections régionales et départementales conduites du 4 au 7 avril 2016. Une première en Europe. L’expérience répondait à la fois aux insuffisances du vote en ligne traditionnel et aux exigences éthiques et démocratiques du parti politique Nous Citoyens. Avec la blockchain, voter donne la possibilité à chaque citoyen de participer directement au débat public sans s’en remettre à la confiance d’un tiers et devient ainsi un acte absolument démocratique.
Le déroulement du vote
Lors de notre expérimentation pour Nous Citoyens, nous avons utilisé la blockchain d’Ethereum conçue pour permettre à ses utilisateurs de créer des bases de données publiques et sécurisées.
A l’ouverture de l’élection, chaque votant a reçu un email contenant le lien vers la page de vote. Une fois sur celle-ci, l’électeur pouvait effectuer son choix de façon simple, en cliquant sur l’une des options proposées, tel que représenté dans la simulation ci-dessous :
Dès son choix validé, le votant recevait un email de confirmation de vote avec un lien lui permettant d’accéder à l'immatriculation de son vote dans la blockchain (schéma ci-dessous). Il pouvait ainsi vérifier que son vote avait bien été pris en compte. Faisant dorénavant partie intégrante de la blockchain d’Ethereum, celui-ci ne pouvait être modifié ni supprimé.
A l’issue du vote, les participants avaient accès aux résultats de l'élection. En cas de litige ou de désaccords, ils pouvaient parcourir la blockchain d'Ethereum sur un site de visualisation des transactions comme Etherchain pour retrouver l'ensemble des votes de l'élection.
La mécanique du vote
Penchons-nous quelques instants sur le récapitulatif du vote reçu par l’électeur. Il contient les détails du vote (date et heure, option choisie que l’on retrouve dans le cartouche gris en bas du cadre) ainsi que les éléments nécessaires à sa validation dans la blockchain.
Chaque vote est en réalité une transaction, identifiée par un numéro, allant d’un point A (ici «from») à un point B (ici «to»), et enregistrée dans un block numéroté de la blockchain. L’adresse émettrice et l’adresse réceptrice sont les mêmes pour tous les électeurs. Lors des élections régionales et départementales de Nous Citoyens, une dizaine d’élections étaient organisées simultanément, chaque élection ayant sa propre adresse de réception, mais toutes partageant la même adresse d’émission. Chaque transaction abrite le détail du vote, c’est-à-dire l’option choisie par l’électeur.
L'adresse d’émission (cerclée de rouge) est celle du coffre fort qui fournit les fonds nécessaires à l'enregistrement des votes. En effet, chaque transaction a un coût, ce coût servant à rémunérer les mineurs qui assurent la sécurité de la blockchain et la validation de la transaction. Ce coût est pris en charge par l’organisateur du vote qui verse sur un compte en banque virtuel les fonds nécessaires à la mise en oeuvre de l’élection, c’est-à-dire la somme équivalente au nombre de transactions prévues. Le montant de la validation de la transaction est exprimé en «gas», soit une unité d’«essence» ou monnaie dont le prix est fixé par le système, et en Ether (monnaie d’Ethereum) qui s’échange en Euros sur le marché des changes.
Voici un extrait du récapitulatif de toutes les transactions parties de la même adresse d’émission. Vous remarquerez que les adresses de réception varient, chacune renvoyant à une élection spécifique :
L’adresse de réception (cerclée de bleu) est celle d’un «Smart Contract» («contrat intelligent»), un programme informatique qui réplique l’exécution d’un contrat classique entre deux parties, ici entre les différents acteurs de la blockchain. Le Smart Contract que nous avons programmé pour les élections de Nous Citoyens était très simple : il se contentait de recevoir le contenu de la transaction et comptabilisait ainsi le nombre de voix pour chaque option. Son objectif n’était que de dénombrer les votes.
Le code compilé du Smart Contract est rendu public (comme ci-dessous où il apparaît dans l’encadré gris) afin que les résultats des élections soient accessibles et auditables par tous.
Retours d’expérience
Nous avons pu confirmer l’efficacité du vote blockchain. C’est une innovation technologique indéniable car elle permet d’organiser une élection fiable et transparente, une optimisation nette du vote digital tel qu’il était pratiqué jusque-là. Nous avons cependant observé deux écueils qui demanderaient à être corrigés pour un vote de très grande envergure tel que le serait une élection présidentielle par exemple.
En effet, voter via la blockchain ne peut pour l’instant se substituer intégralement au vote physique, seul système à ce jour capable de véritablement certifier l’identité du votant et de garantir le secret de l’isoloir. Nous n’avons pas encore les moyens techniques nécessaires à la vérification de l’identité du votant : rien ne peut aujourd’hui contrer le piratage de la boite mail, l’usurpation d’identité ou les jeux d’influence. Nous pouvons imaginer que dans un futur proche l’exercice du vote en ligne soit associé à un capteur biométrique qui permettrait à l’électeur de s’identifier de façon fiable et ainsi d’assurer la validité de son identité.
Par ailleurs, la validation de chaque transation prend quelques minutes. Pour une élection à très grande échelle, avec plusieurs millions de participants, il faudrait organiser le vote sur plusieurs jours pour éviter une saturation de la blockchain. Le vote physique, lui, ne prend en général pas plus d’une journée.
Cependant, rappelons que le vote physique est nettement plus coûteux, en temps, en mobilisation de personnel et en argent. Il peut également faire l’objet de malversations. Si voter via la blockchain ne peut aujourd’hui se substituer entièrement au vote physique, il présente cependant de nombreux avantages à prendre en considération :
- protection contre la fraude
- protection contre la perte d’enregistrements et l’effacement de données
- résultats transparents et auditables par tous
- flexibilité de création de nouveaux votes et sondages
- coût faible.
Romain Rouphael est le co-fondateur de BELEM, start-up explorant les applications de la technologie «blockchain». Diplômé de l'ESSEC, il est spécialisé dans la FinTech et la Data Science.
Côme Jean Jarry est le co-fondateur de BELEM, start-up explorant les applications de la technologie «blockchain». Auparavant, il a été directeur exécutif au sein de Daiwa Securities Group à Hong Kong.
Crédit photo: Fotolia, banque d'images, vecteurs et videos libres de droits
Lire aussi: Qu’est-ce que la blockchain?
investisseurs-ont-ils-mordu-a-lhamecon-en-2015/238674″>Blockchain: les investisseurs ont-ils mordu à l’hameçon en 2015?
- Ask A VC : comment modéliser un compte de résultat — Partie 6/6 : analyse de sensitivité - 21/05/2024
- Ask A VC : comment modéliser un compte de résultat — Partie 3/6 : les Coûts Fixes - 16/01/2024
- Question à un VC : Pourquoi les marges unitaires sont-elles si importantes pour votre modèle d’affaires? - 13/11/2023
Comment traitez vous la privacy ? Si les votes sont visible dans etherchain, le résultat du vote est il en temps réel ?
The proposal does not provide voter privacy. The vote is not encrypted and public available in the blockchain, there is a timestamp of the moment when the vote is cast and there is a unique identifier of the origin of the vote that I assume the system has assigned to the voter (to avoid voters to vote more than once). There are multiple ways to correlate the vote to a voter, so the system does not guarantee voter privacy. Off course, vote secrecy is not present because votes are not encrypted and public available, therefore partial results can be calculated before the election is closed.
Another weakness is the receipt of the voter. The voting system could send the same receipt to two or more voters that cast a vote with the same option. So all these voters see a vote that has their intent and will not detect that the system is cheating them.
Did you made any analysis of this voting system with experts on electronic voting security?
Electronic voting is ok for small group but it doesn’t work for massive vote whatever the architecture of the system using the Bitcoin or Ethereum blockchain. Voting organizer is centralized, the voters are centralized. You have to centralize at some point and those weakness can’t be fixed using blockchains or papers.
Infalsifiable ? Vraiment ? Connectez-vous à la Dwarfpool mining sur Geth vous comprendrez…
For The First Time In The History, You Can Vote On The BlockChain!
http://www.bytestamp.net/vots/new
How ByteStamp works: http://www.bytestamp.net/home/index
We offer BlockChain based IT services, eg the proof of existense of a document.