Audit simultané pendant le vote électronique

Dans le processus de création de systèmes de vote électronique, il est nécessaire d'utiliser un audit parallèle. Il s'agit d'un analogue des observateurs aux élections ordinaires.


Il existe plusieurs façons d'organiser un audit parallèle:


  1. en utilisant la cryptographie
  2. en utilisant la confirmation papier
  3. en utilisant le contrôle audio
  4. ou même la technologie du double enregistrement (sur support électronique et papier).

Le professeur Rebecca Mercury, créatrice du concept de VVPAT (Audit on Voter-Certified Paper Ballots), justifie l'efficacité de l'impression d'un bulletin papier pour une confirmation supplémentaire par l'électeur avant le dépouillement final (plus tard, cette méthode a été appelée la «méthode Mercury»). Pour être définitivement confirmé, le vote doit être confirmé par l'électeur sans recours à des moyens visuels ou sonores. Par exemple, si un électeur utilise un lecteur de codes-barres pour confirmer son choix, une telle voix ne peut pas être considérée comme confirmée, car ce n'est pas l'électeur qui le confirme, mais un appareil électronique.


Les systèmes de vote direct donnent aux électeurs des reçus signés qui peuvent être rapportés à la maison. De tels reçus ne vous permettent pas de savoir exactement comment l'électeur a voté, mais ils vous permettent de vérifier que le vote a été compté, de connaître le nombre total de votes et les résultats du vote.


Dans les systèmes de vote électronique, il peut s'agir d'un certain GUID, en entrant lequel dans le compte personnel l'électeur peut vérifier pour qui son vote a été émis. Ou une clé privée générée, peut-être même une seule fois, à l'aide de laquelle l'électeur ne peut décrypter que la voix d'un hibou.


Les systèmes d'audit peuvent également être utilisés pour détecter les problèmes d'équipement et les fraudes. Dans le cas de l'utilisation du système VVPAT, le bulletin papier est le document principal et les votes électroniques ne sont utilisés que pour le calcul préliminaire. Pour un audit réussi d'un appareil de vote, toute une séquence d'événements est nécessaire, qui est développée, décrite et ce sont les observateurs internationaux qui surveillent sa mise en œuvre (mais pas seulement cela).


Lors des élections en cours, un audit parallèle a été réalisé en imprimant les données de la file d'attente sur le serveur avant d'écrire dans la blockchain, c'est-à-dire qu'il a été initié par une autorité centralisée et que l'utilisateur n'a pas pu vérifier si son vote a été pris en compte, la possibilité de visualiser le résultat de son vote et de son contrôle que sa voix ait été correctement prise en compte, les électeurs n'ont pas confirmé leur vote sans recourir à des moyens électroniques.


Notre schéma restauré ressemble à ceci (les commentaires, suggestions sont les bienvenus):


image


  1. interface utilisateur et formulaires de newsletter
  2. anonymizer (situé sur le côté DIT) dans le code sur github, il était absent
  3. générateur de newsletter
  4. transfert de données pour audit parallèle (le transfert s'effectue depuis le serveur DIT, avant que les données n'entrent dans l'ogive):
    4.1 Moniteurs installés dans les PEC
    4.2 Impression des données sur une bande (imprimée) - qui a voté
  5. enregistrement de données dans l'ogive
    5.1. la deuxième bande imprimée est chiffrée et imprimée pendant le vote

Ainsi, on peut dire que l'audit de bout en bout n'a pas été réellement réalisé. De plus, l'utilisation d'imprimantes pour dupliquer les données déchiffrées de la file d'attente sur le serveur DIT laisse aux administrateurs système EG la possibilité de comparer le résultat du vote et l'électeur.


Une explication doit être faite ici: DIT affirme qu'il y a eu un retard sur le serveur, qui a été conçu pour réduire au minimum ou éliminer complètement la possibilité de faire correspondre les données des électeurs (profil sur le portail mos.ru) et le résultat de son vote. Néanmoins, au cours de l'étude, nous avons considéré que ce délai n'était pas suffisamment important et laisse, bien qu'une faible probabilité tangible de comparer les données avant d'écrire dans la blockchain.


L'entropie dépend du temps avec une précision d'une seconde et des coordonnées d'un clic de souris.


userEntropy = Math.floor( (e.clientX + e.clientY) * (Math.floor(new Date() / 1000)) ); 

Les coordonnées de clic sont toujours quelque part dans la zone de bouton correspondante. Même en tenant compte du fait que la page peut être dévissée de haut en bas et que le bouton se déplacera verticalement, c'est toujours une zone de, disons, 1000x200 pixels. Le temps précis à la seconde est facile à déterminer, car nous savons quand une personne a voté. L'enregistrement des actions des utilisateurs et l'envoi de votes n'ont pas été annulés. Ainsi, il peut être réduit à plusieurs centaines de valeurs possibles.


Même si, par exemple, nous ne connaissons pas l'heure de vote de l'utilisateur i, alors tout le vote dure 12 * 3600 = 433200 secondes. Total total 1000x200x43200 ~ 8,5 milliards. Sur un simple ordinateur portable, vous pouvez trier les valeurs probables pour chaque utilisateur en quelques dizaines de minutes.
Nous changeons l'ordinateur portable en serveur et GPU et obtenons de la magie qui réduit l'entropie à 0.


Par conséquent, nous pouvons affirmer que les administrateurs du portail DEG, s'ils sont intéressés, pourraient facilement comparer les données des électeurs avec le résultat de son vote.


Oksana. Coordinateur du groupe technique.

Source: https://habr.com/ru/post/fr481524/


All Articles