Chacun peut vérifier le décompte

Cette démonstration suit le résultat d'un bureau de vote, de la fiche papier jusqu'à votre écran. Elle montre comment chaque téléphone dans la salle repère un chiffre modifié en chemin.

Le problème

Le soir de l'élection, un résultat peut changer après le dépouillement. Un chiffre est ressaisi, une base de données est modifiée, un fichier est remplacé. Aujourd'hui, personne ne peut le prouver. Le parti voit un chiffre, la page publiée en montre un autre, et c'est une parole contre une autre.

L'histoire d'un résultat

Awa est agente de bureau de vote à Serekunda 12. Les candidats A, B et C sont fictifs.

  1. Compter

    Awa et les observateurs comptent les bulletins : A 312, B 241, C 19. Elle signe la fiche de résultats papier.

  2. Sceller

    Elle saisit les trois chiffres dans l'application agent et photographie la fiche. Son téléphone scelle les chiffres et la photo avec sa propre clé. Aucun réseau n'est nécessaire. Dans un vrai déploiement, cette clé est enfermée dans la puce sécurisée du téléphone ; dans cette démonstration, l'application agent est une page web.

    L'application agent, réseau coupé : la fiche A 312, B 241, C 19 est scellée et attend le réseau.
  3. Envoyer

    Quand le réseau revient, le téléphone envoie la fiche scellée. Si quelqu'un change un chiffre en chemin, le sceau ne correspond plus.

  4. Confirmer

    Un second agent du même bureau envoie les mêmes chiffres. Deux fiches concordent : le résultat du bureau est confirmé.

  5. Publier

    La page des résultats affiche Serekunda 12 avec 312, 241 et 19, et la photo de la fiche. Chaque fiche scellée entre aussi dans un journal public, un relevé qui ne peut que s'allonger.

    La page des résultats pendant le décompte : les totaux nationaux et les régions.
  6. Vérifier

    Chaque téléphone dans la salle ouvre le vérificateur. Il télécharge les fiches scellées et refait l'addition, sur le téléphone lui-même. Il ne demande pas le total au serveur. Quand ses chiffres correspondent aux fiches scellées, il passe au vert.

    Le vérificateur au vert : ces chiffres correspondent aux fiches signées, avec Serekunda 12 à 312, 241 et 19.

Le chemin d'un résultat

Schéma : la fiche papier va au téléphone d'Awa, qui la scelle ; la fiche scellée entre dans le journal public ; un témoin indépendant contrôle et signe chaque nouvel état du journal ; deux autorités d'horodatage notent quand chaque état signé existait ; votre téléphone lit l'ensemble et refait l'addition des fiches.
Chaque étape ajoute une preuve que la suivante peut contrôler. Votre téléphone les contrôle toutes.

Et si quelqu'un triche ?

La démonstration joue deux attaques en direct, comme pourrait le faire quelqu'un de l'intérieur.

Attaque 1 : quelqu'un modifie la base des résultats

Nous changeons B à Serekunda 12 de 241 à 290 dans la base de données derrière la page des résultats. La page affiche maintenant 290. À sa vérification suivante, chaque vérificateur passe au rouge et nomme le bureau : Serekunda 12. La fiche scellée dit toujours 241.

Le vérificateur au rouge après l'attaque 1 : Serekunda 12, la page des résultats diffère des fiches signées.

Attaque 2 : quelqu'un réécrit l'historique

Ensuite, nous réécrivons le journal public lui-même pour qu'il dise 290. Chaque nouvel état du journal doit porter la signature d'un témoin indépendant, un second serveur qui garde une copie de tout ce qu'il a signé. Le témoin voit que l'historique a changé et refuse. Sans sa signature, chaque vérificateur passe au rouge.

À la fin, la page des preuves les montre côte à côte : la fiche scellée par Awa, avec 241, et l'entrée falsifiée, avec 290.

La console des attaques : le témoin a refusé l'historique réécrit.
Le vérificateur au rouge après l'attaque 2 : le point de contrôle n'a pas la signature du témoin indépendant.
La page des preuves : la fiche scellée par Awa avec 241 à côté de l'entrée falsifiée avec 290.

Voici les adresses utilisées pendant l'appel.

Ce que cette démonstration est, et n'est pas

Une démonstration dit ses limites. Voici celles qu'un expert peut nommer.