mercredi, novembre 20, 2024

A16z lance un système de vote anonyme pour Ethereum

Le fonds de capital-risque Andreessen Horowitz, également connu sous le nom d’A16z, a publié une bibliothèque Solidity qui peut être utilisée pour le vote anonyme sur Ethereum. Appelée « Cigale », la bibliothèque empêche le choix d’un électeur individuel d’être connu avant la fin du scrutin. Lorsqu’il est combiné avec des systèmes d’adhésion à des groupes sans connaissance comme Semaphore, il peut également rendre l’identité de l’électeur inconnaissable en permanence, selon un article de blog du 24 mai de l’ingénieur A16z Michael Zhu.

Cicada s’appuie sur des puzzles à verrouillage temporel, un type de cryptographie qui permet aux utilisateurs de chiffrer des valeurs secrètes qui ne peuvent être déchiffrées qu’après une période de temps spécifique, a déclaré Zhu.

Ces puzzles existent depuis 1996. Mais avant 2019, ils auraient obligé les utilisateurs à révéler leurs valeurs secrètes une fois le délai écoulé. Dans les systèmes de vote, cela aurait pu causer des problèmes avec les utilisateurs soumettant des votes puis se déconnectant, empêchant tous les votes d’être comptés.

En 2019, le concept de puzzles à verrouillage temporel «homomorphes» a été proposé par les cryptographes Giulio Malavolta et Aravind Thyagarajan. Cela a permis aux puzzles d’être additionnés pour produire un puzzle final qui était beaucoup plus facile à résoudre que la somme des puzzles individuels. La solution de l’énigme finale ne révèle que la somme des valeurs individuelles sans révéler les valeurs individuelles composant cette somme.

Selon le post A16z, Cicada utilise ces puzzles homomorphes, permettant de compter les votes même si les utilisateurs se déconnectent.

En tentant de transférer le système de Malavolta et Thyagarajan vers la blockchain, les chercheurs d’A16z se sont heurtés à un obstacle pour créer un système de vote équitable : chaque choix devait être encodé sous la forme d’une valeur booléenne de « 1 » ou « 0 ». Cela signifiait que les attaquants pouvaient essayer d’augmenter leur pouvoir de vote en encodant incorrectement le vote – en encodant « 100 » comme valeur, par exemple.

Pour résoudre ce problème, Cicada exige que les électeurs soumettent une preuve sans connaissance de la validité du bulletin de vote avec chaque bulletin de vote, indique le message. La preuve montre que le vote a été encodé correctement, mais sans révéler le contenu du vote.

En rapport: Anchorage Digital ouvre le vote DeFi pour les clients dépositaires

Cicada empêche uniquement que les votes soient connus pendant le déroulement du scrutin. Une fois que le « sondage est clos » ou que la période de blocage du temps est passée, toute personne peut déterminer le contenu d’un vote en forçant brutalement la solution du puzzle. Cependant, A16z a suggéré que ce problème peut être résolu en combinant Cicada avec des systèmes d’appartenance à des groupes à connaissance nulle comme Semaphore, Semacaulk ou des preuves d’état à connaissance nulle. Dans ce cas, forcer brutalement le puzzle ne révélera que le vote a été exprimé par un électeur éligible, mais ne révélera pas les informations d’identification utilisées pour prouver l’éligibilité de l’électeur.

À titre d’exemple, Zhu a fourni un lien vers un exemple de contrat produit à l’aide de Cicada qui s’appuie également sur Semaphore pour prouver l’éligibilité des électeurs.

Les systèmes de vote font depuis longtemps partie des organisations autonomes décentralisées (DAO), les organes directeurs qui gèrent souvent les applications blockchain. Mais dans la plupart des cas, les DAO utilisent des jetons pour représenter les votes, ce qui signifie que les utilisateurs individuels peuvent avoir une influence démesurée s’ils détiennent un grand nombre de jetons. Par exemple, le 22 mai, un attaquant a pris le contrôle de Tornado Cash en votant en plus sur une proposition malveillante, l’utilisant pour drainer tous les fonds du contrat de gouvernance. L’attaquant a ensuite proposé de redonner le contrôle aux utilisateurs.

Le fondateur de Waves, Sasha Ivanov, a fait valoir que les DAO doivent passer à un système de vote plus démocratique si des attaques de gouvernance comme celles-ci doivent être évitées.