Étape séparée du vote, volontairement : un électeur (ou n'importe qui) peut revenir ici plus tard — depuis un autre appareil, à partir du reçu papier — pour vérifier qu'un bulletin est valide et compté, sans jamais apprendre le choix.
🧪 Bac à sable — pourquoi la preuve tient (cliquer pour déplier)
Imaginez ce bulletin comme une enveloppe scellée avec de la cire. Deux questions naturelles :
« et si quelqu'un grattait/modifiait un peu la cire ? » et
« et si quelqu'un recopiait le cachet sur une autre enveloppe ? »
Les deux essais ci-dessous répondent, avec le vrai bulletin — sans rien envoyer au serveur, tout se passe dans votre navigateur, sur une copie.
1. Deux objets : le Ciphertext et la ZKP — modifiez-les librement
Pas de détail ElGamal ici : juste deux boîtes. Ciphertext = l'enveloppe scellée (le vote, caché). ZKP = le cachet de cire qui prouve que l'enveloppe est valide, sans l'ouvrir. Choisissez un candidat de ce bulletin, éditez l'une ou l'autre boîte comme vous voulez, puis vérifiez.
2. Multiplier deux Ciphertexts — l'addition sans déchiffrer
Un ciphertext ElGamal peut encoder n'importe quel petit nombre, pas seulement 0/1. Fabriquez deux Ciphertexts A et B (chacun avec un nombre + un aléa, ou laissez l'aléa vide), multipliez-les, et voyez si le résultat correspond bien à la somme — sans jamais déchiffrer quoi que ce soit. C'est exactement pourquoi on peut additionner des votes chiffrés pour faire le total.
Ciphertext A
Ciphertext B
3. La taille compte : cette démo vs. un vrai système