zkvmBlast découvre sept bugs dans les implémentations de zkVM d’Ethereum
Un bloc Ethereum valide peut s’exécuter sans problème sur chaque nœud et se heurter malgré tout à un mur : la machine chargée de le prouver peut planter sur une instruction obscure. zkvmBlast, un nouveau fuzzer différentiel pour les machines virtuelles zero-knowledge RISC-V, est conçu pour détecter ce type de défaillance avant que la génération de preuves ne devienne un élément central du fonctionnement d’Ethereum.
L’outil prend un programme, l’exécute sur plusieurs zkVM et sur un simulateur de référence, puis signale les divergences. Il recherche les bugs de solidité, qui pourraient permettre à un prouveur de convaincre un vérificateur qu’une affirmation fausse est vraie, ainsi que les bugs de complétude, lorsqu’un programme valide ne peut pas être prouvé. Il vérifie également la correction de l’exécuteur : la conformité effective de la zkVM avec la spécification RISC-V, c’est-à-dire le jeu d’instructions qu’elle est censée implémenter.
Les premières campagnes ont découvert sept bugs distincts de complétude et de correction dans SP1, Pico et OpenVM. Chacun a fait l’objet d’un signalement responsable. Ces travaux ont également reproduit un bug de solidité connu dans RISC0. Ces découvertes interviennent alors que la relation d’Ethereum avec les zkVM évolue : des systèmes autrefois principalement utilisés par les rollups, les bridges ou les coprocesseurs sont désormais envisagés pour prouver les blocs ordinaires d’Ethereum.
Ce changement augmente le coût d’une défaillance apparemment anodine. Un bug de complétude ne permet pas à un attaquant de falsifier un solde ; il peut simplement empêcher une exécution légitime de produire une preuve. Mais si Ethereum exige que les blocs soient accompagnés de preuves de validité, un plantage accidentel — ou une transaction conçue délibérément pour le provoquer — pourrait interrompre la génération de preuves et menacer la vivacité de la chaîne. Le projet Ethproofs de la Fondation Ethereum suit la latence et le coût des preuves pour de vrais blocs du réseau principal, tandis que son équipe zkEVM teste également des blocs adverses correspondant aux pires scénarios.
Qu’est-ce qui change en pratique ? zkvmBlast offre aux développeurs un moyen de comparer les implémentations entre elles et avec une référence RISC-V avant que ces implémentations n’assument une responsabilité au niveau du protocole. Il ne montre pas qu’Ethereum prouve déjà chaque bloc, ni que les bugs découverts pourraient arrêter le réseau aujourd’hui. Il montre où se situe le prochain point de pression technique : rendre les instructions rares et les cas limites aussi fiables que les performances de génération de preuves mises en avant dans les benchmarks.
Sources — lire les originaux(heure de Paris)
À lire ensuite
- Ethereum lance un défi IA sur la borne de 128 bits de koalaIRS12
- GLM-5.3 double son score SWE-Marathon et prend la tête de CyberGym
- Les binaires statiques de Bitcoin Core promettent des déploiements Linux plus simples et plus sûrs
- GLM-5.3 est disponible : Zhipu renforce le codage et les capacités d’agent avec 700 milliards de paramètres
Commentaires
Chargement du fil…
Connectez-vous pour écrire un commentaire. Se connecter