Introduction
Ethereum (ETH) s’attaque à un goulet d’étranglement de 80 % en matière de preuve, alors que Vitalik Buterin propose un arbre d’état binaire et un échange à long terme de la machine virtuelle RISC-V. Le co-fondateur d’Ethereum, Vitalik Buterin, a présenté deux changements techniques visant à résoudre les défis d’efficacité de preuve dans le réseau blockchain, comme décrit dans la proposition EIP-7864 et la documentation associée.
Proposition à court terme : EIP-7864
La proposition à court terme, désignée EIP-7864, vise à remplacer l’arbre Merkle Patricia hexary actuel d’Ethereum par une structure d’arbre binaire utilisant une fonction de hachage plus efficace. La structure hexary existante a été conçue pour des priorités qui diffèrent de l’architecture lourde en preuves que les développeurs d’Ethereum poursuivent actuellement.
La structure d’arbre binaire produirait des branches Merkle quatre fois plus courtes que le système actuel, car les opérations binaires nécessitent 32 fois log(n) par rapport aux 512 fois log(n) divisées par 4 de l’hexary, selon les spécifications techniques de la proposition.
Cette réduction diminuerait les coûts de vérification des branches côté client et réduirait les exigences en bande passante des outils tels que Helios et les systèmes de récupération d’informations privées par le même facteur. Les gains d’efficacité de preuve iraient au-delà des améliorations de la longueur des branches. La proposition indique que des branches plus courtes offriraient une amélioration de trois à quatre fois, indépendamment de l’optimisation de la fonction de hachage.
L’implémentation de Blake3 au lieu de Keccak pourrait fournir une amélioration supplémentaire de trois fois, tandis qu’une variante de Poseidon pourrait potentiellement offrir une amélioration de 100 fois, bien qu’une analyse de sécurité supplémentaire soit nécessaire avant le déploiement de Poseidon.
Conception de l’arbre binaire
La conception de l’arbre binaire comprend un système de stockage basé sur des pages qui regroupe des emplacements de stockage adjacents en pages de 64 à 256 emplacements, soit environ 2 à 8 kilobytes. L’en-tête de bloc et les premiers 1 à 4 kilobytes de code et de stockage partageraient la même page, permettant aux contrats qui lisent à partir des emplacements de stockage initiaux de bénéficier de l’efficacité par lots plutôt que des coûts d’accès individuels.
La proposition estime que cela pourrait économiser plus de 10 000 gaz par transaction pour les applications décentralisées qui chargent des données à partir des emplacements de stockage initiaux, représentant une part substantielle des contrats déployés actifs.
Les arbres binaires offrent une mise en œuvre et des processus d’audit plus simples. Cette structure fournit une profondeur d’accès plus prévisible à travers des contrats de tailles variées, réduisant la variance des coûts d’exécution, et crée de l’espace pour intégrer des métadonnées nécessaires au développement futur de l’expiration d’état.
Proposition à long terme : Remplacement de la machine virtuelle
La proposition à long terme implique de remplacer la machine virtuelle Ethereum par une machine virtuelle plus efficace, telle que RISC-V. La proposition soutient que l’architecture de l’EVM n’est pas optimisée pour une blockchain lourde en preuves et que son remplacement permettrait de résoudre des inefficacités fondamentales plutôt que de les gérer par le biais de précompilations accumulées et de solutions de contournement.
Buterin cite quatre avantages de RISC-V par rapport à l’EVM :
- Efficacité d’exécution brute : RISC-V surpasse l’EVM à un point tel qu’il éliminerait le besoin de nombreuses précompilations.
- Efficacité du prouveur : les prouveurs à connaissance nulle sont actuellement écrits en RISC-V.
- Preuve côté client : une VM RISC-V permettrait aux utilisateurs de générer des preuves à connaissance nulle localement.
- Simplicité : un interpréteur RISC-V peut être implémenté en plusieurs centaines de lignes de code.
Feuille de route de déploiement
La feuille de route de déploiement décrite dans la proposition comprend trois étapes :
- Une nouvelle machine virtuelle, potentiellement RISC-V, ne gérerait que les précompilations.
- Les utilisateurs pourraient déployer des contrats directement dans la nouvelle VM.
- L’EVM serait retiré et réimplémenté en tant que contrat intelligent écrit dans la nouvelle VM.
Buterin caractérise les deux changements comme répondant au même défi fondamental sous différents angles. L’arbre d’état et la VM représentent ensemble plus de 80 % du goulet d’étranglement en matière de preuve efficace.
S’attaquer à l’un ou l’autre composant sans l’autre laisse le problème plus large partiellement non résolu, tandis que s’attaquer aux deux produirait un protocole structurellement aligné avec l’architecture lourde en preuves à connaissance nulle qu’Ethereum a développée.
La proposition reconnaît que le remplacement de la VM ne représente actuellement pas un consensus au sein de la communauté de développement d’Ethereum, le décrivant comme un changement qui deviendra plus apparent une fois les modifications de l’arbre d’état terminées. Les changements sont présentés comme séquentiels : arbres binaires d’abord, suivis du remplacement de la VM une fois que l’infrastructure de preuve aura mûri autour de la nouvelle structure d’état.