![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
10_GOTO_10
Là c'est de ma faute, je n'ai pas assez détaillé le protocole. Je vais le faire ci dessous. Je ne prétends pas que c'est la solution idéale et sans faille, c'est une piste de réflexion et ce post est là pour l'améliorer.
Avant les élections :
Le gouvernement envoie à chaque électeur, avec sa carte d'électeur, une clé privé KPr-1 (une par électeur). Il garde les clés publiques correspondantes KPu-1. Cette clé est bien évidemment protégée par un cache à gratter, comme les numéros de carte bleues, pour éviter que quelqu'un la voie par transparence.
D'autre part il génère un couple de clés (unique celui-là) KPr-2 et KPu-2. Il publie et diffuse la clé publique KPu-2.
Le jour du scrutin :
Jean Dupont est un électeur qui veut voter B. Il imagine une phrase secrète, qu'il est le seul à connaitre. Par exemple "Toto fait du vélo". Personne d'autre que lui ne connait cette phrase, hein. Il calcule le hash de cette phrase, sur son ordinateur. S'il n'a pas confiance dans les ordinateurs du commerce, il le fait sur son vieux 386 en DOS 3.0 descendu du grenier, déconnecté d'internet, avec un logiciel libre et open source. Il obtient le hash suivant : L58e5FXRZjEvDd7ifWu4iUlPWzndv20oVH219uxmRWM=
Il ajoute son vote et obtient: "L58e5FXRZjEvDd7ifWu4iUlPWzndv20oVH219uxmRWM= vote B"
Il code cette chaîne avec la clé publique KPu-2. Il obtient une chaine codée STR-1
Il ajoute à STR-1 son nom et son numéro d'électeur.
Il code le tout avec sa clé privée KPr-1. Ça donne la chaîne STR-2.
Il envoie le tout sur le site de vote.
Le site de vote est constitué de deux serveurs S1 et S2
Le premier serveur S1 reçoit la chaîne STR-2 de jean Dupont. Il la décode avec KPu-1 et peut voir que l'expéditeur est Jean Dupont.
Comme cette chaîne a été codée avec KPr-1 que seul Jean Dupont possède, on est certain que c'est bien lui et pas un autre qui a créé la chaîne. Il inscrit dans un fichier "Jean Dupont a participé au vote", et envoie la chaîne STR-1 (illisible pour l'instant) au serveur S2.
Le serveur S2 reçoit la chaîne STR-1. Il la décode avec la clé KPr-2 qu'il est le seul à posséder. il trouve donc la chaîne "L58e5FXRZjEvDd7ifWu4iUlPWzndv20oVH219uxmRWM= vote B", qu'il inscrit dans un fichier. Cette chaîne est anonyme et ne peut être reliée à aucun nom.
Partager