Disponibilité des données (data availability)

Ce contenu éducatif vous est proposé par bunq, la néobanque qui facilite vos investissements crypto.
<strong>Investissez dans les cryptos en toute simplicité</strong>
Investissez dans les cryptos en toute simplicité

La notion de disponibilité des données (data availability ou DA) dans le cadre des réseaux blockchain représente la capacité des nœuds du réseau à prouver que des données ont été publiées sur la blockchain. Ces données concernent :

  • Transactions ;
  • Soldes ;
  • État global du registre.

Idéalement, tous les nœuds du réseau devraient pouvoir accéder facilement aux données du système, afin d'effectuer tous types de vérifications, comme :

  • La validité des transactions ;
  • Les en-têtes (headers) des blocs ;
  • Le respect du protocole de consensus.

Le problème de la disponibilité des données

Ces vérifications sont triviales dans le cas des nœuds complets, possédant l'intégralité de la blockchain. Cependant, comment prouver à l'ensemble du réseau qu'un ensemble de transactions est valide (par exemple un rollup), sans que que tous les nœuds n'aient à télécharger l'ensemble des données ? En effet, les nœuds légers et les rollups doivent avoir une disponibilité des données forte pour assurer leur rôle : améliorer la scalabilité du réseau global.

La disponibilité des données influe ainsi sur la vitesse de propagation des blocs, les coûts opératifs des applications, et le consensus général du réseau. Si le débit de données est lent, les frais explosent, ce qui limite le potentiel des applications décentralisées. Dans le cas des rollups, la disponibilité des données est un challenge, car elle représente 95 % de leurs coûts de fonctionnement.

Données - Disponibilité versus stockage
Le stockage et la disponibilité des données sont différents. La DA concerne la vérification d'ensembles de transactions devant être intégrés au bloc courant. Source : Celestia

Différentes techniques permettent d'assurer la disponibilité des données. Elle est la clé de l'interopérabilité et de la scalabilité des différentes blockchains et dApps de l'écosystème crypto.

Comité de disponibilité des données

Cette approche simple consiste à établir un petit comité de nœuds assurant la disponibilité des données. Cette approche centralisée requiert une confiance totale envers le comité. Son rôle est le suivant :

  • Premièrement, vérifier toutes les données (transactions, changements d'état) ;
  • Deuxièmement, les stocker hors-ligne ;
  • Enfin, publier on-chain des attestations prouvant que lesdites données sont disponibles.

On élit les comités par gouvernance décentralisée, ou par désignation aléatoire. Par exemple, sur Ethereum, un algorithme sélectionne au hasard 512 validateurs, qui vérifient ensuite l'intégrité des en-têtes des blocs des clients légers (ces derniers n'ayant pas les données de transaction). Chaque jour, l'algorithme désigne de nouveaux comités aléatoirement.

Le tirage au sort des comités sur Ethereum

Couche de disponibilité des données

On peut aussi utiliser une couche dédiée (data availability layer ou DA layer). L'idée est la suivante : plutôt que de concevoir la blockchain comme une architecture monolithique, on la divise en plusieurs couches, assurant chacune une fonction spécifique. On parle alors de blockchain modulaire. Ce design a de nombreux avantages en termes de scalabilité, de flexibilité et d'interopérabilité.

Échantillonnage

Un parfait exemple de blockchain modulaire est Celestia. Sa couche de disponibilité des données fonctionne grâce à une méthode innovante d'échantillonnage des données (data availability sampling). Elle repose sur le codage d'effacement (erasure coding).

Le codage d'effacement ou codage correcteur consiste à transformer un message (un ensemble de données) composé de k symboles en un message plus long composé de n symboles. Il est alors possible de reconstituer le message original à partir d'un sous-ensemble des n symboles. Il existe de nombreux systèmes de codage d'effacement, souvent basés sur un sur-échantillonnage par interpolation polynômiale. Les codes correcteurs sont par exemple utilisés pour corriger les erreurs de gravure sur un CD-ROM.

L'échantillonnage des données comporte plusieurs étapes :

  • Tout d'abord, les données sont publiées sur la couche dédiée ;
  • Ensuite, intervient le processus d'échantillonnage ;
  • Enfin, l'accès et la vérification des données passent par des appels externes.

Avec cette technique, différents rollups peuvent utiliser Celestia et réduire ainsi drastiquement le coût de la disponibilité des données.

Fragmentation et danksharding

Les données peuvent aussi être fragmentées en sous-ensembles, qui sont ensuite stockés de façon séparée. On parle de sharding. Dans le cas d'Ethereum, le proto-danksharding (EIP-4844) combine fragmentation des données, échantillonnage et séparation des couches.

Les rollups peuvent ainsi ajouter des données fragmentées et échantillonnées aux blocs Ethereum pour des frais faibles. Ces données ne sont pas accessibles par l'EVM et sont effacées au bout d'un certain temps.

Un compromis pour assurer l'interopérabilité

Comme toujours dans l'univers blockchain, la disponibilité des données est un compromis. Il s'agit de maximiser plusieurs propriétés : rapidité, scalabilité, coûts et sécurité. De nombreuses solutions utilisent une combinaison des techniques décrites. Il faut arriver à surmonter plusieurs challenges :

  • Rétention de données : il existe toujours le risque qu'un élément du système obfusque des données (par exemple le séquenceur d'un rollup). Et ce, qu'il s'agisse d'un comportement malicieux ou d'une panne. La confiance repose donc souvent sur des éléments critiques (comme un comité).
  • Sécurité : la scalabilité d'un système ne doit pas remettre en cause sa sécurité. Il faut donc un compromis assurant la disponibilité des données avec une probabilité satisfaisante (sécurité), tout en améliorant la scalabilité du réseau.
  • Limitations techniques : capacité de stockage du matériel et bande-passante limitent les nœuds responsables du stockage des données.
  • Complexification : les architectures blockchain deviennent de plus en plus complexes (notamment les blockchains modulaires).
  • Standardisation : les différentes solutions de disponibilité des données ne sont pas toutes compatibles.

Vous l'aurez compris, la disponibilité des données est un enjeu majeur. En 2025, on distingue plusieurs protocoles tirant leur épingle du jeu.

Les protocoles DA en 2025

  • Celestia : la première blockchain modulaire entièrement dédiée à la disponibilité des données
  • Eigen Layer DA : ce protocole innovant permet aux utilisateurs d'Ethereum de fournir différents services, telle la DA, via le restaking.
  • Near DA : la couche de disponibilité des données de Near Protocol utilise le sharding.
  • Avail : conçu originellement pour Polygon, ce DA Layer combine échantillonnage et comité.
  • Kyve : ce protocole ne fonctionne pas grâce à une blockchain; il s'agit d'un réseau de stockage décentralisé très performant.

Ce qu'il faut retenir

Le concept de disponibilité des données est très important, et souvent mal compris. En effet, les enjeux sont techniques, et les protocoles complexes ! Avant tout, il faut bien différencier stockage, récupérabilité et disponibilité des données. La disponibilité des données est l'assurance d'avoir pu accéder à la totalité des transactions concernées par un ensemble lors de la vérification et validation de ce dernier. Cela ne signifie pas que ces données sont accessibles à tout instant. Il suffit de prouver qu'elles furent disponibles lors de la vérification.

Cette différence subtile permet de concevoir des systèmes de data availability moins demandeurs en espace de stockage. En outre, les différentes techniques d'échantillonnage, d'indexation et de parsing évoluent, pour plus de scalabilité.