Plus tôt cette année, le Hackathon Rayonisme lancé pour prototyper l’architecture de la transition d’Ethereum vers la preuve d’enjeu. La transition, souvent appelée la fusion, conservera la chaîne de balises existante (eth2) et les clients de la couche d’exécution (eth1), et « fusionnera » les deux chaînes en faisant en sorte que la chaîne de balises pilote le consensus de la couche d’exécution. Cette approche est la plus récente d’une série d’itérations de la feuille de route Ethereum (plus à ce sujet ici).
Bien que Rayonism ait prouvé qu’il s’agissait d’une architecture solide, il restait encore plusieurs choses à concevoir, à mettre en œuvre et à tester, y compris la transition réelle de la preuve de travail (PoW) à la preuve d’enjeu (PoS). Pour ce faire, les équipes clients se sont rencontrées en face à face la semaine dernière (analogue au Eth2 Interop à partir de 2019) pour un atelier nommé Amphora 🏺.
Voici un aperçu des principales choses qui ont été accomplies pendant l’atelier, et le chemin d’ici à The Merge.
Jalons de l’amphore
Le but de l’événement était d’amener les équipes clientes de la couche d’exécution et de consensus à aplanir les problèmes en suspens dans la spécification et à atteindre un ensemble d’étapes de développement. Chaque étape a rapproché les clients d’un devnet de fusion entièrement fonctionnel qui est passé de PoW à PoS. Des représentants de Besu, Erigon, EthereumJS, Geth, Nethermind, Nimbus, Lighthouse, Lodestar, Quilt et Teku ont assisté à l’atelier en personne. L’équipe Prysm, ainsi que plusieurs membres des équipes susmentionnées, ont participé à distance.
La Jalons de l’amphore visait d’abord à rendre les clients conformes à la spécification, puis à ajouter progressivement plus de complexité et enfin à augmenter le nombre d’autres clients avec lesquels ils pouvaient interagir.
La première étape, M1, exigeait uniquement que les clients implémentent la spécification de fusion. Il a été complété par la plupart des équipes avant même le début de l’atelier ! Pour aider les clients à valider leur mise en œuvre, plusieurs – essai – suites ont été fournis.
Ensuite, les jalons M2, M3 et M4 ont vu les équipes client mettre en place des devnets avec une complexité technique et une diversité de nœuds croissantes. M2 avait des équipes de couche d’exécution (EL) et de couche de consensus (CL) appariées une à une et lançaient un devnet post-fusion. Cela garantissait que les deux couches pouvaient communiquer avec succès via le API du moteur dans un contexte de point de vente.
M3 est l’endroit où l’atelier Amphora a franchi une étape au-delà du rayonnisme : les clients ont mis en place des devnets éphémères qui ont traversé la transition PoW vers PoS.
La transition est basée sur la difficulté PoW : une fois que la difficulté d’un bloc est égale ou supérieure à une valeur spécifique, appelée TERMINAL_TOTAL_DIFFICULTYou TTD, il est considéré comme le dernier bloc PoW. La couche d’exécution commence alors à écouter la couche de consensus PoS pour de nouveaux blocs. Pour s’assurer que la mise en œuvre de chaque équipe était robuste, les équipes EL devaient se connecter à deux clients CL et vice-versa pour réussir M3.
M4 était le véritable objectif de l’événement : obtenir plusieurs clients EL et CL sur un devnet qui a traversé toute la transition PoW vers PoS. En d’autres termes, alors que M3 était à peu près un-à-un devnets, M4 était à peu près plusieurs-à-plusieurs.
Nous y sommes parvenus pour un sous-ensemble d’équipes avant la fin de l’atelier, nous avons donc poursuivi notre objectif ambitieux : M5.
Artefacts durables
Cette étape importante visait à faire passer Amphora d’un événement éphémère à une infrastructure à (plus) longue durée de vie que la communauté pourrait utiliser. M5 a demandé aux équipes clientes de démarrer un devnet qui non seulement traverserait toute la transition avec toutes les combinaisons de clients, mais qui persisterait au-delà de l’événement Amphora.
Le dernier jour de l’atelier, quelques minutes avant le dîner final, M5 a été touché : un réseau de 10 000 validateurs sur 100 nœuds et plusieurs implémentations client lancées sous PoW, ont atteint le TERMINAL_TOTAL_DIFFICULTYest passé au PoS et a finalisé la chaîne avec succès 🎉 !
Le devnet M5 finalise avec succès la post-fusion, quelques minutes avant le dîner de clôture de l’atelier. Photo de Ben Edgington.
Au-delà de l’amphore
Le succès d’Amphora donne un grand élan à The Merge. Les équipes client disposent désormais d’un liste claire des tâches ils doivent travailler vers, et suffisamment de progrès ont été réalisés pour commencer à atteindre un segment plus large de la communauté Ethereum.
Hier, une version plus stable du devnet M5 Amphora, Pithos, A été lancé. Maintenant que ce réseau est en ligne (explorateur ici), attendez-vous à des appels publics explorant comment les outils de développement et les autres infrastructures principales d’Ethereum peuvent mieux se préparer à la transition PoW vers PoS.
Les équipes clientes et les chercheurs continueront à itérer sur la spécification The Merge pour résoudre les problèmes identifiés lors d’Amphora et répondre aux commentaires de la communauté. Dans quelques semaines, la spécification devrait être finalisée et, peu de temps après, un nouveau testnet stable mis à disposition.
Merci
Le travail accompli lors d’Amphora a dépassé toutes nos attentes. Pour cela, nous tenons à remercier les équipes clientes et les chercheurs, sans qui aucun cahier des charges n’aurait été écrit ou mis en œuvre.
De plus, grâce à ConsenSys, Chainsafe et Ben Edgeton pour leur excellente couverture de l’atelier.
Source https://blog.ethereum.org/en/2021/10/15/amphora-merge-milestone