La prochaine mise à jour d'Ethereum : l'espace de blobs 101
Domothy explique l'espace de blobs, la nouvelle couche de disponibilité des données introduite par la mise à jour Dencun d'Ethereum, couvrant le fonctionnement des transactions de blobs, leur importance pour la mise à l'échelle d'Ethereum, et ce qui attend la disponibilité des données.
Date published: 27 février 2024
Cette interview couvre la ressource d'espace de blobs d'Ethereum, introduite avec la EIP-4844 (proto-danksharding) (opens in a new tab). Le chercheur d'Ethereum Domothy rejoint David Hoffman et Ryan Sean Adams sur le podcast Bankless pour expliquer l'histoire de la feuille de route centrée sur les rollups, la mécanique technique des blobs et les implications économiques de la séparation de l'espace de blocs de l'espace de blobs.
Cette transcription est une copie accessible de la transcription vidéo originale (opens in a new tab) publiée par Bankless. Elle a été légèrement modifiée pour en faciliter la lecture.
Introduction à l'espace de blobs (0:00)
Ryan Sean Adams : Bienvenue sur Bankless, où nous explorons la frontière de la monnaie et de la finance sur Internet. Voici comment commencer, comment s'améliorer, comment anticiper les opportunités. Je suis ici avec David Hoffman, et nous sommes là pour vous aider à devenir plus « bankless » (sans banque). Vous savez comment nous disons que les chaînes de blocs vendent des blocs ? Eh bien, bientôt Ethereum vendra plus que de simples blocs — il vendra aussi des blobs.
David Hoffman : C'est exact, des blobs. Nous ne sommes donc qu'à quelques mois de la plus grande mise à jour d'Ethereum depuis La Fusion, et je pense que personne n'a encore pleinement mesuré les implications de cela, mais ça va être énorme. Ethereum obtient un nouveau produit à vendre. Cela s'appelle l'espace de blobs, et cela s'ajoute à l'espace de blocs. Le coût des transactions sur les couches 2 (l2) est sur le point de chuter vers zéro. L'économie du gaz ETH et du burn est sur le point de changer pour toujours. Nous appelons cette mise à jour la mise à jour de l'espace de blobs, EIP-4844, proto-danksharding. Nous voulons couvrir tout ce que vous devez savoir sur l'espace de blobs.
Ryan Sean Adams : Quelques points à retenir ici. Numéro un, nous examinons ce qu'est l'espace de blobs. Numéro deux, nous parcourons l'histoire de la façon dont nous en sommes arrivés là — cette feuille de route centrée sur les rollups. Numéro trois, nous abordons l'économie. Qu'est-ce que cela signifie pour l'économie d'Ethereum, pour l'accumulation de valeur de l'ETH, pour l'ETH en tant qu'actif ? David, pourquoi cet épisode a-t-il été important pour toi ?
David Hoffman : Je pense que s'il y a un domaine de conversation que toi et moi adorons vraiment, c'est l'intersection de la cryptographie et de l'économie — comme les chiffres et les manifestations économiques. J'adore jouer avec ces protocoles.
Ryan Sean Adams : Oui, c'est notre langage de l'amour.
David Hoffman : Nous avons parlé de l'EIP-4844, nous avons parlé du proto-danksharding. Ce sont les mêmes choses. Nous l'avons défini à plusieurs reprises à différents titres. Mais nous n'avons jamais plongé la tête la première dans le terrier du lapin pour en ressortir de l'autre côté en répondant à l'aspect économique. Nous avons donc techniquement mis à l'échelle la disponibilité des données à un niveau technique — c'est une amélioration du protocole. Mais comment cela se connecte-t-il au côté marché d'Ethereum ? Le marché unique est maintenant fracturé en deux : l'espace de blocs et l'espace de blobs sont désormais deux marchés indépendants et différents qui sont contenus à l'intérieur d'un bloc Ethereum.
Qu'est-ce que cela signifie pour l'ether ? Qu'est-ce que cela signifie pour les marchés qui émergent autour de ces éléments ? Comment l'équilibre de l'offre et de la demande de chacun interagit-il ? Qu'est-ce que cela fait pour la mise à l'échelle de la couche 2 (l2) ? Qu'est-ce que cela fait pour les cas d'utilisation économiques au-dessus des couches 2 (l2) ? Nous allons commencer par les bases, puis nous allons ressortir de l'autre côté du terrier du lapin pour aborder le côté économique de cette conversation.
Faisons entrer notre invité, Dom, également connu sous le nom de Domothy. Il est chercheur à la Fondation Ethereum et travaille sur la recherche et le développement des principales mises à jour d'Ethereum à venir, y compris l'EIP-4844 (le sujet d'aujourd'hui), le danksharding complet et le burn de MEV.
L'histoire de la feuille de route centrée sur les rollups (10:00)
Ryan Sean Adams : Alors Dom, pour bien comprendre comment nous en sommes arrivés à l'espace de blobs, je pense qu'il vaut la peine de remonter le temps pour comprendre l'intégralité de la feuille de route d'Ethereum, car elle a abouti à une conclusion très logique avec les blobs et l'espace de blobs. Peux-tu nous ramener en arrière ? Parce qu'à une époque, la feuille de route d'Ethereum centrée sur les rollups n'existait pas. Nous avions cette chose appelée le sharding d'exécution (fragmentation de l'exécution), que nous n'avons finalement jamais eue. À quel moment de l'histoire de la feuille de route d'Ethereum est-il approprié de se placer pour vraiment comprendre tout le contexte de l'espace de blobs ?
Domothy : Bien sûr. Même avant le lancement d'Ethereum, il y avait déjà des réflexions sur la façon de le mettre à l'échelle, car tout le monde savait déjà à l'époque qu'une seule chaîne de blocs où chaque nœud exécute tout ne suffirait pas. Donc, au départ, il y avait un tas d'idées différentes pour les fragments (sharding). La première tentative pour vraiment le spécifier était le sharding avec exécution où vous avez essentiellement, disons, 64 chaînes indépendantes différentes qui essaient de communiquer entre elles. Il s'avère que c'est difficile à faire — cela implique beaucoup de complexité.
Cela a été divisé en différentes phases. D'abord, nous allons lancer une chaîne balise, puis trouver comment la fusionner réellement avec la couche d'exécution actuelle. Ensuite, nous ferons la Phase Un, qui est juste le sharding de données — donc pas d'exécution, juste des chaînes de blocs plus petites contenant des données. Et ensuite trouver comment faire le sharding d'exécution. Il s'agissait beaucoup de trouver des solutions au fur et à mesure, mais en toute sécurité pour ne pas faire quelque chose que nous regretterions plus tard et casser toute la chaîne de blocs, car il y a tellement d'activité économique dessus.
David Hoffman : Pour donner des détails sur le sharding d'exécution — c'est la répartition aléatoire des validateurs à travers des fragments distincts de la chaîne de blocs, chaque fragment étant essentiellement sa propre mini-chaîne de blocs fonctionnant en parallèle à la chaîne balise. Cela ressemble un peu à ce que nous avons aujourd'hui avec les rollups, mais la différence ici est que les fragments d'Ethereum font en fait partie du protocole de couche 1 (l1). Le protocole de couche 1 (l1) détermine ce que sont les fragments, alors que les rollups sont disjoints. À l'origine, il devait y avoir 64 de ces fragments exploités, gérés et produits par le protocole de couche 1 (l1) d'Ethereum. Est-ce que j'articule cela correctement ?
Domothy : Exactement. Obtenir la mise à l'échelle de l'exécution de cette façon est plus indirect avec les rollups et le sharding de données, mais c'est un peu comme un code de triche du point de vue de la recherche, car la couche 1 (l1) d'Ethereum a beaucoup moins de choses à faire et dont elle doit se soucier. Le reste est déchargé sur les rollups, ce qui, à mon avis, est mieux que le plan initial. Dans le plan initial des fragments parrainés par l'état, tout est pareil — même chaîne de blocs, même EVM, mêmes compromis. Maintenant, au lieu de cela, vous pouvez avoir des rollups en concurrence les uns avec les autres pour obtenir le meilleur environnement et les meilleurs compromis. Si vous préférez une super vitesse à une super sécurité, vous pouvez aller sur un rollup différent. Vous avez des choix, de l'innovation et de la concurrence au niveau de la couche 2 (l2).
Ryan Sean Adams : Abordons le monde modulaire dans lequel se trouve Ethereum. Il y a la couche de consensus, la couche de disponibilité des données et la couche d'exécution. La couche de consensus définit ce qui est vrai — l'ordre des blocs. La couche de disponibilité des données est ce qui s'est passé — la couche de données. La couche extérieure est l'exécution, où l'activité se déroule en ce moment. À l'origine, Ethereum combinait ces trois éléments sur la chaîne principale.
Maintenant, ce que nous faisons avec la feuille de route centrée sur les rollups, c'est que nous fragmentons l'exécution de la chaîne principale vers ces rollups. Mais pour que les rollups soient entièrement sécurisés avec des garanties similaires à celles du réseau principal Ethereum, ils doivent renvoyer leurs données sur le réseau principal Ethereum. Lorsqu'ils le font, cela coûte actuellement de l'espace de blocs, et cela coûte beaucoup d'argent. La raison du proto-danksharding (EIP-4844) est que l'économie change d'une manière très favorable aux rollups. Dom, quelque chose à ajouter à ce sujet ?
Domothy : J'ajouterais simplement qu'à l'heure actuelle, la disponibilité des données est plus implicite et se résume à une vérification sans tiers de confiance. Nous voulons que tout le monde puisse vérifier la chaîne par soi-même et ne pas avoir à faire appel à un tiers du genre « fais-moi confiance, mon pote » au milieu. C'est le goulot d'étranglement. Vous devez être en mesure de tout vérifier, ce qui implique implicitement que vous devez avoir les données à votre disposition pour vérifier les transitions d'état.
Fin 2020, les gens ont réalisé que les rollups commençaient à devenir incroyablement bons et populaires, et ils ont résolu notre problème de mise à l'échelle de l'exécution sans avoir besoin du sharding d'exécution. En optant pour un écosystème de rollups plutôt que d'essayer d'être un maximaliste de la couche 1 (l1), les rollups peuvent faire leurs propres compromis, créer leurs propres chaînes de blocs et expérimenter de nouvelles choses. Ethereum gère la vérification — c'est le cœur de ce qu'est une chaîne de blocs.
Qu'est-ce que l'espace de blobs ? (30:00)
Ryan Sean Adams : Maintenant, amène-nous à l'état actuel, Dom. Nous avons de nombreux rollups qui utilisent l'espace de blocs de la couche 1 (l1) d'Ethereum, payant des frais de gaz élevés pour publier leurs données d'état afin que quiconque puisse les vérifier. Alors, Dom, qu'est-ce qu'un blob ?
Domothy : Un blob est juste un morceau de données — plus précisément un grand tableau brut de nombres, pour l'essentiel. Un blob sur Ethereum a actuellement une taille fixe d'environ 128 kilo-octets. Il s'agit simplement de données brutes attachées à une transaction, connue sous le nom de transaction porteuse de blob, que vous soumettez à la couche 1 (l1).
La contrainte de conception cruciale ici est que l'EVM (Machine Virtuelle Ethereum) de la couche 1 (l1) d'Ethereum — le moteur d'exécution — n'a pas accès aux données à l'intérieur du blob. Dans les blocs standards, des données comme les données d'appel impliquent que le système regarde quelles fonctions sont appelées, quel argent est déplacé, et vérifie les changements d'état. L'EVM accède à tout cela. Mais si la mise à l'échelle de la couche 2 (l2) implique de publier les données des rollups précisément pour qu'un vérificateur hors chaîne puisse effectuer le calcul, alors la couche 1 (l1) d'Ethereum n'a fonctionnellement pas besoin de les regarder et de les exécuter.
C'est essentiellement un paquet scellé. La couche 1 (l1) le prend, garantit que tout le monde a accès pour regarder à l'intérieur s'ils veulent le télécharger physiquement, mais la couche d'exécution de traitement principale d'Ethereum elle-même ne lit pas et ne calcule pas activement les données. Parce qu'elle ne lit pas et ne calcule pas les données dans l'EVM, cela nécessite radicalement moins de ressources de traitement de la part des nœuds. C'est pourquoi c'est tellement moins cher.
David Hoffman : Donc pour résumer : l'espace de blocs se soucie du calcul, de l'exécution de l'état et du stockage de la logique. L'espace de blobs se soucie exclusivement de la disponibilité des données. La couche 1 (l1) ne se soucie pas de qui publie quoi dans ces blobs ; tout ce qui lui importe, c'est de recevoir ces blobs et de les conserver pendant la fenêtre de disponibilité désignée afin que les parties intéressées (comme les séquenceurs de rollups et les utilisateurs) puissent les récupérer, vérifier que les données n'ont pas été retenues de manière malveillante, et passer à autre chose.
Domothy : Exactement. Et une autre propriété critique des blobs est qu'ils sont automatiquement élagués après une certaine période — actuellement environ 18 jours. La raison pour laquelle ils sont élagués est que pour garantir une vérification sans tiers de confiance, les individus n'ont besoin de ces données disponibles que pour prouver la finalité et le consensus sur l'état du rollup dans une fenêtre de contestation spécifique. Vous n'avez pas besoin d'un millier de nœuds conservant des blobs d'il y a deux ans pour vérifier votre transaction aujourd'hui. Lorsque la fenêtre expire, vous ne l'obtiendrez plus d'un nœud Ethereum ; vous l'obtiendrez de fournisseurs d'historique, d'indexeurs ou des explorateurs de blocs natifs du rollup. Le stockage sur Ethereum est incroyablement cher pour toujours. L'abandon de l'exigence de stockage nous permet de mettre à l'échelle le débit des blobs sans détruire les disques durs des opérateurs de nœuds.
Économie et danksharding complet (55:00)
Ryan Sean Adams : Nous savons que la 4844 est la première étape — ce que nous appelons le proto-danksharding. Elle établit le format de blob et le marché des frais isolé, mais le nombre cible réel de blobs par bloc est initialement contraint pour être tout à fait sûr. À quoi ressemble cette mise à l'échelle vers le danksharding complet ?
Domothy : À l'heure actuelle, sous l'EIP-4844, nous ciblons essentiellement 3 blobs par bloc, avec un maximum strict de 6. Cela limite le débit de données maximum absolu sur la couche 1 (l1) immédiatement après la mise à jour pour éviter tout stress sur le réseau pendant que nous observons comment la fonctionnalité opère en production continue.
Le danksharding complet met cela à l'échelle de manière spectaculaire. Il s'oriente vers l'échantillonnage de la disponibilité des données (DAS). Avec le DAS, les nœuds complets n'ont plus besoin de télécharger individuellement chaque blob pour vérifier que les données ont été rendues disponibles. Ils peuvent échantillonner statistiquement de minuscules morceaux des données du blob. Si l'échantillon statistique s'avère disponible, la probabilité mathématique qu'un attaquant cache des données s'approche effectivement de zéro (comme une chance sur un milliard). Une fois que vous n'exigez plus le téléchargement complet du blob entier, vous pouvez faire passer la capacité de blobs à deux chiffres ou plus par bloc.
David Hoffman : Cela crée un marché des frais fracturé à l'intérieur d'un bloc Ethereum. À l'heure actuelle, un rollup de couche 2 (l2) doit rivaliser avec les traders d'Uniswap et d'OpenSea pour les mêmes ressources d'espace de blocs dans un bloc Ethereum. Mais ce sont des modèles d'utilisation fondamentalement différents. S'il y a une frénésie pour frapper des NFT sur la L1 d'Ethereum, le gaz monte en flèche, et les rollups de couche 2 (l2) qui essaient de publier leurs données d'état font soudainement face à des dépenses d'exploitation qui explosent juste pour accomplir leurs tâches de sécurité nécessaires.
Avec un marché des frais bidimensionnel — essentiellement une route isolée et séparée sur laquelle les blobs peuvent circuler — cette frappe de NFT sur la L1 d'Ethereum fait grimper le gaz d'exécution de la même manière, mais elle n'utilise aucun espace de blobs. Les blobs restent totalement non congestionnés et coûtent effectivement des centimes. Une frappe de NFT de plusieurs millions de dollars sur la chaîne principale n'a aucun impact sur le coût économique de la finalisation des transactions sur Arbitrum ou Optimism.
Domothy : Oui, ils sont entièrement déconnectés. Et l'inverse est vrai. Si le débit de la couche 2 (l2) augmente considérablement et que des milliers de rollups fonctionnent et congestionnent l'espace de blobs, le pic résultant des frais de base des blobs n'affectera pas le coût d'une simple transaction sur le réseau principal Ethereum. Le frais de base des blobs fonctionne exactement comme le frais de base de l'EIP-1559, mais dans sa propre dimension. Et pour répondre à ta question précédente sur le burn — oui, les frais de blob génèrent de l'ETH brûlé pour payer l'inclusion des données dans l'espace de blobs, de manière totalement séparée du burn des frais de base de l'espace de blocs.
L'avenir de la mise à l'échelle d'Ethereum (75:00)
Ryan Sean Adams : Je veux en venir à ce qui se passe spécifiquement lors de la sortie de la 4844. Initialement, on s'attend évidemment à ce que lorsque la capacité des blobs se débloquera soudainement, il n'y aura pas assez de demande de la part des rollups à cette microseconde exacte pour la remplir complètement. L'espace de blobs sera presque comiquement bon marché au lancement. Mais n'y a-t-il pas la loi de la demande induite ? Si vous avez des ressources incroyablement bon marché, les applications qui consomment ces ressources explosent en volume.
Domothy : La transition initiale fera chuter les frais de la couche 2 (l2) essentiellement à près de zéro, car tous les rollups existants qui se disputent actuellement l'espace de blocs coûteux passeront de manière transparente à un bassin massif et presque vide d'espace de blobs. C'est une expansion de marge massive et instantanée pour les réseaux de couche 2 (l2), qui sera répercutée directement sur les utilisateurs au moment où ils intégreront leur nouvelle logique de preuve avec la 4844.
Mais tu as raison — un espace de blocs bon marché favorise la conception d'applications à haute vélocité. Lorsque vous pouvez soudainement créer un jeu onchain qui génère des millions et des millions de micro-transitions d'état pour des fractions de centime parce que les frais généraux de persistance des données ont disparu, de toutes nouvelles classifications d'applications deviennent économiquement viables, ce qui n'était pas le cas sous des contraintes standard.
Cela met en place une dynamique économique intéressante dans la façon dont l'ETH accumule de la valeur. Si les transactions de la couche 2 (l2) explosent de 10x ou 100x en raison de nouvelles applications possibles fonctionnant sur une disponibilité des données presque gratuite, le volume agrégé finira par entrer en concurrence pour l'espace de blobs. Ensuite, le frais de base des blobs de l'EIP-1559 augmente naturellement jusqu'à ce que le marché atteigne l'équilibre, créant une boucle continue et composée de burn d'ETH tout en élargissant l'utilité de la couche 2 (l2).
David Hoffman : Cela représente le succès et la maturation de la feuille de route centrée sur les rollups. Ethereum, l'environnement d'exécution monolithique, a heurté un mur où la mise à l'échelle linéaire du débit détruisait son mandat de décentralisation. Les rollups ont fourni un moyen de contourner le goulot d'étranglement de l'exécution, mais étaient toujours liés au goulot d'étranglement des données de la couche 1 (l1). L'espace de blobs débloque le goulot d'étranglement des données de la même manière que les rollups ont débloqué le goulot d'étranglement de l'exécution. Lorsque cette mise à jour sera déployée, Ethereum passera complètement du traitement de transactions individuelles au traitement de réseaux d'exécution vérifiés.
Ryan Sean Adams : Pour résumer le calendrier, l'EIP-4844 arrivera de manière optimiste d'ici la fin de l'année ou au début de l'année prochaine, et le danksharding complet suivra dans le cycle de développement ultérieur. C'est vraiment l'échafaudage d'infrastructure nécessaire pour qu'Ethereum intègre la planète entière, et nous sommes si proches de le voir fonctionner dans le monde réel. Dom, merci de nous avoir guidés à travers ce déblocage massif pour le réseau.
Domothy : Merci de m'avoir invité.