Aborder simplement les couches des blockchains

Reconnaissons que le monde de la blockchain adore utiliser un jargon sophistiqué. La plupart des définitions de la blockchain se limitent aux caractéristiques techniques de la technologie, elles-mêmes souvent abstraites pour beaucoup d’entre nous : “technologie de stockage”, “liste d’enregistrement”, “système peer-to-peer”, “noeuds de stockage”, “cryptographie”, “algorithme de consensus", “réseau décentralisé”... Un langage d’initié exclut ceux qui ne le maîtrise pas. 

Or, d’après moi, c’est aux initiés de faire un pas pédagogique vers le plus grand nombre et non au grand nombre de se mettre au niveau des initiés. Nous pouvons tous décrire des technologies bien implantées aujourd’hui : une voiture, une station spatiale, une fusée, une enceinte bluetooth… La compréhension technique des objets technologiques passe après leur compréhension conceptuelle et utilitaire. Rares sont ceux qui décrivent une voiture comme étant : un châssis métallique constitué d’un moteur à combustion fonctionnant avec une source d’énergie fossile ou non fossile. Un autre exemple pourrait être le protocole TCP/IP : vous n'avez pas besoin de savoir ce que c'est ou comment ça marche pour utiliser Internet. Les développeurs doivent le savoir, mais les personnes comme vous et moi, nous l'utilisons simplement. Alors comment aborder simplement les différentes couches des blockchains ? Voici la théorie du sandwich.

Couche 1 : choisissez votre pain

La couche 1 est comme le pain du sandwich, c'est la base de la blockchain. Une "couche" est simplement une façon de décrire les aspects fonctionnels d'une blockchain. Chaque blockchain possède son propre code qui lui permet de faire son travail. Par exemple, le code de Bitcoin lui permet de traiter les transactions, mais ne lui permet pas de programmer les contrats intelligents facilement. En revanche, le code d'Ethereum permet à la fois de traiter les transactions et de programmer des contrats intelligents. Ethereum étant devenue la référence en la matière. 

Aujourd'hui, Bitcoin et Ethereum, entre autres, sont considérées comme des blockchains de couche 1. Cela signifie qu'elles peuvent fonctionner sans avoir besoin d'accéder à d'autres blockchains. À l'origine, les couches 1 étaient la seule option pour les blockchains, car tout le monde pensait qu'elles étaient tout ce dont nous avions besoin. Il faut dire qu'il y a 10 ans, l'intérêt n'était pas le même qu'aujourd'hui. Mais, hélas, aucune blockchain de couche 1 n'a encore résolu le trilemme de la blockchain. Qu'est-ce que le trilemme ? Il s'agit des trois éléments dont une blockchain a besoin pour fonctionner dans des conditions optimales : sécurité, évolutivité et décentralisation (article qui explore en profondeur le trilemme des blockchains : ici). Et c'est là que les couches supplémentaires entrent en jeu.

Couche 2 : choisissez votre garniture

La couche 2 est comme la garniture de votre sandwich, c'est une amélioration de la blockchain. La couche 2 fait référence à une solution de mise à l'échelle construite à partir du code d'une blockchain de couche 1, et la solution de couche 2 dépend de la couche 1 pour exécuter certaines fonctions. Le plus souvent, les couches 2 utilisent la sécurité des couches 1 et se concentrent sur la fourniture d'éléments tels que des frais de transaction moins élevés et des vitesses de traitement plus rapides. En d'autres termes, les couches 2 se concentrent le plus souvent sur l'évolutivité, et les couches 1 sur la sécurité. Les différentes couches 2 utilisent différents types de solutions pour résoudre ces problèmes. Les meilleurs exemples de couches 2 sont les solutions Arbitrum et Optimism sur Ethereum. 

Parlons un peu des chaînes latérales. La chaîne latérale est aussi un type de solution de mise à l'échelle de couche 2, mais cette fois-ci, elle est sa propre blockchain (contrairement à Arbitrum et Optimism). C’est-à-dire qu’elles dépendent de leur propre sécurité et ont besoin de leurs propres validateurs ou mineurs. Un exemple de chaîne latérale est le réseau Polygon, qui fonctionne avec l'écosystème Ethereum (article qui explore en profondeur les solutions de couche 2 et les chaînes latérales : ici).

Couche 0 : choisissez bien votre sandwicherie 

La couche 0 c'est comme utiliser le même type de farine pour faire tous les sandwichs, elle permet l'interopérabilité des blockchains. La couche 0 est une infrastructure sous-jacente sur laquelle une couche 1 de la blockchain peut être construite. La couche 1 construite au-dessus de la couche 0 peut partager des données avec d'autres couches 1 construites au-dessus de la couche 0. C'est ce qu'on appelle l'interopérabilité. Cosmos et Polkadot sont tous deux des couches 0 car ils fournissent le même langage de codage et la même infrastructure qui peuvent être utilisés pour construire différentes blockchains de couche 1. On peut comparer les couches 0 au langage HTML et les sites Web construits avec ce langage sont les couches 1. Chaque site web peut avoir son propre login, son propre contenu et sa propre motivation, mais il utilise la même infrastructure que les autres sites web et peut donc envoyer des messages dans les deux sens.

Couche 3 : choisissez vos condiments 

La couche 3 c'est comme l'assaisonnement de votre sandwich, elle permet d'améliorer la structure d'une blockchain. Toutes les blockchains ne disposent pas d'une couche 0 leur permettant de communiquer avec d'autres blockchains. La couche 3 est une solution proposée au problème de l'interopérabilité. Actuellement, la plupart des applications numériques (Dapps) sont construites directement sur la chaîne de niveau 1 ou 2, ce qui signifie qu'elles ne peuvent fonctionner que sur cette chaîne. Il serait intéressant de pouvoir utiliser une application de confiance comme Aave avec ses options de prêt et d'emprunt sur la chaîne de votre choix. Si elle était construite comme une couche 3, elle pourrait être en mesure de le faire. Pour cette raison, la couche 3 est considérée comme la couche d'application d'une blockchain. Fondamentalement, c'est là que les différentes dApps, comme les jeux et les portefeuilles, peuvent fonctionner.

En d’autres termes, avec les couches 3, un jeu vidéo blockchain pourrait fonctionner sur plusieurs blockchains. De cette manière, si quelqu'un sur Ethereum veut jouer au jeu, et que quelqu'un sur Solana veut aussi jouer, avec une solution de couche 3, le jeu pourrait être configuré pour qu’il fonctionne sur les deux blockchains. 

Il existe très peu de protocoles de couche 3, car il s'agit d'une idée assez nouvelle, il faut donc se méfier des personnes ou des produits qui prétendent être de couche 3 (bien qu'il en existe quelques-uns bien établis, comme le protocole de communication inter-blockchain de Cosmos).

Comme vous pouvez le constater, l'architecture des blockchains est assez compliquée. Il y a beaucoup de couches, et ce qu'elles font dépend de l'écosystème. En tout cas, je tiens à vous féliciter. Si vous êtes arrivés jusqu’ici, vous êtes maintenant un expert en sandwichs blockchain.