Ne croyez pas le FUD: Ethereum Can Scale

Hunter Hillman est le responsable de la croissance chez Connext. Steven McKie est l'un des cofondateurs d'Amentum Capital. Eric Olszewski est un développeur Ethereum et cofondateur de Committed.

Au cours des derniers mois, nous avons constaté un nombre important d’articles relatant l’échec et l’effondrement imminents de la plate-forme Ethereum en raison de son incapacité à évoluer et de son manque général d’attrait de la part des utilisateurs. Ce n'est pas une surprise. avec beaucoup de nouvelles technologies émergentes, nous observons un cycle de battage similaire. Dans le célèbre modèle de Gartner, le «creux des attentes gonflées» est rapidement suivi du «creux de la désillusion».

Dans le cas d'Ethereum, nous avons dépassé le premier et nous progressons bien dans le second.

Les préoccupations soulevées dans ces articles sont légitimes, mais ignorent généralement les progrès stupéfiants réalisés quotidiennement en matière d'évolutivité. Non, Ethereum ne peut pas évoluer pour devenir un ordinateur mondial dans son état actuel. Le débit est faible et le coût exorbitant. Cependant, ces problèmes étaient anticipés et bien compris, avant même le lancement de Ethereum en tant que blockchain. Dans cet article, nous aborderons les différentes solutions qui ont été créées ces dernières années pour remédier à ces limitations.

Au milieu de la bulle ICO, des volumes de transactions élevés ont saturé le réseau et ont fait monter le prix du gaz, le peu d’éther nécessaire pour alimenter les transactions. Cela posait des problèmes de mise à l’échelle, que les développeurs d’Ethereum étaient bien conscients et avaient déjà commencé à aborder, bien que cela attirerait l’attention des médias.

La mise à l'échelle d'Ethereum constitue peut-être un nouveau monde pour certains, mais les options de traitement du débit sont sur les radars des développeurs depuis des années:

Échelle Ethereum lui-même pour pouvoir gérer la charge de transaction accrue (par exemple, via les mises à niveau connues sous le nom de Serenity et Casper).
Réduisez la charge sur la chaîne principale en déplaçant le gros des transactions vers une deuxième couche et en utilisant uniquement la couche de base lors du règlement d'une transaction (par exemple, canaux de paiement, canaux d'état, plasma et chaînes latérales).

Les solutions «Layer One» telles que le sharding et Casper figurent sur la feuille de route d’Ethereum depuis quelques années, mais ont subi de multiples revers qui ont empêché des progrès significatifs sur le plan de la mise en œuvre et du développement. Même après ces améliorations, il restera nécessaire de mettre en place des mécanismes de redimensionnement «couche deux» offrant un débit encore plus élevé, des transactions privées et des frais de transaction réduits.

Avant de plonger dans les différentes solutions de la couche deux, nous vous demandons de penser à Ethereum comme une couche de règlement globale plutôt que comme un ordinateur mondial holistique. Cela signifie que Ethereum sert à régler toutes les transactions qui ont été effectuées en dehors de la chaîne principale et à imposer les transferts de valeur en conséquence. C’est ce cas d’utilisation de la blockchain faisant office de tierce partie impartiale pour l’arbitrage sur lequel toutes les solutions de deuxième couche fonctionnent.

A un niveau élevé, toute solution de couche deux suit cette formule, ou une variante de celle-ci:

Deux parties ou plus conviennent d'un ensemble de règles leur permettant de rejoindre et de quitter une solution de couche deux.
Ces parties codent ensuite ces règles dans un contrat intelligent qui exige que chaque partie verse un dépôt de garantie.
Après avoir déposé leurs dépôts de garantie, toutes les parties peuvent opérer entre elles hors chaîne tout en soumettant des mises à jour intermittentes au contrat intelligent en chaîne.
Lorsqu'une ou plusieurs parties souhaitent quitter la solution de couche deux, elles fournissent généralement une preuve cryptographique qui représente avec précision le dépôt de garantie restant de chaque partie.
Il existe une période de contestation où la preuve peut être contestée et jetée. Si la période de challenge est terminée, les parties liées quitteront la solution de couche 2 avec leurs soldes mis à jour.

Couche Deux innovations telles que le plasma et les canaux de paiement / canaux d’État, dont certains traitent déjà des paiements réels en production, faciliteront l’essentiel des transactions Ethereum. Il est difficile, certes, de mettre à l'échelle une blockchain publique (en particulier une chaîne dotée d'un mécanisme de consensus aussi robuste). Mais ce n’est nullement impossible; en fait, smart contract support et la machine virtuelle ethereum (EVM) permettent de nouvelles solutions de dimensionnement et une plus grande extensibilité que d'autres chaînes tentant de redimensionner via une seconde couche avec des scripts basés strictement sur des sorties de transaction non dépensées (UTXO), qui ne sont pas aussi extensibles. , par conception (un ensemble différent de compromis et d’avantages, comme dans tout ce qui se passe en informatique).

Les luttes des applications distribuées (dapps) pour fidéliser les utilisateurs sont bien connues. Mais des années de recherche et de mise en œuvre à grande échelle permettent l'expérience utilisateur et la faible latence nécessaires pour prendre en charge les dapps avec un nombre élevé d'utilisateurs actifs mensuels (MAU).

En bref, les solutions de la couche deux d’Ethereum sont presque prêtes pour le prime time – avec des entreprises comme Cent et Spankchain (avertissement: NSFW), et d’autres, déjà au service d’utilisateurs sur la blockchain en direct – et sont sur le point de bouleverser le récit selon lequel Ethereum ne peut pas évoluer. Les sections suivantes traitent des limites des méthodes de dimensionnement traditionnelles très vantées et plaident en faveur de la suite de solutions robustes et généralisables d'ethereum.

Méthodes d'échelle traditionnelles

La plupart des méthodes d’échelle traditionnelles se résument à l’observation selon laquelle de nombreuses interactions n’exigent pas un consensus rigoureux pour être considérées comme définitives par les parties impliquées. Par exemple, si un détaillant et un client conviennent que le service a été rendu de manière satisfaisante en échange d’un paiement spécifié, la confirmation par une tierce partie, une quatrième et une cinquième partie n’est pas justifiée.

Ce qui compte, ce sont deux facteurs: (i) la certitude que le payeur s’acquittera de sa tâche et (ii) que ni le payeur ni le bénéficiaire n’ont à croire qu’un tiers exécutera fidèlement la transaction comme il se doit.

Ce cadre nous permet d’envisager une mise à l’échelle hors chaîne, dans laquelle les transactions sont effectuées à partir de la blockchain principale, puis réglées sur la chaîne. Pour se conformer à (i), les payeurs doivent s’engager de manière cryptographique et irrévocable à virer des fonds; (ii), ces fonds doivent être transférés de manière non fiduciaire et la transaction doit être exécutoire sur la chaîne si nécessaire.

Ces critères sous-tendent le réseau éclair de Bitcoin, qui a (à juste titre) fait l’objet d’une large couverture médiatique. Pensez-y comme à un onglet de bar: les participants acceptent de payer de petites sommes au cours d'une soirée mais ne s'installent qu'à la fin de la nuit. Il s’agit bien sûr d’une simplification excessive du réseau d’éclair; une explication plus détaillée peut être trouvée ici.

La foudre est indéniablement bonne pour les bitcoins et offre un grand potentiel pour la mise à l'échelle des bitcoins de la couche deux. En partie à cause de la couverture médiatique étendue, la foudre est souvent considérée comme une panacée pour les problèmes de mise à l’échelle de Bitcoin. Dans le même temps, de nombreux articles ont été publiés dans lesquels on qualifiait «les chaînes de blocs Ethereum-killer» et affirmait que l’éthereum n’était pas capable de se mettre à l’échelle. En quelques mots, c'est faux.

Premièrement, Ethereum est plus que capable de réduire le volume des paiements de la même manière que l’éclairage. Les canaux de paiement basés sur le contrat de verrouillage synchronisé (HTLC) sont tout aussi pratiques sur Ethereum que sur Bitcoin. En fait, Ethereum permet des stratégies multi-sauts plus innovantes et conviviales que bBitcoin, et elles peuvent être déployées loin plus facilement.

Étant donné que Bitcoin utilise un modèle UTXO, les fonds doivent en réalité être transférés à l'aide de méthodes de messagerie cryptographiques traditionnelles pour effectuer des transactions (même celles hors chaîne). En revanche, le système de solde de compte d’Ethereum permet des mises à jour des soldes hors chaîne plus simples et moins coûteuses.

Par exemple, les produits Connext mise en place de canaux de paiement (qui a été traitement des paiements en production pour Spankchain depuis quelques mois) utilise des «threads», une implémentation multi-sauts qui permet aux parties de passer directement les mises à jour de solde entre elles plutôt que de s’en remettre au routage des paiements bloqué par hachage. Il s’agit d’une approche moins coûteuse sur le plan informatique, tout aussi rapide et tout aussi sûre, qui convient probablement mieux à de nombreux schémas de transaction que la foudre.

De plus, les interactions de contrat complexes sont un peu plus lourdes à déployer, car les scripts bitcoins sont quelque peu limitants. Le modèle UTXO, bien qu’il soit une excellente méthode pour envoyer et recevoir des transactions signées à vérifier sur un réseau basé sur une chaîne de blocs, signifie que vous devez augmenter vos scripts pour des cas d’utilisation plus novateurs (c.-à-d. Escrows).

Avec la possibilité de généraliser ethereum et la possibilité de créer des jetons, des registres, des actifs non fongibles (tels que CryptoKitties, ou identificateurs numériques pour produits de luxe) et d’autres normes de contrat intelligentes acceptées par la communauté, la construction de contrats modulaires et interopérables visant le MEV est tout simplement plus transparente.

Canaux d'état généralisés

Le contrat intelligent et la prise en charge EVM d’Ethereum permettent une grande variété d’applications qui ne sont pas réalisables actuellementTuring-complet des plates-formes telles que bitcoin, en raison de son architecture et de ses décisions en matière de conception, réduisent sa surface d'attaque globale, ce qui met davantage l'accent sur son cas d'utilisation sans paiements peer-to-peer comme autorisation.

Comme les scripts Turing-complete sont plus compliqués à exécuter que de simples transactions, ces capacités augmentent la congestion globale sur Ethereum (et entraînent la taille de la Etat croître à un rythme beaucoup plus rapide).

Nous avons déjà discuté de la façon dont les canaux de paiement peuvent réduire les frais et la latence pour les paiements entre homologues, mais Ethereum prend en charge une logique de transaction beaucoup plus complexe que les canaux de paiement ne traitent pas.

Les canaux d’État généralisés, cependant, proposent une solution aux problèmes d’échelle associés aux interactions complexes des contrats. À l'heure actuelle, les interactions de contrat avec état qui permettent les cas d'utilisation pour lesquels ethereum est connu doivent être exécutées sur la blockchain. La pensée de beaucoup d’ours Ethereum est qu’à mesure que de plus en plus de contrats sont déployés, appels de fonction va progressivement submerger le réseau et faire baisser les prix de l'essence.

La mise à l'échelle de la couche une, qui a bénéficié de la grande majorité de la couverture médiatique, demande comment nous pouvons prendre en charge davantage de ces interactions complexes sur la blockchain en direct, ou le réseau principal; Les solutions de la deuxième couche, telles que les canaux d’État généralisés et le plasma (nous en parlerons plus tard), nous demandent comment transférer davantage de ces fonctions hors chaîne, tout en préservant la sécurité et l’intégrité fournies par le réseau principal (moyennant certains compromis).

La sécurité des canaux de paiement repose sur la capacité de chaque partie à «se connecter en chaîne» et à utiliser un contrat intelligent pour régler et résoudre les différends. C’est-à-dire que les canaux de paiement permettent à deux parties de se comporter comme si elles effectuaient des transactions en chaîne bien qu’elles ne le soient pas.

Parce qu'ils ont la possibilité de se connecter à tout moment à la chaîne (car les mises à jour de solde qu'ils envoient pèsent lourd dans les transactions en chaîne), le contrat décide simplement de la mise à jour récente du solde en interrogeant le réseau principal chaîne. Le règlement des litiges en chaîne est coûteux, toutefois, en termes de temps et de temps, de sorte que les acteurs rationnels éviteraient ce scénario. Et, si la plupart des chaînes d’État utilisent des normes sécurisées et vérifiées, nous pouvons créer des systèmes interopérables avec une finalité rapide, liés par les mêmes garanties cryptographiques que les interactions du réseau principal, avec un coût en gaz réduit de manière drastique et pratiquement nul.

Instanciation contrefactuelle

Cette approche soulève la question suivante: si nous pouvons inciter les parties à se comporter comme si un simple contrat existait dans la chaîne, pouvons-nous faire de même pour une logique plus complexe? Une stratégie est connue sous le nom d'instanciation contrefactuelle.

Il existe plusieurs implémentations différentes, mais elles reposent sur le même principe: l'état est transféré une fois dans le cadre généralisé et peut être manipulé conformément à un contrat spécifié (mais non déployé) lors de l'ouverture du canal. Les cas litigieux sont également réglés par contrat. Étant donné que les participants ont la possibilité de se connecter et d’invoquer le contrat, ils sont tous incités à se comporter comme s’il existait.

Les effets des canaux d’État généralisés prêts à la production qui tirent parti de l’instanciation contrefactuelle seront doubles:

Les opérations impliquant des contrats pouvant désormais être instanciés de manière contrefactuelle se dérouleront toutes hors chaîne; le volume des contrats déployés diminuera par rapport au statu quo. Cela réduira la congestion du réseau, au bénéfice des contrats devant être déployés en chaîne.
Les opérations hors chaîne dans les chaînes d’État généralisées ne font pas l’objet de temps de confirmation ni de frais d’essence; cela améliorera radicalement l'expérience des utilisateurs et permettra à Ethereum (dans son ensemble) de prendre en charge des volumes de transactions de ordres de grandeur.

Connext, Contrefactuel, Perunet d’autres travaillent activement à la mise en place de cadres de canaux généralisés d’État qui s'attaqueront directement à la congestion du réseau, à l'expérience utilisateur et aux problèmes de coûts que beaucoup citent comme les talons d'Achille d'Ethereum. Ces solutions reposent sur une fonctionnalité contractuelle intelligente, sont bien plus extensibles que les solutions de dimensionnement basées sur UTXO, conservent la sécurité de la blockchain sous-jacente et peuvent ouvrir la voie aux nouveaux marchés et opportunités commerciales promis par Ethereum. Nous pensons que les chaînes d’État généralisées ont le potentiel de transformer l’éthereum de la même manière que la sérénité; que ce soit par manque d’accès à l’information ou par des efforts de publicité insuffisants, ils n’ont pas reçu l’attention voulue.

Foudre

La foudre était le point de départ pour les canaux de paiement basés sur UTXO, échanges atomiques, et plus. Le travail accompli par Olaoluwa Osuntokun, Joseph Poon et l’ensemble de l’écosystème, chercheurs et ingénieurs éclairs, est impressionnant.

Il existe quelques implémentations fonctionnelles du protocole et des spécifications Lightning, y compris le projet LND (de Lightning Labs, dirigé par son scientifique principal, Olaoluwa et écrit dans le langage de programmation Go), et le Projet C-lightning (écrit en C).

En plus des ajouts excitants tels que «Watchtowers» (des services surveillent vos réseaux de paiement pour détecter les fraudes et restent en ligne, vous évitant ainsi que votre nœud ne soit obligatoirement Portefeuille Neutrino (Client léger expérimental de Lightning Labs, également écrit en Go), de nombreuses autres améliorations sont en cours de développement, telles que la spécification Lightning et communauté de développeurs mûrit et grandit.

Certaines des recherches les plus ardues sont actuellement axées sur: l’épissage (dépôt partiel / retrait et déploiement de canaux parallèles); Wumbo (suppression de la limite de capacité du canal); Paiements sur plusieurs chemins (diviser un paiement en plusieurs, ce qui permet de l’acheminer sur plusieurs itinéraires – pensez au sharding); Destinations cachées (itinéraires publics pour les paiements vers des chaînes privées) et de plus en plus de travail acharné est fait à plusieurs reprises lors de conférences et par des équipes indépendantes du monde entier.

Le travail de l'équipe Lightning et la mise à l'échelle des chaînes basées sur UTXO – en utilisant des implémentations ultra-sophistiquées de la crypto – n'est pas une mince affaire et ne peut pas être minimisé. Souvent, le problème est que les utilisateurs cherchent à comparer directement les mesures d’échelle de la couche deux d’Ethereum en utilisant des méthodologies similaires qui ne tiennent pas compte des compromis et des capacités uniques offertes par les deux solutions, en raison de l’architecture unique de la chaîne de racines sous-jacente ( c'est-à-dire le modèle UTXO par rapport au modèle de compte dans Ethereum).

Plasma

Les canaux d'état généralisés sont loin d'être la seule option pour la mise à l'échelle d'éthereum. Plasma est une solution de redimensionnement de deuxième couche qui, conjointement avec les canaux d’État, cherche à fournir un débit et une finalité supplémentaires, mais avec certains compromis supplémentaires.

Considérez le plasma comme une sorte de "proto-chaîne" cherchant à reproduire autant que possible l'intégrité et la sécurité de la chaîne racine, avec une composante de coût variable, qui est généralement supérieure à celle des canaux d'état (en raison de répliquer davantage de fonctionnalités de la chaîne principale sur un nouveau substrat au-dessus de celle-ci).

Le plasma englobe l’ensemble de l’état hors chaîne et le maintient dans son état complet, haché vers la chaîne du réseau principal racine (qui a son propre ensemble de compromis en matière de risque, bien que cela soit constamment amélioré grâce à des recherches supplémentaires).

Bien que le débit puisse être supérieur à celui de la chaîne principale, contrairement aux canaux d’État où il n’existe pas d’algorithme de consensus formel, les chaînes Plasma peuvent apporter leur propre algorithme de consensus, complet avec ses temps de bloc personnalisés (qui possèdent leur propre série de compromis). Bien que le débit et la finalité ne soient pas aussi rapides, ils sont beaucoup plus accessibles que les chaînes étatiques, car tout utilisateur peut accéder à l’état de la chaîne racine qui a été diffusé et rejoint, alors que les chaînes étatiques ne sont disponibles que pour leurs contreparties convenues (dans la plupart des implémentations actuelles). ). De plus, les canaux d’État ne sont plus disponibles après la fermeture d’un canal, ce qui en fait des machines économiques à durée de vie limitée, car ils sont délibérément conçus pour être plus semi-permanents.

Cependant, dans Plasma, puisque vous devez enregistrer chaque interaction d'état dans la chaîne racine, depuis votre chaîne enfant, ces coûts sont plus élevés en fonction de la version de Plasma que vous choisissez d'implémenter. Les percées dans la mise en œuvre optimale du plasma se produisant régulièrement au sein de nombreuses équipes réparties dans le monde entier, nous sommes sûrs qu’une norme commune se dégagera avec un ensemble judicieux de compromis pouvant être appliqués à un large éventail de cas d’utilisation.

Puissance des standards interopérables

La liquidité non dépositaire – et la manière de la transmettre de la manière la plus efficace et la plus sécurisée dans un certain nombre de scénarios impliquant plusieurs participants – est une découverte en cours qui continue de développer la science émergente de la crypto-économie et du fonctionnement de divers mécanismes dans des conditions contradictoires.

Des normes telles que ERC-20 (pour les jetons) et ERC-721 (pour les actifs non fongibles) rendent la technologie et les applications d'évolutivité d'Ethereum Layer Two plus socialement, étant donné qu'il existe des normes acceptées par la communauté et des meilleures pratiques autour desquelles des normes à mettre en œuvre pour certaines utilisations cas. Cela est particulièrement important lorsque ces différentes normes – qui cherchent finalement à interagir de manière fluide pour permettre un «financement décentralisé» – peuvent parler et communiquer de manière interopérable, avec un minimum de frictions et de coûts.

Ces interactions et économies sans friction qui découlent de la nouvelle interopérabilité entre jetons, actifs non fongibles et de l'évolutivité de la couche 2 créent une sécurité supplémentaire pour le réseau plus étendu d'Ethereum, car tous les participants sont désormais imbriqués dans une activité économique complexe au-dessus des couches supérieures. tous construits sur des normes sécurisées, qui ont été audités et acceptés par la communauté technique élargie.

L'importance d'une architecture non personnalisée, associée au chemin de moindre résistance aux fonctionnalités les plus extensibles et généralisables, ne peut être sous-estimée. Ce sont des composants et des primitifs essentiels pour donner vie à de nouvelles machines économiques novatrices, qui, en raison de la limitation des coûts, de la réglementation et de la computation informatique, étaient autrefois considérées impossibles à mettre en œuvre dans le monde réel.

Temps pour un nouveau récit

La mise à l'échelle des chaînes de blocs est difficile, et Ethereum ne fait pas exception. Mais le fait de lionner des chaînes de blocs «ethereum-killer», ou ses alternatives préexistantes, tout cela parce que Ethereum est censé ne pas pouvoir s’adapter, minimise le travail remarquable que la communauté Ethereum effectue sur la technologie de couche 2. Les solutions de couche 1 sont en cours d’élaboration et auront sans aucun doute des effets transformateurs sur le réseau, mais les solutions de couche 2 se retrouvent sur le marché.

Le récit selon lequel Ethereum ne peut pas évoluer et l’idée selon laquelle les solutions de couche 1 sont les seuls plans pour l’échelle du réseau sont fastidieux et sont quotidiennement réfutées dans les environnements de production. Ethereum est aujourd'hui une plate-forme lente et imparable pour de l'argent programmable; le potentiel d'un tel système est évident. Un système financier entièrement nouveau pourrait être construit au-dessus d'Ethereum, et les solutions de la couche deux ouvriront la voie à de nouveaux marchés radicaux exploitant cette pile financière décentralisée.

Le transfert de valeur, la gouvernance, de nouveaux types de marchés et de nouvelles structures d’incitation, la coordination des communautés et même la mise en œuvre appropriée de la politique fiscale sont possibles pour Ethereum. Les développeurs Ethereum voient cet avenir et construisent les dapps nécessaires à sa réalisation. D'autres développeurs Ethereum sont en train de créer des protocoles pour rendre le réseau utilisable à une échelle suffisamment grande pour ouvrir la voie à cet avenir.

Cet article n’est pas destiné à frapper d’autres implémentations de la blockchain, dont beaucoup sont en train de faire progresser la recherche cryptographique, comme indiqué ci-dessus. Ce n'est pas non plus un cas pour les ICO, le shilling et le battage médiatique erroné.

C’est plutôt un cas d’évolutivité Ethereum, pour un avenir économique décentralisé qui utilise la blockchain Ethereum comme couche de règlement et facilite l’essentiel des transactions avec les technologies de couche deux.

C’est le cas de l’éthereum que nous voyons, et qui, nous l’espérons, sera rendu public et verra le jour.

Image Ethereum via les archives CoinDesk.