Le système de vote Blockchain de la Russie permet aux utilisateurs de déchiffrer les résultats avant de les compter

Le système de vote Blockchain de la Russie permet aux utilisateurs de déchiffrer les résultats avant de les compter

Crypto real estate

Le système de vote basé sur la blockchain de la Russie pour les amendements constitutionnels présentait une vulnérabilité qui aurait permis de déchiffrer les votes avant le dépouillement officiel.

Les électeurs pourraient déchiffrer leurs propres clés privées

Selon une étude du média russe Meduza, lorsque les électeurs ont voté via un site Web spécial, les résultats seraient cryptés par une bibliothèque JavaScript appelée TweetNaCl.js.

Il s’agit d’une implémentation de “Networking and Cryptography”, ou NaCi, bibliothèque de cryptographie créée par le mathématicien Daniel J. Bernstein et les cryptographes Tanja Lange et Peter Schwabe.

Selon Meduza, le système de vote reposait sur le soi-disant cryptage déterministe, ce qui signifie que l’utilisation des mêmes paramètres conduisait à des chiffrements identiques. L’expéditeur et le destinataire ont reçu une clé partagée, qui pourrait être utilisée pour le chiffrement ou le déchiffrement du message.

Cela signifie que tout électeur pourrait théoriquement déchiffrer son propre vote avant qu’il ne soit déchiffré par la commission électorale, ou même permettre à des tiers de le faire. Pour ce faire, l’électeur a dû conserver sa clé privée.

Pour récupérer la clé privée, le constituant devait se rendre sur la page du bulletin électronique, ouvrir la console du développeur dans son navigateur Web et apporter un léger ajustement à la bibliothèque election.js (ajouter un point de connexion, entrer: la clé secrète de l’électeur est ‘, chiffreur .keyPair.secretKey), puis voter.

Meduza a mené une expérience où tous les participants ont récupéré leurs clés privées et auraient été en mesure de déchiffrer tous les votes en conséquence.

Il y a un côté positif au bug

Selon la publication, la vulnérabilité permet théoriquement aux employeurs de s’assurer que leurs employés ont voté, et même de vérifier leurs votes après les avoir incités à enregistrer leurs clés privées. Certains rapports suggèrent que des entités financées par l’État en Russie poussent leurs employés à voter à la demande du gouvernement.

D’autre part, le même bug pourrait être utilisé pour augmenter la transparence du vote dans le scénario où la commission électorale refuse de publier le décryptage de chaque vote (comme elle l’a fait après les élections à la Douma de Moscou en 2019, où la blockchain était également censée être utilisée ).

Meduza a expliqué: «Par exemple, les partisans d’un candidat spécifique peuvent accepter d’installer la même extension de navigateur. De cette façon, ils peuvent suivre le nombre minimum de votes que leur candidat devrait définitivement obtenir après le dépouillement ».

77,9% ont voté pour les amendements, permettant à Poutine de gouverner jusqu’en 2036

Le vote électronique a eu lieu du 25 au 30 juin pour les habitants de Moscou et de Nizhniy Novgorod, et était basé sur la plateforme de blockchain Exonum développée par Bitfury. Les régions restantes ne pouvaient voter que hors ligne.

Le référendum lui-même s’est terminé hier, le 1er juin. Tous les bulletins ayant été comptés plus tôt dans la journée, 77,9% ont voté pour le paquet de réformes et 21,3% contre, selon la commission électorale.

Quant aux résultats du vote électronique, 62,33% des électeurs de Moscou ont soutenu les amendements et 37,37% s’y sont opposés. À Nizhniy Novgorod, les résultats étaient quelque peu similaires: 59,69% et 40,31% des électeurs ont voté «pour» et «contre» respectivement.

Notamment, un bulletin électronique a été jugé invalide. Comme expliqué par un responsable du gouvernement de Moscou, l’utilisateur votant a arrêté “la transaction entre un clic de souris et la mise dans la bibliothèque de crypto de son ordinateur”. Étant donné que la blockchain ne peut accepter que «oui» ou «non» pour une réponse, le système aurait marqué ledit vote comme invalide lors du décryptage.

Conformément aux amendements constitutionnels, le mandat de Vladimir Poutine sera réinitialisé en 2024, ce qui signifie qu’il pourra rester président jusqu’en 2036.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *