Comprendre le Proto-Danksharding (EIP-4844) sur Ethereum

Proto-Danksharding ethereum

Depuis son lancement, Ethereum fait face au défi de répondre efficacement à une demande utilisateur en constante augmentation.

Les récentes mises à niveau, telles que The Merge et l'introduction des rollups, ont considérablement amélioré la capacité de traitement des transactions. Néanmoins, les frais de transaction élevés et une capacité de traitement encore insuffisante freinent l'adoption à grande échelle de la plateforme.

L'EIP-4844 émerge comme une solution intermédiaire, jetant les bases pour un danksharding futur capable de supporter environ 100 000 TPS, sans sacrifier la décentralisation ou la sécurité du réseau.

Qu’est-ce que le Proto-Danksharding ?

Le Proto-Danksharding, dont le nom technique est “EIP-4844”, repose sur une nouvelle technologie de stockage des données : les “blobs” ou Binary Large Objects. Pour faire simple, ces blobs permettront une gestion des données plus efficace et moins coûteuse sur Ethereum.

Concrètement, ces derniers offrent un espace de stockage temporaire spécifiquement dédié aux données transactionnelles (associées aux transactions) traitées par les rollups, avant d’être automatiquement supprimés. En allégeant la charge de stockage sur le réseau, cette approche réduira significativement les frais de transaction sur Ethereum, mais nous y reviendrons plus en détail dans les prochaines sections.

Dans “Proto-Danksharding”, on peut d’ailleurs observer le mot “Sharding”, une technologie qui consiste à diviser la base de données d'une blockchain en plusieurs segments, ou “shards”, afin d'améliorer la capacité de traitement des transactions.

sharding blockchain

La genèse de ce projet trouve son origine dans les travaux de deux chercheurs de la communauté Ethereum, Protolambda et Dankrad Feist, dont les noms ont inspiré le terme “Proto-Danksharding. Par ailleurs, le Proto-Danksharding est considéré comme une étape intermédiaire avant l'implémentation complète du Danksharding, un système qui promet d'accroître drastiquement la capacité de traitement des transactions d'Ethereum.

Au final, l'implémentation de l'EIP-4844 est une avancée considérable pour Ethereum, réduisant les coûts de transaction grâce à des rollups plus économiques, préparant ainsi le terrain pour une plus grande scalabilité de la blockchain.

Qu’est-ce que le DankSharding ?

Au-delà du Proto-Danksharding, le Danksharding représente l'ambition ultime d'Ethereum pour atteindre une scalabilité sans précédent.

En introduisant un système de gestion des données distribué et en optimisant considérablement l'espace disponible pour les données, le Danksharding vise à supporter des centaines de rollups simultanément, rendant possible la gestion de plus de 100 000 transactions par seconde. À titre de comparaison, Ethereum (le layer 1) gère actuellement entre 20-30 transactions par seconde (TPS), ce qui reste relativement faible comparé à d’autres solutions blockchains.

Vous l’aurez compris, cette vision future promet de positionner Ethereum comme une blockchain véritablement scalable, capable de répondre aux besoins d'un réseau de transactions global.

Pour en apprendre davantage sur le DankSharding sur Ethereum : [cliquez sur ce lien]

Comment fonctionne le Pro-Danksharding ?

Au cœur du Proto-Danksharding se trouve donc le concept de “blobs”. Ces segments de données, spécifiquement conçus pour les rollups, offrent une nouvelle manière moins onéreuse et plus efficace de stocker des données sur la blockchain.

Mais avant, revenons très rapidement sur les limitations liées à l’utilisation des rollups :

Limitation de l’approche actuelle des rollups sur Ethereum :

Les rollups sont des solutions de seconde couche conçues pour augmenter la capacité de traitement des transactions d'Ethereum, tout en préservant la sécurité de sa blockchain principale. Cependant, malgré leur efficacité, les rollups se heurtent à des limitations liées principalement à la gestion et au coût de leurs données.

La principale limitation des rollups découle de leur dépendance à l'égard de “CallData” pour la publication des transactions sur la blockchain Ethereum. Pour rappel, CallData est un espace spécifique dans une transaction où les données sont stockées.

calldata etherreum transaction

Bien qu'essentielle (et efficace) pour le fonctionnement actuel des rollups, l'utilisation de CallData présente plusieurs inconvénients :

  • Coût élevé : chaque donnée stockée dans CallData est traitée par tous les nœuds du réseau Ethereum, entraînant ainsi des frais de transaction élevés, surtout lorsque le réseau est congestionné et / ou fait face à des transactions volumineuses.
  • Permanence des données : les informations insérées dans CallData demeurent indéfiniment sur la blockchain. Cette permanence, bien que bénéfique pour la transparence et la vérifiabilité, contribue également à l'augmentation des coûts pour les rollups.

C’est donc à niveau que la technologie des blobs entre en jeu, en venant notamment résoudre les problématiques de coûts et de scalabilité sur Ethereum.

Le fonctionnement des blobs :

Les transactions impliquant des blobs ne subissent pas le même traitement que les données ordinaires. Tout d’abord, lorsqu'un rollup génère une transaction, il regroupe ses données dans un blob, qui est ensuite attaché à un bloc de la blockchain. Cela optimise donc leur capacité de stockage, et ce, même avec des transactions volumineuses.

Il faut les voir comme des conteneurs de données temporaires, spécialement conçus pour améliorer l'efficacité du traitement des transactions sur la blockchain Ethereum.

De plus, contrairement aux données traditionnelles qui résident de manière permanente sur la blockchain, les blobs sont éphémères. Après une durée prédéfinie, fixée à 4 096 époques, soit environ 18 jours (à l’heure où l’article est rédigé), ils seront automatiquement effacés, libérant ainsi de l'espace et optimisant l'utilisation des ressources. Autrement dit : les données contenues dans les blobs ne saturent pas la blockchain de manière permanente.

blob ethereum transaction

Mais ce n’est pas tout. Il est important de noter que les blobs ne sont pas directement accessibles par la Machine Virtuelle Ethereum (EVM), mais plutôt sur la couche de consensus d’Ethereum.

À terme, la capacité d'un bloc sur la blockchain Ethereum sera étendue pour accueillir jusqu'à 16 blobs (par bloc) et jusqu'à 128 Ko de données, multipliant ainsi par cent la quantité de données qu'il est possible de gérer actuellement.

KZG (Kate-Zaverucha-Goldberg) :

Dans le fonctionnement des blocs se trouve également le schéma “KZG” (Kate-Zaverucha-Goldberg), une méthode cryptographique avancée qui permet de créer des preuves compactes pour l'authentification des données contenues dans les blobs.

Cette technologie est relativement complexe, mais tentons de la simplifier : le schéma KZG fonctionne en générant une empreinte cryptographique des données, ou plus précisément un petit “engagement cryptographique”, une sorte de signature qui peut être vérifié de manière efficace sans nécessiter le stockage et le traitement intégral des données originales.

Cela se fait en utilisant des techniques mathématiques avancées qui comparent l'empreinte cryptographique (l'engagement) aux données réelles.

En fournissant une méthode de vérification cryptographiquement sécurisée, le KZG aide à protéger contre les manipulations ou altérations des données, renforçant ainsi la sécurité globale du réseau Ethereum.

Pour en apprendre davantage sur le KZG : [cliquez sur ce lien]

Quels sont les avantages apportés par le Proto-Danksharding ?

Vous n’êtes pas sans avoir que le Proto-Danksharding introduit d’innombrables avantages :

  • Réduction des coûts de transaction : en introduisant les blobs comme moyen de stocker temporairement des données de transaction, le Proto-Danksharding permet une utilisation plus économique de l'espace de bloc, réduisant ainsi les coûts associés à la transmission de données, et donc les frais finaux payés par les utilisateurs.
  • Amélioration de l'efficacité de la blockchain : en éliminant les données éphémères après une certaine période, il empêche l'accumulation de données inutiles, contribuant ainsi à une meilleure efficacité globale. Vous l’aurez compris, cela assure que la blockchain reste rapide et réactive, même face à une augmentation du volume de transactions.
  • Augmentation de la capacité de traitement des transactions : la possibilité d'incorporer jusqu'à 16 blobs par bloc ouvre la voie à une gestion beaucoup plus optimisée et importante de données. Cette gestion donnera à Ethereum la possibilité de gérer des volumes de transactions considérablement plus élevés.
  • Renforcement de la scalabilité d'Ethereum : en facilitant une gestion des transactions plus économique et plus efficace, il prépare le terrain pour l'adoption future du Danksharding, qui promet de propulser la capacité de la blockchain à des niveaux jamais atteints auparavant.

Ce qu’il faut retenir :

Au final, le Proto-Danksharding représente une étape cruciale dans l'évolution d'Ethereum vers une blockchain plus scalable, économique et efficiente.

En introduisant les blobs pour une gestion temporaire des données, l'EIP-4844 promet de réduire significativement les coûts de transaction tout en augmentant le débit de transactions par seconde.

Il ne fait aucun doute que ce déploiement fera parler de lui, en espérant qu’il propulse la blockchain Ethereum à un tout autre niveau d’adoption.