Ceux qui sont dans la sphère crypto depuis plus de cinq minutes auront sans aucun doute rencontré des discours sur le problème de mise à l’échelle du Bitcoin.
La capacité limitée offerte par la taille de bloc par défaut de 1 Mo sur le réseau Bitcoin a fait l’objet d’un débat en cours, avec un désaccord sur la meilleure façon de faire évoluer le réseau pour permettre à Bitcoin de devenir un élément fondamental de notre infrastructure financière et de paiement mondiale.
Les solutions les plus médiatisées au problème de mise à l’échelle de Bitcoin, du moins à ce jour, se sont concentrées sur les solutions de couche deux. C’est-à-dire ceux qui se trouvent au-dessus de la blockchain et n’effectuent pas de transactions directement dessus, comme le Lightning Network et Strike.
Ces solutions retirent les transactions de la blockchain – la première couche – au profit de réseaux moins chers, appelés sidechains, qui sont ensuite réglés sur la première couche.
Pour nChain CTO et directeur technique de l’équipe d’infrastructure Bitcoin SV, Steve Shadders, la recherche de solutions de deuxième couche pour résoudre la mise à l’échelle complique non seulement les choses, mais s’éloigne des avantages fondamentaux et de la proposition de valeur d’une blockchain. Au lieu de cela, Shadders soutient que Bitcoin pourrait toujours évoluer à la première couche, il s’agissait simplement de le laisser faire.
Le mois dernier à Zurich, lors de la conférence biannuelle CoinGeek, Shadders a fait une démonstration en direct de ce qu’il a appelé Teranode – une implémentation de nœud Bitcoin multi-machines conçue pour l’échelle – car elle a traité activement plus de 50 000 transactions par seconde en temps réel directement sur le Blockchain Bitcoin SV.
Solutions de première couche
Par rapport au statu quo sur le réseau Bitcoin, où les solutions de première couche sont limitées à environ sept transactions par seconde, il s’agit d’une augmentation apparemment incroyablement importante.
La clé : aborder la mise à l’échelle différemment. La vision traditionnelle de la mise à l’échelle des blockchains consiste à effectuer une mise à l’échelle verticale, c’est-à-dire en augmentant la puissance de chaque nœud pour faire face à un plus grand volume de transactions. Teranode conteste cette position en évoluant plutôt horizontalement sur plusieurs machines de base.
« C’est ainsi que la plupart des pays du monde parviennent à évoluer dans les architectures traditionnelles – pensez aux Google et aux Amazon du monde – en répartissant simplement la charge de travail sur plusieurs machines de la manière la plus efficace possible », explique Shadders.
« Teranode applique cette philosophie à Bitcoin et réinvente la façon de mettre en œuvre le protocole Bitcoin. Plusieurs tâches différentes doivent être effectuées par un nœud Bitcoin, dont la plupart sont complètement indépendantes les unes des autres.
« Cela signifie qu’il n’y a aucune raison pour laquelle ils doivent s’asseoir sur une seule machine car il n’y a pas de dépendances croisées entre ces pièces de travail individuelles. »
L’implémentation Teranode que Shadders a montrée est étayée par le Teranode Open Framework, un modèle et une méthodologie agnostiques technologiques basés sur des pipelines configurables – essentiellement une série ordonnée de tâches non liées à des machines spécifiques, lui permettant de s’adapter horizontalement à travers des clusters de nœuds de travail.
Teranode applique cette méthodologie à Bitcoin, permettant l’allocation efficace des tâches et des ressources pour un nœud au sein d’un système configurable et adaptable. En termes simples, cela signifie que Teranode lui-même évolue également. Un débit de transaction plus élevé est activé en ajoutant plus de nœuds de travail aux clusters et en allouant des ressources entre eux.
Une décennie de travail
Pour la plupart, CoinGeek Zurich sera la première fois que l’expression Teranode entrerait dans leur langue vernaculaire. Mais pour Shadders, la démonstration en direct représentait le produit de la plus grande partie d’une décennie de travail, construisant et développant une idée qui est née tard une nuit dans sa ville natale de Brisbane, en Australie.
« Allongé dans mon lit, il devait être près de 2 heures du matin, et je réfléchissais aux concepts d’architecture de microservices et à la façon dont les dépendances Bitcoin sont structurées en interne », dit-il.
« Comme un nerd total, j’avais un grand tableau blanc dans ma chambre et quand il a cliqué pour moi, j’ai sauté du lit et j’ai juste commencé à griffonner dessus. Il y avait la pleine lune et je n’avais même pas eu les moyens d’allumer une lumière, je dessinais frénétiquement des boîtes.
« Ma femme s’est réveillée quelques minutes plus tard et m’a demandé ce que je faisais, avant de souligner que je n’avais pas de pantalon et que je voudrais peut-être en parler avant de continuer avec autre chose. »
Ce que Shadders appelle maintenant de manière attachante « l’incident du tableau blanc » et les concepts qui en ont émergé n’ont pas immédiatement gagné du terrain. Ils ont cependant donné l’impulsion à son déménagement à Londres peu de temps après pour rejoindre nChain, où il a été chargé de développer la prochaine génération de logiciels de nœuds Bitcoin.
« J’avais déjà une grande partie de ce dont j’avais besoin pour poursuivre ce projet », se souvient-il.
« J’avais déjà beaucoup travaillé sur bitcoinj – une implémentation Java du protocole Bitcoin – pour implémenter de grandes parties de la fonctionnalité du protocole et développé un logiciel de pool de minage qui a été utilisé par près de la moitié des mineurs Bitcoin du monde à son apogée.
« Ce que je n’avais pas, c’était une équipe suffisamment proche physiquement pour pouvoir travailler ensemble efficacement. »
Cette partie de l’équation a été résolue lorsque Shadders est arrivé à Londres, avec nChain rassemblant une équipe de programmeurs et d’ingénieurs qui ont partagé sa vision large de la mise à l’échelle de Bitcoin et ont demandé comment exactement cela pouvait être mis en pratique.
Des principes directeurs
« Lorsque nous avons organisé nos premiers ateliers de groupe à nChain en 2019, nous avons écrit quelques principes directeurs, dont l’un était de n’assumer aucune limite sur les ressources disponibles et que chaque système serait poussé des ordres de grandeur au-delà de ce que nous pensons en ce moment, » il expliqua.
« Cette façon de penser signifiait que quelques-unes des idées et des structures de données que j’avais en tête et que j’ai réalisé a fait avoir un plafond d’échelle – c’était juste que c’était bien au-delà de tout ce que je pensais pouvoir être nécessaire.
« Mais au fur et à mesure que le temps passait et que nous réfléchissions à de nouvelles façons d’utiliser Bitcoin, ces hypothèses se sont effondrées et nous pensons maintenant à des millions, voire à des milliards de transactions par seconde. »
Cette innovation intervient alors que Bitcoin continue de subir des coups durs dans les médias sur sa consommation de ressources et son impact environnemental. Shadders soutient que la mise à l’échelle de Bitcoin met ces arguments de côté, car l’efficacité et les cas d’utilisation potentiels du réseau augmentent de façon exponentielle, modifiant complètement la proposition de valeur.
« La consommation d’énergie de Bitcoin a très peu de relation avec le nombre de transactions en cours de traitement – si vous traitez un million de transactions par seconde, vous avez alors une efficacité 200 000 fois supérieure en coût énergétique par transaction que la moyenne actuelle de cinq transactions par seconde que nous voir sur BTC », ajoute-t-il.
« Le coût par transaction est ce qui est important ici. Une transaction individuelle représente une certaine quantité d’utilité et cela ne nous dérange pas d’utiliser de l’énergie pour créer de l’utilité – personne ne dirait que nous ne devrions pas utiliser l’énergie pour faire fonctionner un hôpital, car cela offre une valeur énorme pour les personnes qui l’utilisent et pour la société en général.
« De même, si nous pouvons définir quelle est l’utilité réelle de Bitcoin, alors nous avons une métrique pour mesurer ce que nous obtenons de l’énergie que nous dépensons et pouvons finalement déterminer la valeur du réseau. Et cette utilité ne peut être réalisée qu’avec un Bitcoin qui peut évoluer sans limites. »