La scalabilité d'Ethereum : solutions de couche 2
Depuis des années, les développeurs de la blockchain Ethereum travaillent sans relâche pour résoudre le problème de la scalabilité de diverses manières. Mais qu'en est-il en termes simples ?
L'idée principale de la "scalabilité" consiste simplement à améliorer la blockchain afin de répondre à une utilisation croissante du réseau sans compromettre les fonctions de base.
Avec la montée en popularité des applications de finance décentralisée (DeFi) et des tokens non fongibles (NFT), cette question est devenue d'autant plus pertinente. En effet, depuis le quatrième trimestre 2020, le réseau Ethereum est de plus en plus encombré, certaines transactions coûtant jusqu'à 100 dollars en frais de gaz.
Pour remédier à cela, plusieurs solutions de couche 2 (Layer 2) tentent de soulager ce point douloureux, qu'il s'agisse de Plasma, de Sidechains, de State Channels ou de Rollups. En effet, ces solutions dites de couche 2 sont largement considérées comme détenant potentiellement les clés pour amener Ethereum à l'échelle et réduire les frais.
D'une certaine manière, la congestion et les frais élevés d'Ethereum témoignent du fait que le réseau est victime de son propre succès. En fait, certaines parties de l'écosystème, comme les DEX et le yield farming, sont relativement inaccessibles à l'utilisateur moyen et ont donné naissance à de nouveaux écosystèmes sur d'autres blockchains, comme la Binance Smart Chain, qui tente d'offrir des services similaires à échelle réduite.
Mise à l'échelle d'Ethereum
Il y a deux façons de faire évoluer une blockchain. La première consiste à travailler sur la chaîne principale elle-même afin d'améliorer directement le débit des transactions. C'est l'objectif même d'Ethereum 2.0.
Cependant, une autre solution consiste à modifier la façon dont les utilisateurs interagissent avec la blockchain. En d'autres termes, au lieu de forcer toutes les transactions sur la chaîne principale, certaines parties peuvent être traitées hors chaîne afin de réduire la congestion. En termes simples, il s'agit de la principale différence entre les solutions de mise à l'échelle de couche 1 et de couche 2.
Par exemple, dans une solution de couche 2, le contrat intelligent sur la chaîne principale ne pourrait avoir que deux tâches : (a) traiter les dépôts et les retraits, et (b) vérifier les preuves mathématiques pour s'assurer que tout ce qui se passe hors chaîne respecte les règles.
Cela nous amène au concept de 'sharding'.
Qu'est-ce que le 'sharding' ?
Le 'sharding' ou partitionnement est une solution qui sera déployée lorsque Ethereum aura entièrement migré son mécanisme de consensus de Proof of Work (PoW) à Proof of Stake (PoS). La migration est une mise à niveau complexe de couche 1, qui se déroule par étapes. En bref, la technique consiste à prendre de gros morceaux de calcul et à les diviser en plus petits "shards" (parties) pour éliminer la charge excessive du réseau.
Toutefois, ce processus ne se fera pas du jour au lendemain et son horizon temporel est plus long que celui des autres solutions qui seront opérationnelles cette année (2021). La bonne nouvelle est donc qu'avec le déploiement des solutions de couche 2, le sharding n'est pas trop urgent.
Quelles sont les solutions de couche 2 ?
Comme indiqué précédemment, il existe deux types de techniques de mise à l'échelle. En raison du plan de développement, les solutions de couche 2 font actuellement l'objet de la plus grande attention. Cela signifie que lorsque l'ETH 2.0 sera entièrement déployé, une part importante de l'activité aura probablement lieu sur les solutions de couche 2, dont l'activité aura augmenté depuis des mois. En bref, voici les catégories qui définissent les types de projets de mise à l'échelle de couche 2 sur Ethereum.
1. Sidechains
Les sidechains, ou chaînes latérales, sont des blockchains indépendantes qui s'apparentent davantage à un hybride entre les solutions de couche 1 et de couche 2. En effet, la chaîne séparée s'appuie sur la sécurité de la chaîne principale tout en employant son propre mécanisme de consensus pour traiter les transactions.
Il est bon de considérer les sidechains comme des réseaux fonctionnant en parallèle avec la chaîne principale d'Ethereum, qui peuvent également communiquer (ou interopérer) entre elles. Les sidechains fonctionnent sur une blockchain séparée avec un mécanisme de consensus comme PoW, PoS, Proof of Authority ou DPoS (preuve d'enjeu déléguée).
Enfin, les actifs sont ensuite créés à l'aide d'un contrat intelligent sur Ethereum et recréés sur la sidechain, où ils peuvent fonctionner. Afin de récupérer l'actif sur Ethereum, l'actif de la sidechain doit être retiré et débloqué sur ETH.
2. State channels
Les 'State channels' ou canaux d'État sont un moyen de mener des interactions sur la blockchain en dehors du système. La façon la plus simple de comprendre les canaux d'État est de prendre un exemple direct. Supposons que Sophie vende à Bob un téléphone avec des paiements mensuels, en lui facturant 20 € par mois. Mais au lieu de le faire sur la chaîne principale, elle pourrait utiliser un canal d'État.
D'abord, Bob bloque un peu d'Ethereum dans un contrat intelligent, puis il signe un message hors chaîne qui enregistre un paiement de 20 € à Sophie. Ce processus est répété chaque mois jusqu'à ce qu'ils concluent leur affaire. Disons qu'Alice veut encaisser lorsque les paiements atteignent 100 € (la moitié du prix du mobile). À ce moment-là, elle publie le ticket sur la chaîne principale, qui est ensuite vérifié par les deux signatures. Une fois cela fait, le contrat intelligent libère 100 € pour Sophie et rend le reste à Bob.
3. Plasma
Plasma est composé d'arbres de Merkle et de contrats intelligents qui, une fois combinés, créent un nombre infini de chaînes plus petites avec des versions plus petites de la blockchain principale d'Ethereum. Les développeurs peuvent construire au sommet de ces structures arborescentes également appelées "chaînes Plasma". Ces chaînes secondaires sont utiles pour régler les litiges et ne doivent pas être confondues avec les sidechains en raison de leurs mécanismes exclusifs de stockage des fonds.
4. Rollups
Enfin, les rollups sont largement présentés comme la solution pour des transactions rapides et peu coûteuses sans compromettre la sécurité.
Mais qu'est-ce qu'un rollup ?
En bref, un rollup est une collection de transactions hors chaîne à l'intérieur d'un contrat intelligent Ethereum qui réduit les frais et la congestion en augmentant le débit de données dans la blockchain de 15 transactions par seconde (tps) à plus de 1 000 tps.
Il existe deux types de technologie de rollup : les rollups optimistes et les rollups ZK. Sans entrer dans les détails techniques, il convient de noter que les deux technologies font des compromis complexes pour fonctionner. Par exemple, les rollups ZK laissent une partie d'une transaction "hors chaîne" si elle n'est pas pertinente pour la mise à jour de l'état (chaîne principale). En revanche, les rollups optimistes ne le font pas car ces données pourraient être nécessaires dans une preuve mathématique anti-fraude.
Les rollups optimistes supposent que la transaction fonctionne bien jusqu'à ce qu'un dénonciateur signale un incident, tandis que les rollups ZK ne font pas cette supposition et utilisent la cryptographie pour vérifier les transactions.
Conclusion
Ethereum est la plateforme la plus largement adoptée sur le marché des cryptomonnaies et les développeurs continuent de privilégier la construction sur son infrastructure de base afin d'améliorer la technologie. Il convient de noter que Vitalik Buterin a soutenu la technologie Optimistic Rollup (mise à niveau de Berlin) à court terme et ZK Rollups comme solution à plus long terme.
Bien que les développeurs puissent choisir indépendamment la technologie à construire, les solutions de mise à l'échelle de couche 1 et de couche 2 seront responsables de la formation du paysage de mise à l'échelle d'Ethereum.
À l'instar d'un jeu de Tétris parfait où toutes les formes ont un cas d'utilisation, les technologies de mise à l'échelle d'Ethereum rapprochent le réseau du système de règlement international par défaut pour le trading mondial.