Spiderchains : une deuxième couche de preuve d’enjeu

Il s’agit d’une extension de ma série d’articles précédente traitant des différentes propositions de sidechain qui existent. Ces articles peuvent être trouvés ici : Spacechains, Spacechain Use Cases, Softchains, Drivechains, Federated Chains et Trade Offs Of Sidechains.

Botanix Labs a récemment proposé une toute nouvelle conception de sidechain, appelée spiderchains, dans le but de porter la machine virtuelle Ethereum sur une plate-forme ancrée au réseau Bitcoin. L’architecture constitue un écart assez important par rapport à la plupart des propositions antérieures de conceptions concrètes. Premièrement, il n’implique pas directement les mineurs dans un consensus et n’utilise pas le merge-mining sous aucune de ses variantes. Deuxièmement, il utilise des obligations multisig et séquestre pour créer un système de preuve de participation de deuxième couche au-dessus de Bitcoin. Troisièmement, son déploiement ne nécessite aucune modification de Bitcoin.

La première chose à clarifier est que, techniquement parlant, la spiderchain n’est pas vraiment la sidechain. Toute chaîne latérale déployée à l’aide de chaînes d’araignées se situerait « au-dessus » de la chaîne d’araignées qui se trouve au-dessus de la couche de base de la chaîne principale. Les blocs Sidechain seraient produits indépendamment par les parties prenantes (appelées orchestrateurs dans le document) dans le système de consensus. La Spiderchain, plutôt que d’être la véritable sidechain, est une sorte de couche de garantie facilitant la garde des fonds des utilisateurs et des obligations des investisseurs sur la chaîne principale. Pensez-y comme au milieu du sandwich entre la sidechain et la mainchain.

La variante de preuve d’enjeu

Pour avoir une meilleure idée du fonctionnement du système, voyons comment la chaîne Botanix EVM interagit avec la couche Spiderchain. L’une des premières utilisations que le système fait de la blockchain Bitcoin, en dehors de la conservation des fonds soutenant les jetons sidechain, est la sélection d’un constructeur de blocs. Les chaînes de preuve de participation nécessitent un processus de sélection pour lequel le joueur rassemble réellement des blocs à partir des transactions dans le pool mémoire. Dans la preuve de travail, tous les mineurs le font de manière indépendante et celui qui a de la chance et trouve un hachage d’en-tête de bloc valide voit son bloc accepté dans la blockchain. Étant donné que l’objectif principal de la preuve de participation est de supprimer la randomisation énergivore de la sélection du bloc suivant, ces systèmes ont besoin d’une autre solution. Ils utilisent une fonction aléatoire vérifiable (VRF), une fonction qui permet à tous les participants de vérifier que le résultat est réellement aléatoire et non biaisé ou déterministe. Les Spiderchains utilisent des blockhashes Bitcoin afin d’acquérir un caractère aléatoire vérifiable.

Tout comme d’autres systèmes de preuve de participation, Botanix divise la blockchain en sections discrètes appelées « époques » qui sont finalisées périodiquement et un nouveau constructeur de bloc est choisi. Au début d’une époque, le blockhash de la chaîne principale est pris et appliqué comme source aléatoire à tous les jalonneurs pour choisir le nouveau constructeur de bloc. Après six blocs, pour tenir compte de la possibilité de réorganisations, le réseau passe au nouveau constructeur de blocs pour cette époque. Maintenant, cela décrit la façon dont le système de preuve de participation gère la construction de blocs sur la sidechain et parvient à un consensus sur à qui revient le tour, il est temps de comprendre comment tout cela interagit avec la spiderchain (et ce qu’est exactement une spiderchain).

La chaîne d’araignées

En plus de l’utiliser périodiquement pour sélectionner un constructeur de bloc, la sidechain utilise également le VRF pour sélectionner un sous-ensemble aléatoire de jalonneurs afin de construire une adresse multisig pour les dépôts dans la sidechain pour chaque bloc Bitcoin. C’est vrai, un ensemble aléatoire de membres pour le multisig du piquet. Contrairement à une sidechain fédérée, qui conserve les fonds dans des adresses composées de l’ensemble des membres de la fédération, les spiderchains divisent chaque dépôt (ou modification des transactions rattachées à la sidechain) en une adresse unique en fonction du bloc de chaîne principale dans lequel elle confirme. d’un sous-ensemble aléatoire de l’ensemble des jalonneurs. Autrement dit, s’il y a 50 personnes qui parient sur une hauteur de bloc donnée, 10 sont sélectionnées au hasard pour être les détenteurs de clés pour tout dépôt effectué dans le bloc suivant. Cela peut intuitivement sembler plutôt fou, mais il y a quelques raisons logiques à cela.

Il sépare le risque de fonds des parties malveillantes. La plupart des gens pensent au vol, mais même la perte de vie peut être un désastre pour des systèmes comme celui-ci. Pensez à une sidechain fédérée, vous n’avez pas besoin d’une majorité malveillante pour causer un problème majeur, juste d’une minorité malveillante. Si une fédération exige un seuil de 2/3 pour déplacer les pièces, alors seulement 1/3 + 1 membre suffit pour garder ces pièces gelées (c’est pourquoi Liquid dispose d’un chemin de récupération d’urgence temporisé avec les clés détenues par Blockstream pour éviter une perte permanente de pièces. dans cette situation). Vous n’avez même pas besoin d’acteurs malveillants à proprement parler, la simple perte de clé pourrait créer ce problème. En divisant les dépôts en clés de sous-ensembles isolés avec des membres aléatoires, vous atténuez (et non résolvez) des problèmes comme celui-ci. Si les clés ont été perdues ou si un acteur malveillant a réussi à obtenir un pourcentage de mise suffisant dans le système pour bloquer ou voler, il n’aura statistiquement jamais accès à l’intégralité des fonds de la Spiderchain. Chaque bloc a des chances totalement indépendantes de construire une adresse de dépôt contrôlée par une majorité malveillante (ou impliquée par une minorité malveillante), et si ces conditions sont remplies, seuls les fonds déposés ou reconduits grâce aux modifications des retraits dans ce bloc spécifique seront en danger. au lieu de la totalité des fonds de la sidechain.

Il existe également une autre propriété de sécurité intéressante qui découle de la manière dont les retraits sont traités. Tout mécanisme de rattachement de sidechain qui ne regroupe pas tous les dépôts en un seul UTXO glissant soulève la question de savoir quels UTXO utiliser pour effectuer les retraits. La conception de la spiderchain a opté pour Last In First Out (LIFO), ce qui signifie que tout retrait de la sidechain sera traité en utilisant les UTXO les plus récemment déposés. Pensez-y dans le contexte d’entités malveillantes rejoignant l’ensemble des intervenants afin de voler des fonds à la spiderchain. Tout l’argent qui a été déposé avant que ces entités malveillantes ne deviennent majoritaires est totalement sécurisé et protégé par un pare-feu jusqu’à ce que toute exigence de retrait commence à nécessiter la dépense de ces fonds et la rotation des changements vers de nouvelles adresses. Désormais, même après avoir constitué la majorité des participants, ils n’auront accès aux fonds que là où ils se retrouveront aléatoirement en tant que membres clés du protocole de création d’adresses de dépôt. Ainsi, même après leur entrée et leur prise en charge, pour ainsi dire, ils n’auront pas un accès complet à tous les fonds déposés par la suite en raison de la création d’une adresse de dépôt à l’aide d’un VRF.

Cette chaîne de multisigs construits aléatoirement est la spiderchain, le mécanisme d’ancrage utilisé pour verrouiller et déverrouiller les pièces dans et hors de la sidechain.

Les obligations de jalonnement

Le dernier élément de tout système de preuve de participation sont les obligations, et c’est assez simple. Si les parties prenantes ne sont pas tenues de fournir quoi que ce soit en garantie en échange de leur participation au mécanisme de consensus, alors rien ne peut leur être retiré en guise de sanction pour comportement malveillant. Ceci est accompli, vous l’aurez deviné, en utilisant la spiderchain. De la même manière que les adresses de dépôt sont générées pour les utilisateurs, chaque bloc, une nouvelle adresse de dépôt est générée pour les personnes qui souhaitent miser sur la sidechain afin de déposer une obligation dans un multisig composé d’un ensemble aléatoire de jalonneurs existants. Une fois cette caution confirmée, le nouveau membre est reconnu comme un jalonneur et inclus dans l’ensemble global parmi lequel les nouveaux constructeurs de blocs et membres d’adresses de dépôt sont sélectionnés.

À ce stade, si un parieur ne répond pas et ne reste pas en ligne ou s’engage dans un comportement malveillant, il peut être pénalisé par une réduction et, si nécessaire, finalement retiré de l’ensemble des parieurs en supprimant la totalité de l’obligation de jalonnement. Ce qui est bien dans cette façon de procéder, c’est que la politique de réduction, c’est-à-dire le montant des pénalités pour des actions ou des comportements inappropriés spécifiques, n’est pas programmatique ou social, mais les deux. Le slashing se produit par programme sur la couche de base de la chaîne principale, mais est initié socialement par les détenteurs de clés d’une obligation de jalonnement. Cela signifie qu’il est possible que les choses soient un peu compliquées, mais qu’il existe une flexibilité pour affiner les choses jusqu’à un équilibre qui permet aux choses de fonctionner d’une manière bénéfique pour les parties prenantes et les utilisateurs.

Coller le tout ensemble

Prenez l’idée de la preuve de participation comme mécanisme de consensus de base et jetez-la de côté pour le moment. Ce n’est pas de cela qu’il s’agit, et les problèmes qui doivent être résolus pour permettre la preuve de participation en tant que système de deuxième couche au lieu d’une couche de base autonome ne sont pas les mêmes. Proof-of-Stake est essentiellement une fédération, mais à laquelle n’importe qui peut adhérer et ne peut être empêché de le faire, et avec un mécanisme pour punir les membres pour actes malveillants. En tant que couche de base qui crée toutes sortes de problèmes existentiels, comme l’objectivité d’une pénalité tranchante. La preuve de participation en tant que deuxième couche ne pose pas ce problème lorsque les obligations à couper se trouvent sur la chaîne principale, régies par la preuve de travail.

Le problème avec la preuve de participation comme deuxième niveau est de savoir comment garantir que les nouveaux membres ne peuvent pas être exclus de la « fédération ». Si tous les fonds sont conservés par les membres actuels, une majorité (ou une minorité malveillante de 1/3 + 1) pourrait empêcher le transfert de fonds vers un multisig incluant de nouveaux membres. On pourrait les empêcher d’adhérer. La façon dont les dépôts et les obligations de jalonnement utilisent la spiderchain, et il est prouvé qu’il s’agit de multisigs générés aléatoirement composés de sous-groupes de la « fédération », cela résout avec élégance le problème de la possibilité pour les membres actuels d’exclure de nouveaux membres. Tout ce qui régit l’adresse des membres et des nouveaux entrants est vérifiable et appliqué par un consensus de deuxième couche avec des informations visibles sur la chaîne principale régies par une preuve de travail. Une fois que quelqu’un dépose une caution, il fait partie de l’ensemble qui est sélectionné pour conserver les dépôts et autres obligations de jalonnement. Tout est là et vérifiable.

Il crée également des propriétés et des dynamiques de sécurité intéressantes en fonction de son fonctionnement. Dans une sidechain fédérée, les fonds instantanés ont été transformés en multisigs composés de suffisamment d’entités malveillantes pour que l’intégralité des fonds des sidechains soit compromise. Avec une spiderchain, l’arrivée d’une nouvelle majorité malveillante peut être presque complètement atténuée si elle est reconnue rapidement. Le simple fait de cesser les nouveaux dépôts jusqu’à ce que les réductions puissent éliminer suffisamment de participants malveillants peut limiter le montant des fonds à risque à la partie statistique des nouveaux dépôts qui se sont retrouvés dans des adresses qu’ils contrôlent depuis qu’ils sont devenus majoritaires. Ils ne seraient pas en mesure de supprimer les anciennes obligations de jalonnement avant leur entrée, mais les membres préexistants seraient en mesure de réduire statistiquement une partie de leurs obligations.

Tant que la taille des multisigs individuels est équilibrée avec le nombre total de jalonneurs et la valeur de tous les dépôts par rapport aux obligations de jalonnement, cela pourrait être un système très efficace.

Dans l’ensemble, il s’agit d’une proposition très intéressante qui propose des solutions intéressantes aux problèmes de « mise à niveau » des fédérations vers un système de preuve de participation : la possibilité pour n’importe qui d’y adhérer, des mécanismes de protection contre les membres malveillants et une incitation à participer car les parieurs peut partager les frais de transaction. Le kicker ? Pourquoi devriez-vous vous en soucier ? Cela ne nécessite aucun fork pour l’activer, donc cela va arriver.

%d blogueurs aiment cette page :