L'émission d'actifs basés sur la BTC a toujours été un sujet brûlant. Des premières Colored Coins en 2011 au récent protocole Ordinal, la communauté BTC a toujours été capable de trouver de nouveaux acteurs et de nouveaux consensus, mais peu d'entre eux sont restés en place. Cependant, Lightning Labs a dévoilé des plans ambitieux pour développer des monnaies stables basées sur les actifs Taproot. Tether a également annoncé qu'il utiliserait le protocole RGB pour frapper des USDT sur la couche 1 de Bitcoin.
Cela signifie que le célèbre OmniLayer (anciennement Mastercoin) n'est plus le plus grand acteur de l'écosystème BTC. Et les protocoles de validation côté client (CSV) commencent à entrer dans la vision de tous. Ces protocoles permettent non seulement de maintenir l'intégrité des protocoles traditionnels des actifs Bitcoin, mais aussi d'améliorer l'évolutivité. Cependant, l'existence d'un éventail de protocoles d'actifs au sein de l'écosystème Bitcoin soulève des questions pertinentes : En quoi diffèrent-ils les uns des autres, et comment naviguer et saisir les opportunités dans ce paysage ?
Cet article vise à guider les lecteurs à travers une revue complète des différents protocoles d'actifs qui ont émergé dans l'histoire de Bitcoin. En outre, il cherche à approfondir les trajectoires potentielles d'évolution des protocoles d'actifs basés sur le bitcoin dans un avenir prévisible.
Le concept des "Colored Coins" a été formulé pour la première fois par Yoni Assia, aujourd'hui PDG d'eToro, dans son article fondateur "bitcoin 2.X (aka Colored bitcoin)", publié le 27 mars 2012. L'article affirmait que la technologie sous-jacente de Bitcoin était aussi fondamentale et sans faille que le HTTP pour l'internet. C'est pourquoi le protocole du jeton Colored Coins a été conçu sur la base de la BTC.
Yoni Assia a imaginé la création d'économies BTC 2.0 grâce à cette innovation, permettant à n'importe quelle communauté de générer plusieurs monnaies de cette manière. L'utilisation de la technologie sous-jacente de Bitcoin pour le règlement des transactions et la prévention de la double dépense était, à l'époque, une idée pionnière.
Colored Coins est un protocole conçu pour émettre des actifs sur la blockchain Bitcoin. Il fonctionne en "colorant" une fraction spécifique de bitcoins pour qu'ils correspondent à d'autres actifs. Ces bitcoins marqués conservent leur fonctionnalité d'origine, mais ils représentent également un autre actif ou une autre valeur. La question pressante était toutefois de savoir comment cette idée pouvait se concrétiser sur le réseau Bitcoin.
Le 3 juillet 2014, ChromaWay a fait un grand pas en avant en développant le protocole EPOBC (Enhanced Colored Coins Order-based Protocol), qui a grandement simplifié le processus de création de pièces colorées pour les développeurs. Il s'agit du premier protocole à utiliser la fonction OP_RETURN de Bitcoin Script.
Le résultat est le suivant :
Une telle mise en œuvre est très concise, mais elle pose également de nombreux problèmes :
Les Colored Coins sont essentiellement un système de suivi des actifs qui utilise les règles de validation de Bitcoin pour suivre les transferts d'actifs. Toutefois, pour prouver qu'une sortie spécifique (txout) représente un actif particulier, vous devez fournir toute la chaîne de transferts depuis l'origine de l'actif. Cela signifie que la validation d'une transaction peut nécessiter une longue chaîne de preuves. Pour y remédier, des propositions telles que OP_CHECKCOLORVERIFY ont été faites pour aider à valider les transactions de Colored Coin directement sur BTC, mais la proposition n'a pas été adoptée.
Le concept de Mastercoin a été initialement proposé par J.R. Willett. En 2012, il a publié un livre blanc intitulé "The Second Bitcoin Whitepaper", qui expose l'idée de créer de nouveaux actifs ou jetons sur la blockchain Bitcoin existante. Ce concept a fini par être connu sous le nom de "MasterCoin", qui a ensuite été rebaptisé "Omni Layer".
En 2013, le projet Mastercoin a réalisé une première version de ce que l'on appelle aujourd'hui une ICO (Initial Coin Offering) et a réussi à lever des millions de dollars. Cette opération est considérée comme la première ICO de l'histoire. L'une des applications les plus remarquables de Mastercoin est Tether (USDT), un stablecoin fiat-collatéralisé bien connu, qui a été initialement émis sur la couche Omni.
En fait, l'idée du Mastercoin a précédé celle des Colored Coins. Si nous en parlons en second lieu, c'est parce que MasterCoin est une solution relativement plus complète que les Colored Coins. MasterCoin a mis en place une couche de nœuds complète, offrant des fonctionnalités plus complexes telles que les contrats intelligents. En revanche, Colored Coins est plus simple et plus direct, et se concentre principalement sur la "coloration" ou le marquage des UTXOs de Bitcoin pour représenter d'autres actifs.
La principale différence entre les deux est que, sur la blockchain, le Mastercoin enregistre uniquement divers types de transactions et ne stocke pas les informations relatives aux actifs. Dans les nœuds du Mastercoin, une base de données du modèle d'état est maintenue en analysant les blocs Bitcoin, et cette base de données réside dans les nœuds hors de la blockchain.
Comparé aux Colored Coins, le Mastercoin peut exécuter une logique plus complexe. En outre, comme il n'enregistre ni ne vérifie les états sur la blockchain, ses transactions n'ont pas besoin d'être consécutives (colorées en continu).
Toutefois, pour mettre en œuvre la logique complexe de Mastercoin, les utilisateurs doivent faire confiance à l'état conservé dans la base de données hors chaîne au sein des nœuds ou exécuter leurs propres nœuds Omni Layer pour effectuer des vérifications.
En résumé :
La principale différence entre le Mastercoin et les Colored Coins est que le Mastercoin ne conserve pas toutes les données nécessaires au protocole sur la blockchain. Au lieu de cela, il s'appuie sur le système de consensus de Bitcoin pour gérer ses propres publications et commandes de transactions, puis il maintient l'état dans une base de données hors chaîne.
Selon les informations fournies par OmniBolt : Omni Layer propose un nouveau protocole d'actifs UBA (UTXO Based Asset) à Tether, qui utilisera la mise à jour Taproot. Ce protocole intégrera des informations sur les actifs dans la feuille de tapotement, ce qui permettra des fonctions telles que les paiements conditionnels. Parallèlement, OmniBolt travaille à l'intégration de Stark dans l'infrastructure du réseau Lightning de l'Omni Layer.
Pour comprendre le concept de validation côté client (CSV), il faut remonter à l'année qui a suivi l'émergence des Colored Coins et de Mastercoin, c'est-à-dire 2013. Cette année-là, Peter Todd, l'un des premiers chercheurs sur le bitcoin et la cryptographie, a publié un article intitulé "Disentangling Crypto-Coin Mining : Timestamping, Proof-of-Publication, and Validation". Bien que le titre ne mentionne pas explicitement la validation côté client, une lecture attentive révèle qu'il s'agit de l'un des premiers écrits présentant ce concept.
Peter Todd a cherché des moyens de rendre le fonctionnement de Bitcoin plus efficace. Il a développé un concept plus complexe de validation côté client, basé sur l'idée d'horodatage. En outre, il a introduit le concept de "sceau à usage unique", qui sera mentionné plus loin.
Pour suivre le raisonnement de Peter Todd, nous devons d'abord comprendre quel problème Bitcoin résout réellement. Selon Peter Todd, le bitcoin répond à trois problèmes :
À ce stade, vous vous souvenez peut-être d'OmniLayer, dont nous avons parlé précédemment. OmniLayer lui-même ne délègue pas le calcul et la validation de l'état à Bitcoin, mais il réutilise la sécurité de Bitcoin. Colored Coins, quant à lui, confie le suivi de l'état à Bitcoin. L'existence de ces deux systèmes a déjà démontré que la validation ne doit pas nécessairement avoir lieu sur la blockchain.
Tout d'abord, examinons ce qui doit être vérifié :
Il est facile de remarquer que pour les actifs émis en bitcoins, chaque transaction nécessite une vérification de l'ensemble de l'historique des transactions concernées afin de s'assurer que les intrants référencés n'ont pas été dépensés et que l'état est correct. Ce n'est pas du tout pratique. Comment pouvons-nous donc améliorer la situation ?
Peter Todd suggère de simplifier ce processus en changeant l'objectif de la vérification. Au lieu de confirmer que la production n'a pas été dépensée deux fois, cette méthode vise à s'assurer que les intrants d'une transaction ont été publiés et qu'ils ne sont pas en conflit avec d'autres intrants. En ordonnant les entrées dans chaque bloc et en utilisant un arbre de Merkle, ce type de vérification peut être effectué plus efficacement car il ne nécessite qu'une petite partie des données à chaque fois, et non l'historique complet de la chaîne de l'entrée.
La structure de l'arbre d'engagement proposée par Peter Todd est la suivante :
CTxIn -> CTxOut -> <merkle path> -> CTransaction -> <merkle path> -> CTxIn
Mais comment stocker un tel arbre d'engagement sur la blockchain ? C'est ici que nous pouvons introduire le concept de "scellé à usage unique".
Le sceau à usage unique est l'un des concepts fondamentaux pour comprendre le CSV. Il est similaire au scellé physique à usage unique utilisé pour protéger les conteneurs de marchandises. Un scellé à usage unique est un objet unique qui peut être fermé précisément une fois sur un message. En termes simples, un scellé à usage unique est un mécanisme abstrait utilisé pour éviter les doubles dépenses.
Le protocole SealProtocol comporte trois éléments et deux actions.
Éléments de base :
Opérations de base : Il existe deux actions de base :
La sécurité de la mise en œuvre d'un sceau à usage unique signifie qu'un attaquant ne peut pas trouver deux messages différents m1 et m2 tels que la fonction Verify renvoie un vrai pour le même sceau.
En termes simples, un sceau à usage unique garantit qu'un bien ou un élément de données n'est utilisé ou verrouillé qu'une seule fois. Dans le contexte du bitcoin, cela signifie généralement qu'un UTXO ne peut être dépensé qu'une seule fois. Ainsi, les résultats des transactions Bitcoin peuvent être considérés comme des sceaux à usage unique, et lorsqu'un résultat est utilisé comme entrée dans une autre transaction, ce sceau est "brisé" ou "utilisé".
Pour les actifs sur Bitcoin, Bitcoin lui-même fait office de "témoin" (w) pour le sceau à usage unique. En effet, pour vérifier une transaction Bitcoin, les nœuds doivent s'assurer que chaque entrée de la transaction fait référence à une UTXO valide et non dépensée. Si une transaction tente de dépenser deux fois un UTXO qui a déjà été utilisé, les règles de consensus de Bitcoin et le réseau de nœuds honnêtes rejetteront cette transaction.
En d'autres termes, c'est encore plus simple :
Un sceau à usage unique traite toute blockchain comme une base de données, où l'on stocke un engagement envers un certain message et où l'on maintient son statut comme étant dépensé ou non dépensé.
En résumé, les actifs qui utilisent la validation côté client présentent les caractéristiques suivantes :
Pour ceux qui utilisent des actifs avec validation côté client, il y a un point supplémentaire à noter :
Lors de la transaction et de la validation d'actifs avec une validation hors chaîne côté client, il est nécessaire non seulement de présenter la clé privée qui détient l'actif, mais aussi de fournir une preuve complète du chemin de Merkle pour l'actif correspondant.
Le concept de RVB a été proposé par Giacomo Zucco, une figure bien connue de la communauté, après 2015. C'était une période où Ethereum était en plein essor, où les ICO (Initial Coin Offerings) proliféraient et où de nombreuses tentatives ont été faites pour créer des projets au-delà du Bitcoin, tels que Mastercoin et Colored Coins.
Giacomo Zucco a été déçu par cette évolution. Il estime qu'aucun de ces projets n'est à la hauteur du potentiel de Bitcoin et que les tentatives précédentes de mise en œuvre de jetons sur Bitcoin sont inadéquates. À cette époque, il rencontre Peter Todd et se passionne pour les idées de ce dernier sur la validation côté client (CSV). C'est ainsi qu'il a proposé l'idée du RVB.
Outre les caractéristiques susmentionnées des actifs qui utilisent la validation côté client, la principale différence avec RGB et les protocoles d'actifs antérieurs est l'ajout d'une VM (machine virtuelle) d'exécution pour l'exécution de contrats Turing-complets. Pour garantir la sécurité des données contractuelles, un schéma et une interface ont été conçus. Le schéma, similaire à celui d'Ethereum, déclare le contenu et les fonctions d'un contrat, tandis que l'interface est responsable de la mise en œuvre de fonctions spécifiques, un peu comme les interfaces dans les langages de programmation.
Les schémas de ces contrats sont chargés de restreindre les comportements qui dépassent les attentes pendant l'exécution de la VM. Par exemple, RGB20 et RGB21 sont respectivement chargés d'imposer certaines restrictions sur les jetons fongibles et non fongibles lors des transactions.
Le mécanisme d'engagement utilisé dans RGB, Pedersen Hash
Son avantage réside dans sa capacité à s'engager sur une valeur sans la divulguer. L'utilisation du hachage de Pedersen pour construire un arbre de Merkle signifie que vous pouvez créer un arbre de Merkle protégeant la vie privée et pouvant cacher ses valeurs. Cette structure est utile dans certains protocoles de préservation de la vie privée, tels que certains projets de crypto-monnaie anonymes. Cependant, il peut ne pas convenir aux actifs CSV, qui seront mentionnés plus loin en comparaison avec Taproot Assets.
Conception de machines virtuelles pour la simplicité RGB → AluVM
RGB visait non seulement à mettre en œuvre un protocole d'actifs validé côté client, mais aussi à étendre l'exécution d'une machine virtuelle Turing-complète et la programmation de contrats. Initialement, le RGB prétendait utiliser un langage de programmation appelé Simplicity, qui génère une preuve d'exécution et permet une vérification formelle (pour éviter les bogues) des contrats rédigés dans ce langage. Cependant, le développement de ce langage ne s'est pas déroulé comme prévu, entraînant des complications qui ont finalement entravé l'ensemble du protocole RVB. Finalement, RGB a commencé à utiliser une VM appelée AluVM, développée par Maxim, dans le but d'éviter tout comportement non défini, similaire à l'original Simplicity. Le nouveau AluVM serait remplacé à l'avenir par un langage de programmation appelé Contractum, s'éloignant ainsi de l'utilisation actuelle de Rust.
Sens de la mise à l'échelle de la couche RVB 2 : Lightning network ou Sidechain ?
Les actifs validés côté client ne peuvent pas être échangés en continu et en toute sécurité en dehors de la chaîne, car ils dépendent toujours de L1 pour la publication et la commande des transactions. Cela signifie qu'en l'absence d'une solution de mise à l'échelle de niveau 2, leur vitesse de transaction est toujours limitée par la vitesse de production des blocs de leur témoin L1. Cela signifie que si les transactions du RVB sont effectuées directement sur Bitcoin, dans le respect d'exigences strictes en matière de sécurité, le délai entre deux transactions liées devrait être d'au moins dix minutes (temps de blocage de BTC), ce qui est souvent d'une lenteur inacceptable.
Le RVB et le réseau Lightning
En termes simples, le Lightning Network fonctionne en demandant aux parties à une transaction de signer un ensemble de contrats (transactions d'engagement) en dehors de la chaîne. Ces contrats garantissent que si l'une des parties viole l'accord, la partie lésée peut soumettre le contrat (transaction d'engagement) à la CTB pour règlement, récupérer ses fonds et pénaliser le contrevenant. En d'autres termes, le Lightning Network garantit la sécurité des transactions hors chaîne par le biais d'un protocole et d'une conception théorique des jeux.
RGB pourrait construire sa propre infrastructure Lightning Network en concevant des détails de contrat de canal de paiement adaptés à RGB lui-même. Toutefois, la mise en place d'une telle infrastructure n'est pas aisée en raison de la grande complexité du Lightning Network, surtout si l'on tient compte des années de travail de Lightning Labs dans ce domaine et de la part de marché de LND de plus de 90 %.
Sidechain Prime de RGB
Le LNP-BP, qui gère actuellement le protocole RGB, a publié en juin 2023 une proposition de Maxim pour une solution de mise à l'échelle des actifs validée côté client, appelée Prime. Maxim y critique les solutions existantes de mise à l'échelle de la sidechain et du Lightning Network, dont le développement est trop complexe. Il s'est dit convaincu qu'en dehors de Prime, les autres méthodes d'expansion, y compris les canaux Lightning multi-nœuds de NUCLEUS et les usines de canaux Ark/Enigma, nécessiteraient plus de deux ans de développement. Cependant, Prime pourrait être achevé en un an seulement.
Prime n'est pas conçue comme une blockchain traditionnelle. Il s'agit plutôt d'une couche modulaire de publication d'épreuves créée spécifiquement pour la validation côté client. Il se compose de quatre éléments principaux :
Nous voyons donc que pour résoudre le problème des délais de confirmation des transactions dans RGB, Prime utilise un service d'horodatage pour confirmer rapidement les transactions hors chaîne et les regrouper avec des identifiants dans des blocs. Dans le même temps, les preuves de transaction sur Prime peuvent être consolidées par le biais des PMT, puis ancrées sur la BTC à la manière d'un point de contrôle.
Taproot Assets est un protocole d'actifs CSV basé sur Taproot, conçu pour émettre des actifs sur la blockchain Bitcoin. Ces actifs peuvent être échangés instantanément, en grandes quantités et à faible coût via le réseau Lightning. Le cœur de Taproot Assets est l'utilisation de la sécurité et de la stabilité de Bitcoin avec la vitesse, l'évolutivité et le faible coût du Lightning Network. Le protocole a été conçu et développé par roasbeef, le directeur technique de Lightning Labs. Roasbeef est probablement la seule personne sur la planète à avoir personnellement dirigé le développement d'un client Bitcoin (BTCD) et d'un client Lightning Network (LND), démontrant ainsi une profonde compréhension de BTC.
Les transactions Taproot ne comportent que le hachage de la racine du script de l'actif, ce qui rend difficile pour les observateurs externes d'identifier si elles impliquent des actifs Taproot, car le hachage lui-même est générique et peut représenter n'importe quelles données. Avec la mise à jour Taproot, Bitcoin a acquis la capacité d'exécuter des contrats intelligents (TapScript). Sur cette base, l'encodage des actifs de Taproot Assets crée essentiellement une définition de jeton similaire à l'ERC20 ou à l'ERC721. Ainsi, Bitcoin acquiert non seulement la capacité de définir des actifs, mais aussi celle de rédiger des contrats intelligents, jetant ainsi les bases d'une infrastructure de contrats intelligents pour Bitcoin.
La structure d'encodage de Taproot Assets est la suivante :
par roasbeef, directeur technique de Lighting Labs
En tant que protocole d'actifs CSV, Taproot Assets a une conception plus concise que RGB. La plus grande différence entre Taproot Assets et RGB en termes d'évolutivité de l'application réside dans la VM d'exécution, Taproot Assets utilise la même VM TaprootScript que la VM native par défaut de BTC. Ces dernières années, de nombreuses recherches sur l'infrastructure de la BTC ont été basées sur TapScript, mais en raison de la lenteur de la mise à niveau de la BTC, elles ne peuvent être appliquées dans un court laps de temps, de sorte que l'on peut prédire que Taproot Assets sera un terrain d'essai pour ces nouvelles idées à l'avenir.
Taproot Assets, grâce à la mise en œuvre d'un arbre de somme, présente une efficacité de vérification et une sécurité élevées. Il permet de vérifier l'état et d'effectuer des transactions simplement en possédant une preuve, sans avoir à parcourir l'ensemble de l'historique des transactions. En revanche, l'utilisation par le RGB des engagements de Pedersen rend difficile la vérification effective de la validité des données d'entrée. Par conséquent, le RVB nécessite de retracer l'historique des transactions des intrants, ce qui peut devenir une charge importante lorsque les transactions s'accumulent au fil du temps. La conception de l'arbre de somme Merkel permet également à Taproot Assets de faciliter la vérification des nœuds légers, une fonctionnalité qui n'était pas disponible auparavant dans les protocoles d'actifs construits au-dessus de Bitcoin.
Taproot Assets a été développé en réponse à la mise à jour Taproot du réseau Bitcoin. Il utilise TaprootScriptVM, qui est le moteur d'exécution de scripts fourni avec Bitcoin suite à la mise à jour de Taproot. En outre, il utilise vPSBT, une variante du PSBT de Bitcoin, ce qui indique qu'une fois que le mécanisme de canal éclair de Taproot Assets sera développé, il pourra immédiatement réutiliser toute l'infrastructure actuelle de LND (Lightning Network Daemon), ainsi que les produits précédents de Lightning Labs (LND détient actuellement plus de 90 % de parts de marché dans le réseau éclair). De plus, la récente proposition populaire de BitVM est basée sur TaprootScript, ce qui signifie théoriquement que toutes ces améliorations pourraient éventuellement bénéficier à Taproot Assets.
Cependant, le fonctionnement du RVB est quelque peu différent. Sa machine virtuelle et ses règles de validation (SCHEMA) font partie d'un système autonome, formant un écosystème quelque peu fermé. Le RGB opère au sein de son propre écosystème et sa relation avec l'écosystème plus large du bitcoin n'est pas aussi étroite que certains pourraient le penser. Par exemple, en ce qui concerne la mise à niveau de Taproot, la seule interaction réelle de RGB est l'encodage des données d'engagement sur la blockchain dans le Witness TapLeaf. Cela montre que le RGB et la mise à niveau de Taproot ne sont que très peu liés.
Dans la mise en œuvre actuelle du RVB, les contrats et la VM sont fortement mis en avant. Cependant, Taproot Assets ne semble pas se concentrer sur les contrats intelligents, du moins pas encore. La mise en œuvre actuelle du RVB n'a pas encore expliqué comment les modifications de l'état global sont synchronisées avec les contrats individuels (UTXO). En outre, si les engagements de Pedersen peuvent garantir le montant total des actifs, on ne sait pas très bien comment les autres États seraient protégés contre les manipulations, car il n'y a pas eu beaucoup d'explications à ce sujet.
D'autre part, Taproot Assets a une conception plus simple, mais ne stocke actuellement que les soldes d'actifs et ne gère pas d'états plus complexes, ce qui rend les discussions sur les contrats intelligents prématurées. Cependant, selon Lightning Labs, il est prévu de se concentrer sur la conception de contrats intelligents pour Taproot Assets l'année prochaine.
Le principe de base mentionné plus haut concernant les actifs vérifiés côté client indique que la détention de la preuve est aussi importante que la détention de la clé privée. Cependant, il y a un risque de perdre la preuve puisqu'elle est conservée du côté du client. Comment y remédier ? Dans Taproot Assets, ce problème peut être évité grâce à l'utilisation d'un "univers". Un univers est un arbre de Merkle clair, vérifiable par le public, qui couvre un ou plusieurs actifs. Contrairement à une arborescence Taproot standard, un univers n'est pas utilisé pour conserver les actifs Taproot. Au lieu de cela, il s'engage sur un sous-ensemble d'un ou plusieurs historiques d'actifs.
Dans le système RGB, ce rôle est rempli par Storm, qui synchronise les données de preuve hors chaîne par l'intermédiaire d'un réseau peer-to-peer (p2p). Cependant, pour des raisons historiques liées à l'équipe de développement du RVB, ces équipes utilisent actuellement des formats de preuve incompatibles. L'équipe chargée de l'écosystème du RVB, la DIBA, a indiqué qu'elle développerait un "carbonado" pour résoudre ce problème, mais l'état d'avancement de ce projet n'est pas clair.
Toutes les bibliothèques utilisées par Taproot Assets sont bien testées, car Lightning Labs a son propre client Bitcoin (BTCD), son propre client Lightning Network (LND), et un large éventail d'implémentations de bibliothèques de portefeuilles. En revanche, la plupart des bibliothèques utilisées pour la mise en œuvre de la norme RVB sont autodéfinies. Du point de vue des normes industrielles, la mise en œuvre du RVB en est encore au stade expérimental.
En poursuivant la discussion, il devient évident que les protocoles d'actifs validés par le client ont dépassé le cadre des protocoles traditionnels et s'orientent désormais vers une mise à l'échelle informatique.
Nombreux sont ceux qui affirment qu'à l'avenir, le bitcoin existera en tant qu'"or numérique", tandis que d'autres blockchains créeront des écosystèmes d'applications. Cependant, j'ai une opinion différente. Comme on le voit dans de nombreuses discussions sur les forums Bitcoin, on parle beaucoup des différentes monnaies parallèles et de leur durée de vie éphémère. La disparition rapide de ces alt-coins a transformé les capitaux et les efforts qui les entourent en bulles. Le bitcoin constitue déjà une base solide de consensus ; il n'est pas nécessaire d'élaborer de nouvelles solutions de niveau 1 (L1) uniquement pour les protocoles d'application. Ce que nous devrions faire, c'est tirer parti de Bitcoin, cette infrastructure robuste, pour construire un monde décentralisé à plus long terme.
Moins de calcul sur la chaîne, plus de vérification sur la chaîne
Du point de vue de la conception des applications, Bitcoin a très tôt choisi une philosophie centrée non pas sur le calcul sur la chaîne, mais sur la vérification (complétude de Turing et état pour les contrats intelligents). L'essence d'une blockchain est une machine d'état répliquée. Si le consensus d'une blockchain se concentre sur le calcul sur la chaîne, il est difficile d'affirmer que le fait que chaque nœud du réseau répète ces calculs est une approche raisonnable ou évolutive. Si l'accent est mis sur la vérification, la validation des transactions hors chaîne pourrait être l'approche la plus adaptée à l'évolutivité de Bitcoin.
Où la vérification a-t-elle lieu ? Ce point est crucial.
Pour les développeurs qui créent des protocoles au-dessus de Bitcoin, la manière d'utiliser Bitcoin pour la vérification critique, ou même de placer la vérification en dehors de la chaîne, et la manière de concevoir des schémas sécurisés, sont des questions qui relèvent des concepteurs de protocoles eux-mêmes. Ils ne devraient pas et n'ont pas besoin d'être associés à la chaîne elle-même. La façon de mettre en œuvre la vérification conduira à différentes solutions de mise à l'échelle pour la BTC.
Du point de vue des implémentations basées sur la vérification, nous disposons de trois directions pour la mise à l'échelle :
1.Vérification sur chaîne (OP-ZKP)
L'implémentation de l'OP-ZKP directement dans TaprootScriptVM permettrait de doter Bitcoin lui-même de la capacité d'effectuer la vérification ZKP. Associé à des protocoles de règlement conçus par Covenant, cela pourrait permettre de créer une solution de mise à l'échelle Zk-Rollup qui hériterait de la sécurité de Bitcoin. Cependant, contrairement au déploiement d'un contrat de vérification sur Ethereum, les mises à jour de Bitcoin sont intrinsèquement lentes, et l'ajout d'un op-code aussi spécialisé, qui pourrait nécessiter des mises à jour, est forcément un défi.
2. vérification sur semi-chaîne (BitVM)
La conception de BitVM garantit qu'elle n'est pas destinée à une logique de transaction ordinaire. Robin Linus a également indiqué que l'avenir de BitVM réside dans la création d'un marché inter-chaînes gratuit pour diverses SideChains. L'approche de BitVM est considérée comme semi-on-chain parce que la plupart des calculs de vérification ne se feront pas on-chain mais off-chain. La raison principale de la conception autour de la racine de Bitcoin est l'utilisation de TapScriptVM pour la vérification informatique lorsque cela est nécessaire, héritant théoriquement de la sécurité de Bitcoin. Ce processus génère également une chaîne de confiance pour la vérification, qui ne nécessite qu'un seul vérificateur honnête parmi "n" vérificateurs, connue sous le nom de "Optimistic Rollups".
BitVM entraîne une surcharge importante sur la chaîne, mais peut-il utiliser les preuves de fraude ZK pour gagner en efficacité ? La réponse est non, car la mise en œuvre des preuves de fraude ZK repose sur la capacité à effectuer la vérification ZKP sur la chaîne, ce qui nous ramène aux difficultés de l'approche OP-ZKP.
3. vérification hors chaîne (validation côté client, réseau Lightning)
La vérification complète en dehors de la chaîne fait référence aux protocoles d'actifs CSV et au réseau Lightning dont il a été question précédemment. Comme nous l'avons vu dans les discussions précédentes, il n'est pas possible d'empêcher totalement la collusion dans les conceptions de CSV. Ce que nous pouvons faire, c'est utiliser la cryptographie et la conception de protocoles pour maintenir les dommages causés par la collusion malveillante dans des limites contrôlables, rendant de telles actions non rentables.
Les avantages et les inconvénients de la vérification hors chaîne sont tout aussi clairs. L'avantage est qu'il utilise un minimum de ressources sur la chaîne et qu'il a un énorme potentiel d'évolutivité. L'inconvénient est qu'il est presque impossible d'hériter entièrement de la sécurité de Bitcoin, ce qui limite considérablement les types et les méthodes de transactions hors chaîne qui peuvent être effectuées. En outre, la vérification hors chaîne implique également que les données sont conservées hors chaîne, gérées par les utilisateurs eux-mêmes, ce qui impose des exigences plus élevées en matière de sécurité de l'environnement d'exécution du logiciel et de stabilité du logiciel.
Tendance de l'évolution de l'échelle
Actuellement, les solutions populaires de la couche 2 sur Ethereum, en termes de paradigme, valident les calculs de la couche 2 par le biais de la couche 1, ce qui signifie que le calcul de l'état est déplacé vers la couche 2, mais que la vérification est toujours conservée à la couche 1. À l'avenir, nous pourrions de la même manière pousser les calculs de vérification hors de la chaîne, ce qui libérerait encore davantage les performances de l'infrastructure actuelle de la blockchain.
L'émission d'actifs basés sur la BTC a toujours été un sujet brûlant. Des premières Colored Coins en 2011 au récent protocole Ordinal, la communauté BTC a toujours été capable de trouver de nouveaux acteurs et de nouveaux consensus, mais peu d'entre eux sont restés en place. Cependant, Lightning Labs a dévoilé des plans ambitieux pour développer des monnaies stables basées sur les actifs Taproot. Tether a également annoncé qu'il utiliserait le protocole RGB pour frapper des USDT sur la couche 1 de Bitcoin.
Cela signifie que le célèbre OmniLayer (anciennement Mastercoin) n'est plus le plus grand acteur de l'écosystème BTC. Et les protocoles de validation côté client (CSV) commencent à entrer dans la vision de tous. Ces protocoles permettent non seulement de maintenir l'intégrité des protocoles traditionnels des actifs Bitcoin, mais aussi d'améliorer l'évolutivité. Cependant, l'existence d'un éventail de protocoles d'actifs au sein de l'écosystème Bitcoin soulève des questions pertinentes : En quoi diffèrent-ils les uns des autres, et comment naviguer et saisir les opportunités dans ce paysage ?
Cet article vise à guider les lecteurs à travers une revue complète des différents protocoles d'actifs qui ont émergé dans l'histoire de Bitcoin. En outre, il cherche à approfondir les trajectoires potentielles d'évolution des protocoles d'actifs basés sur le bitcoin dans un avenir prévisible.
Le concept des "Colored Coins" a été formulé pour la première fois par Yoni Assia, aujourd'hui PDG d'eToro, dans son article fondateur "bitcoin 2.X (aka Colored bitcoin)", publié le 27 mars 2012. L'article affirmait que la technologie sous-jacente de Bitcoin était aussi fondamentale et sans faille que le HTTP pour l'internet. C'est pourquoi le protocole du jeton Colored Coins a été conçu sur la base de la BTC.
Yoni Assia a imaginé la création d'économies BTC 2.0 grâce à cette innovation, permettant à n'importe quelle communauté de générer plusieurs monnaies de cette manière. L'utilisation de la technologie sous-jacente de Bitcoin pour le règlement des transactions et la prévention de la double dépense était, à l'époque, une idée pionnière.
Colored Coins est un protocole conçu pour émettre des actifs sur la blockchain Bitcoin. Il fonctionne en "colorant" une fraction spécifique de bitcoins pour qu'ils correspondent à d'autres actifs. Ces bitcoins marqués conservent leur fonctionnalité d'origine, mais ils représentent également un autre actif ou une autre valeur. La question pressante était toutefois de savoir comment cette idée pouvait se concrétiser sur le réseau Bitcoin.
Le 3 juillet 2014, ChromaWay a fait un grand pas en avant en développant le protocole EPOBC (Enhanced Colored Coins Order-based Protocol), qui a grandement simplifié le processus de création de pièces colorées pour les développeurs. Il s'agit du premier protocole à utiliser la fonction OP_RETURN de Bitcoin Script.
Le résultat est le suivant :
Une telle mise en œuvre est très concise, mais elle pose également de nombreux problèmes :
Les Colored Coins sont essentiellement un système de suivi des actifs qui utilise les règles de validation de Bitcoin pour suivre les transferts d'actifs. Toutefois, pour prouver qu'une sortie spécifique (txout) représente un actif particulier, vous devez fournir toute la chaîne de transferts depuis l'origine de l'actif. Cela signifie que la validation d'une transaction peut nécessiter une longue chaîne de preuves. Pour y remédier, des propositions telles que OP_CHECKCOLORVERIFY ont été faites pour aider à valider les transactions de Colored Coin directement sur BTC, mais la proposition n'a pas été adoptée.
Le concept de Mastercoin a été initialement proposé par J.R. Willett. En 2012, il a publié un livre blanc intitulé "The Second Bitcoin Whitepaper", qui expose l'idée de créer de nouveaux actifs ou jetons sur la blockchain Bitcoin existante. Ce concept a fini par être connu sous le nom de "MasterCoin", qui a ensuite été rebaptisé "Omni Layer".
En 2013, le projet Mastercoin a réalisé une première version de ce que l'on appelle aujourd'hui une ICO (Initial Coin Offering) et a réussi à lever des millions de dollars. Cette opération est considérée comme la première ICO de l'histoire. L'une des applications les plus remarquables de Mastercoin est Tether (USDT), un stablecoin fiat-collatéralisé bien connu, qui a été initialement émis sur la couche Omni.
En fait, l'idée du Mastercoin a précédé celle des Colored Coins. Si nous en parlons en second lieu, c'est parce que MasterCoin est une solution relativement plus complète que les Colored Coins. MasterCoin a mis en place une couche de nœuds complète, offrant des fonctionnalités plus complexes telles que les contrats intelligents. En revanche, Colored Coins est plus simple et plus direct, et se concentre principalement sur la "coloration" ou le marquage des UTXOs de Bitcoin pour représenter d'autres actifs.
La principale différence entre les deux est que, sur la blockchain, le Mastercoin enregistre uniquement divers types de transactions et ne stocke pas les informations relatives aux actifs. Dans les nœuds du Mastercoin, une base de données du modèle d'état est maintenue en analysant les blocs Bitcoin, et cette base de données réside dans les nœuds hors de la blockchain.
Comparé aux Colored Coins, le Mastercoin peut exécuter une logique plus complexe. En outre, comme il n'enregistre ni ne vérifie les états sur la blockchain, ses transactions n'ont pas besoin d'être consécutives (colorées en continu).
Toutefois, pour mettre en œuvre la logique complexe de Mastercoin, les utilisateurs doivent faire confiance à l'état conservé dans la base de données hors chaîne au sein des nœuds ou exécuter leurs propres nœuds Omni Layer pour effectuer des vérifications.
En résumé :
La principale différence entre le Mastercoin et les Colored Coins est que le Mastercoin ne conserve pas toutes les données nécessaires au protocole sur la blockchain. Au lieu de cela, il s'appuie sur le système de consensus de Bitcoin pour gérer ses propres publications et commandes de transactions, puis il maintient l'état dans une base de données hors chaîne.
Selon les informations fournies par OmniBolt : Omni Layer propose un nouveau protocole d'actifs UBA (UTXO Based Asset) à Tether, qui utilisera la mise à jour Taproot. Ce protocole intégrera des informations sur les actifs dans la feuille de tapotement, ce qui permettra des fonctions telles que les paiements conditionnels. Parallèlement, OmniBolt travaille à l'intégration de Stark dans l'infrastructure du réseau Lightning de l'Omni Layer.
Pour comprendre le concept de validation côté client (CSV), il faut remonter à l'année qui a suivi l'émergence des Colored Coins et de Mastercoin, c'est-à-dire 2013. Cette année-là, Peter Todd, l'un des premiers chercheurs sur le bitcoin et la cryptographie, a publié un article intitulé "Disentangling Crypto-Coin Mining : Timestamping, Proof-of-Publication, and Validation". Bien que le titre ne mentionne pas explicitement la validation côté client, une lecture attentive révèle qu'il s'agit de l'un des premiers écrits présentant ce concept.
Peter Todd a cherché des moyens de rendre le fonctionnement de Bitcoin plus efficace. Il a développé un concept plus complexe de validation côté client, basé sur l'idée d'horodatage. En outre, il a introduit le concept de "sceau à usage unique", qui sera mentionné plus loin.
Pour suivre le raisonnement de Peter Todd, nous devons d'abord comprendre quel problème Bitcoin résout réellement. Selon Peter Todd, le bitcoin répond à trois problèmes :
À ce stade, vous vous souvenez peut-être d'OmniLayer, dont nous avons parlé précédemment. OmniLayer lui-même ne délègue pas le calcul et la validation de l'état à Bitcoin, mais il réutilise la sécurité de Bitcoin. Colored Coins, quant à lui, confie le suivi de l'état à Bitcoin. L'existence de ces deux systèmes a déjà démontré que la validation ne doit pas nécessairement avoir lieu sur la blockchain.
Tout d'abord, examinons ce qui doit être vérifié :
Il est facile de remarquer que pour les actifs émis en bitcoins, chaque transaction nécessite une vérification de l'ensemble de l'historique des transactions concernées afin de s'assurer que les intrants référencés n'ont pas été dépensés et que l'état est correct. Ce n'est pas du tout pratique. Comment pouvons-nous donc améliorer la situation ?
Peter Todd suggère de simplifier ce processus en changeant l'objectif de la vérification. Au lieu de confirmer que la production n'a pas été dépensée deux fois, cette méthode vise à s'assurer que les intrants d'une transaction ont été publiés et qu'ils ne sont pas en conflit avec d'autres intrants. En ordonnant les entrées dans chaque bloc et en utilisant un arbre de Merkle, ce type de vérification peut être effectué plus efficacement car il ne nécessite qu'une petite partie des données à chaque fois, et non l'historique complet de la chaîne de l'entrée.
La structure de l'arbre d'engagement proposée par Peter Todd est la suivante :
CTxIn -> CTxOut -> <merkle path> -> CTransaction -> <merkle path> -> CTxIn
Mais comment stocker un tel arbre d'engagement sur la blockchain ? C'est ici que nous pouvons introduire le concept de "scellé à usage unique".
Le sceau à usage unique est l'un des concepts fondamentaux pour comprendre le CSV. Il est similaire au scellé physique à usage unique utilisé pour protéger les conteneurs de marchandises. Un scellé à usage unique est un objet unique qui peut être fermé précisément une fois sur un message. En termes simples, un scellé à usage unique est un mécanisme abstrait utilisé pour éviter les doubles dépenses.
Le protocole SealProtocol comporte trois éléments et deux actions.
Éléments de base :
Opérations de base : Il existe deux actions de base :
La sécurité de la mise en œuvre d'un sceau à usage unique signifie qu'un attaquant ne peut pas trouver deux messages différents m1 et m2 tels que la fonction Verify renvoie un vrai pour le même sceau.
En termes simples, un sceau à usage unique garantit qu'un bien ou un élément de données n'est utilisé ou verrouillé qu'une seule fois. Dans le contexte du bitcoin, cela signifie généralement qu'un UTXO ne peut être dépensé qu'une seule fois. Ainsi, les résultats des transactions Bitcoin peuvent être considérés comme des sceaux à usage unique, et lorsqu'un résultat est utilisé comme entrée dans une autre transaction, ce sceau est "brisé" ou "utilisé".
Pour les actifs sur Bitcoin, Bitcoin lui-même fait office de "témoin" (w) pour le sceau à usage unique. En effet, pour vérifier une transaction Bitcoin, les nœuds doivent s'assurer que chaque entrée de la transaction fait référence à une UTXO valide et non dépensée. Si une transaction tente de dépenser deux fois un UTXO qui a déjà été utilisé, les règles de consensus de Bitcoin et le réseau de nœuds honnêtes rejetteront cette transaction.
En d'autres termes, c'est encore plus simple :
Un sceau à usage unique traite toute blockchain comme une base de données, où l'on stocke un engagement envers un certain message et où l'on maintient son statut comme étant dépensé ou non dépensé.
En résumé, les actifs qui utilisent la validation côté client présentent les caractéristiques suivantes :
Pour ceux qui utilisent des actifs avec validation côté client, il y a un point supplémentaire à noter :
Lors de la transaction et de la validation d'actifs avec une validation hors chaîne côté client, il est nécessaire non seulement de présenter la clé privée qui détient l'actif, mais aussi de fournir une preuve complète du chemin de Merkle pour l'actif correspondant.
Le concept de RVB a été proposé par Giacomo Zucco, une figure bien connue de la communauté, après 2015. C'était une période où Ethereum était en plein essor, où les ICO (Initial Coin Offerings) proliféraient et où de nombreuses tentatives ont été faites pour créer des projets au-delà du Bitcoin, tels que Mastercoin et Colored Coins.
Giacomo Zucco a été déçu par cette évolution. Il estime qu'aucun de ces projets n'est à la hauteur du potentiel de Bitcoin et que les tentatives précédentes de mise en œuvre de jetons sur Bitcoin sont inadéquates. À cette époque, il rencontre Peter Todd et se passionne pour les idées de ce dernier sur la validation côté client (CSV). C'est ainsi qu'il a proposé l'idée du RVB.
Outre les caractéristiques susmentionnées des actifs qui utilisent la validation côté client, la principale différence avec RGB et les protocoles d'actifs antérieurs est l'ajout d'une VM (machine virtuelle) d'exécution pour l'exécution de contrats Turing-complets. Pour garantir la sécurité des données contractuelles, un schéma et une interface ont été conçus. Le schéma, similaire à celui d'Ethereum, déclare le contenu et les fonctions d'un contrat, tandis que l'interface est responsable de la mise en œuvre de fonctions spécifiques, un peu comme les interfaces dans les langages de programmation.
Les schémas de ces contrats sont chargés de restreindre les comportements qui dépassent les attentes pendant l'exécution de la VM. Par exemple, RGB20 et RGB21 sont respectivement chargés d'imposer certaines restrictions sur les jetons fongibles et non fongibles lors des transactions.
Le mécanisme d'engagement utilisé dans RGB, Pedersen Hash
Son avantage réside dans sa capacité à s'engager sur une valeur sans la divulguer. L'utilisation du hachage de Pedersen pour construire un arbre de Merkle signifie que vous pouvez créer un arbre de Merkle protégeant la vie privée et pouvant cacher ses valeurs. Cette structure est utile dans certains protocoles de préservation de la vie privée, tels que certains projets de crypto-monnaie anonymes. Cependant, il peut ne pas convenir aux actifs CSV, qui seront mentionnés plus loin en comparaison avec Taproot Assets.
Conception de machines virtuelles pour la simplicité RGB → AluVM
RGB visait non seulement à mettre en œuvre un protocole d'actifs validé côté client, mais aussi à étendre l'exécution d'une machine virtuelle Turing-complète et la programmation de contrats. Initialement, le RGB prétendait utiliser un langage de programmation appelé Simplicity, qui génère une preuve d'exécution et permet une vérification formelle (pour éviter les bogues) des contrats rédigés dans ce langage. Cependant, le développement de ce langage ne s'est pas déroulé comme prévu, entraînant des complications qui ont finalement entravé l'ensemble du protocole RVB. Finalement, RGB a commencé à utiliser une VM appelée AluVM, développée par Maxim, dans le but d'éviter tout comportement non défini, similaire à l'original Simplicity. Le nouveau AluVM serait remplacé à l'avenir par un langage de programmation appelé Contractum, s'éloignant ainsi de l'utilisation actuelle de Rust.
Sens de la mise à l'échelle de la couche RVB 2 : Lightning network ou Sidechain ?
Les actifs validés côté client ne peuvent pas être échangés en continu et en toute sécurité en dehors de la chaîne, car ils dépendent toujours de L1 pour la publication et la commande des transactions. Cela signifie qu'en l'absence d'une solution de mise à l'échelle de niveau 2, leur vitesse de transaction est toujours limitée par la vitesse de production des blocs de leur témoin L1. Cela signifie que si les transactions du RVB sont effectuées directement sur Bitcoin, dans le respect d'exigences strictes en matière de sécurité, le délai entre deux transactions liées devrait être d'au moins dix minutes (temps de blocage de BTC), ce qui est souvent d'une lenteur inacceptable.
Le RVB et le réseau Lightning
En termes simples, le Lightning Network fonctionne en demandant aux parties à une transaction de signer un ensemble de contrats (transactions d'engagement) en dehors de la chaîne. Ces contrats garantissent que si l'une des parties viole l'accord, la partie lésée peut soumettre le contrat (transaction d'engagement) à la CTB pour règlement, récupérer ses fonds et pénaliser le contrevenant. En d'autres termes, le Lightning Network garantit la sécurité des transactions hors chaîne par le biais d'un protocole et d'une conception théorique des jeux.
RGB pourrait construire sa propre infrastructure Lightning Network en concevant des détails de contrat de canal de paiement adaptés à RGB lui-même. Toutefois, la mise en place d'une telle infrastructure n'est pas aisée en raison de la grande complexité du Lightning Network, surtout si l'on tient compte des années de travail de Lightning Labs dans ce domaine et de la part de marché de LND de plus de 90 %.
Sidechain Prime de RGB
Le LNP-BP, qui gère actuellement le protocole RGB, a publié en juin 2023 une proposition de Maxim pour une solution de mise à l'échelle des actifs validée côté client, appelée Prime. Maxim y critique les solutions existantes de mise à l'échelle de la sidechain et du Lightning Network, dont le développement est trop complexe. Il s'est dit convaincu qu'en dehors de Prime, les autres méthodes d'expansion, y compris les canaux Lightning multi-nœuds de NUCLEUS et les usines de canaux Ark/Enigma, nécessiteraient plus de deux ans de développement. Cependant, Prime pourrait être achevé en un an seulement.
Prime n'est pas conçue comme une blockchain traditionnelle. Il s'agit plutôt d'une couche modulaire de publication d'épreuves créée spécifiquement pour la validation côté client. Il se compose de quatre éléments principaux :
Nous voyons donc que pour résoudre le problème des délais de confirmation des transactions dans RGB, Prime utilise un service d'horodatage pour confirmer rapidement les transactions hors chaîne et les regrouper avec des identifiants dans des blocs. Dans le même temps, les preuves de transaction sur Prime peuvent être consolidées par le biais des PMT, puis ancrées sur la BTC à la manière d'un point de contrôle.
Taproot Assets est un protocole d'actifs CSV basé sur Taproot, conçu pour émettre des actifs sur la blockchain Bitcoin. Ces actifs peuvent être échangés instantanément, en grandes quantités et à faible coût via le réseau Lightning. Le cœur de Taproot Assets est l'utilisation de la sécurité et de la stabilité de Bitcoin avec la vitesse, l'évolutivité et le faible coût du Lightning Network. Le protocole a été conçu et développé par roasbeef, le directeur technique de Lightning Labs. Roasbeef est probablement la seule personne sur la planète à avoir personnellement dirigé le développement d'un client Bitcoin (BTCD) et d'un client Lightning Network (LND), démontrant ainsi une profonde compréhension de BTC.
Les transactions Taproot ne comportent que le hachage de la racine du script de l'actif, ce qui rend difficile pour les observateurs externes d'identifier si elles impliquent des actifs Taproot, car le hachage lui-même est générique et peut représenter n'importe quelles données. Avec la mise à jour Taproot, Bitcoin a acquis la capacité d'exécuter des contrats intelligents (TapScript). Sur cette base, l'encodage des actifs de Taproot Assets crée essentiellement une définition de jeton similaire à l'ERC20 ou à l'ERC721. Ainsi, Bitcoin acquiert non seulement la capacité de définir des actifs, mais aussi celle de rédiger des contrats intelligents, jetant ainsi les bases d'une infrastructure de contrats intelligents pour Bitcoin.
La structure d'encodage de Taproot Assets est la suivante :
par roasbeef, directeur technique de Lighting Labs
En tant que protocole d'actifs CSV, Taproot Assets a une conception plus concise que RGB. La plus grande différence entre Taproot Assets et RGB en termes d'évolutivité de l'application réside dans la VM d'exécution, Taproot Assets utilise la même VM TaprootScript que la VM native par défaut de BTC. Ces dernières années, de nombreuses recherches sur l'infrastructure de la BTC ont été basées sur TapScript, mais en raison de la lenteur de la mise à niveau de la BTC, elles ne peuvent être appliquées dans un court laps de temps, de sorte que l'on peut prédire que Taproot Assets sera un terrain d'essai pour ces nouvelles idées à l'avenir.
Taproot Assets, grâce à la mise en œuvre d'un arbre de somme, présente une efficacité de vérification et une sécurité élevées. Il permet de vérifier l'état et d'effectuer des transactions simplement en possédant une preuve, sans avoir à parcourir l'ensemble de l'historique des transactions. En revanche, l'utilisation par le RGB des engagements de Pedersen rend difficile la vérification effective de la validité des données d'entrée. Par conséquent, le RVB nécessite de retracer l'historique des transactions des intrants, ce qui peut devenir une charge importante lorsque les transactions s'accumulent au fil du temps. La conception de l'arbre de somme Merkel permet également à Taproot Assets de faciliter la vérification des nœuds légers, une fonctionnalité qui n'était pas disponible auparavant dans les protocoles d'actifs construits au-dessus de Bitcoin.
Taproot Assets a été développé en réponse à la mise à jour Taproot du réseau Bitcoin. Il utilise TaprootScriptVM, qui est le moteur d'exécution de scripts fourni avec Bitcoin suite à la mise à jour de Taproot. En outre, il utilise vPSBT, une variante du PSBT de Bitcoin, ce qui indique qu'une fois que le mécanisme de canal éclair de Taproot Assets sera développé, il pourra immédiatement réutiliser toute l'infrastructure actuelle de LND (Lightning Network Daemon), ainsi que les produits précédents de Lightning Labs (LND détient actuellement plus de 90 % de parts de marché dans le réseau éclair). De plus, la récente proposition populaire de BitVM est basée sur TaprootScript, ce qui signifie théoriquement que toutes ces améliorations pourraient éventuellement bénéficier à Taproot Assets.
Cependant, le fonctionnement du RVB est quelque peu différent. Sa machine virtuelle et ses règles de validation (SCHEMA) font partie d'un système autonome, formant un écosystème quelque peu fermé. Le RGB opère au sein de son propre écosystème et sa relation avec l'écosystème plus large du bitcoin n'est pas aussi étroite que certains pourraient le penser. Par exemple, en ce qui concerne la mise à niveau de Taproot, la seule interaction réelle de RGB est l'encodage des données d'engagement sur la blockchain dans le Witness TapLeaf. Cela montre que le RGB et la mise à niveau de Taproot ne sont que très peu liés.
Dans la mise en œuvre actuelle du RVB, les contrats et la VM sont fortement mis en avant. Cependant, Taproot Assets ne semble pas se concentrer sur les contrats intelligents, du moins pas encore. La mise en œuvre actuelle du RVB n'a pas encore expliqué comment les modifications de l'état global sont synchronisées avec les contrats individuels (UTXO). En outre, si les engagements de Pedersen peuvent garantir le montant total des actifs, on ne sait pas très bien comment les autres États seraient protégés contre les manipulations, car il n'y a pas eu beaucoup d'explications à ce sujet.
D'autre part, Taproot Assets a une conception plus simple, mais ne stocke actuellement que les soldes d'actifs et ne gère pas d'états plus complexes, ce qui rend les discussions sur les contrats intelligents prématurées. Cependant, selon Lightning Labs, il est prévu de se concentrer sur la conception de contrats intelligents pour Taproot Assets l'année prochaine.
Le principe de base mentionné plus haut concernant les actifs vérifiés côté client indique que la détention de la preuve est aussi importante que la détention de la clé privée. Cependant, il y a un risque de perdre la preuve puisqu'elle est conservée du côté du client. Comment y remédier ? Dans Taproot Assets, ce problème peut être évité grâce à l'utilisation d'un "univers". Un univers est un arbre de Merkle clair, vérifiable par le public, qui couvre un ou plusieurs actifs. Contrairement à une arborescence Taproot standard, un univers n'est pas utilisé pour conserver les actifs Taproot. Au lieu de cela, il s'engage sur un sous-ensemble d'un ou plusieurs historiques d'actifs.
Dans le système RGB, ce rôle est rempli par Storm, qui synchronise les données de preuve hors chaîne par l'intermédiaire d'un réseau peer-to-peer (p2p). Cependant, pour des raisons historiques liées à l'équipe de développement du RVB, ces équipes utilisent actuellement des formats de preuve incompatibles. L'équipe chargée de l'écosystème du RVB, la DIBA, a indiqué qu'elle développerait un "carbonado" pour résoudre ce problème, mais l'état d'avancement de ce projet n'est pas clair.
Toutes les bibliothèques utilisées par Taproot Assets sont bien testées, car Lightning Labs a son propre client Bitcoin (BTCD), son propre client Lightning Network (LND), et un large éventail d'implémentations de bibliothèques de portefeuilles. En revanche, la plupart des bibliothèques utilisées pour la mise en œuvre de la norme RVB sont autodéfinies. Du point de vue des normes industrielles, la mise en œuvre du RVB en est encore au stade expérimental.
En poursuivant la discussion, il devient évident que les protocoles d'actifs validés par le client ont dépassé le cadre des protocoles traditionnels et s'orientent désormais vers une mise à l'échelle informatique.
Nombreux sont ceux qui affirment qu'à l'avenir, le bitcoin existera en tant qu'"or numérique", tandis que d'autres blockchains créeront des écosystèmes d'applications. Cependant, j'ai une opinion différente. Comme on le voit dans de nombreuses discussions sur les forums Bitcoin, on parle beaucoup des différentes monnaies parallèles et de leur durée de vie éphémère. La disparition rapide de ces alt-coins a transformé les capitaux et les efforts qui les entourent en bulles. Le bitcoin constitue déjà une base solide de consensus ; il n'est pas nécessaire d'élaborer de nouvelles solutions de niveau 1 (L1) uniquement pour les protocoles d'application. Ce que nous devrions faire, c'est tirer parti de Bitcoin, cette infrastructure robuste, pour construire un monde décentralisé à plus long terme.
Moins de calcul sur la chaîne, plus de vérification sur la chaîne
Du point de vue de la conception des applications, Bitcoin a très tôt choisi une philosophie centrée non pas sur le calcul sur la chaîne, mais sur la vérification (complétude de Turing et état pour les contrats intelligents). L'essence d'une blockchain est une machine d'état répliquée. Si le consensus d'une blockchain se concentre sur le calcul sur la chaîne, il est difficile d'affirmer que le fait que chaque nœud du réseau répète ces calculs est une approche raisonnable ou évolutive. Si l'accent est mis sur la vérification, la validation des transactions hors chaîne pourrait être l'approche la plus adaptée à l'évolutivité de Bitcoin.
Où la vérification a-t-elle lieu ? Ce point est crucial.
Pour les développeurs qui créent des protocoles au-dessus de Bitcoin, la manière d'utiliser Bitcoin pour la vérification critique, ou même de placer la vérification en dehors de la chaîne, et la manière de concevoir des schémas sécurisés, sont des questions qui relèvent des concepteurs de protocoles eux-mêmes. Ils ne devraient pas et n'ont pas besoin d'être associés à la chaîne elle-même. La façon de mettre en œuvre la vérification conduira à différentes solutions de mise à l'échelle pour la BTC.
Du point de vue des implémentations basées sur la vérification, nous disposons de trois directions pour la mise à l'échelle :
1.Vérification sur chaîne (OP-ZKP)
L'implémentation de l'OP-ZKP directement dans TaprootScriptVM permettrait de doter Bitcoin lui-même de la capacité d'effectuer la vérification ZKP. Associé à des protocoles de règlement conçus par Covenant, cela pourrait permettre de créer une solution de mise à l'échelle Zk-Rollup qui hériterait de la sécurité de Bitcoin. Cependant, contrairement au déploiement d'un contrat de vérification sur Ethereum, les mises à jour de Bitcoin sont intrinsèquement lentes, et l'ajout d'un op-code aussi spécialisé, qui pourrait nécessiter des mises à jour, est forcément un défi.
2. vérification sur semi-chaîne (BitVM)
La conception de BitVM garantit qu'elle n'est pas destinée à une logique de transaction ordinaire. Robin Linus a également indiqué que l'avenir de BitVM réside dans la création d'un marché inter-chaînes gratuit pour diverses SideChains. L'approche de BitVM est considérée comme semi-on-chain parce que la plupart des calculs de vérification ne se feront pas on-chain mais off-chain. La raison principale de la conception autour de la racine de Bitcoin est l'utilisation de TapScriptVM pour la vérification informatique lorsque cela est nécessaire, héritant théoriquement de la sécurité de Bitcoin. Ce processus génère également une chaîne de confiance pour la vérification, qui ne nécessite qu'un seul vérificateur honnête parmi "n" vérificateurs, connue sous le nom de "Optimistic Rollups".
BitVM entraîne une surcharge importante sur la chaîne, mais peut-il utiliser les preuves de fraude ZK pour gagner en efficacité ? La réponse est non, car la mise en œuvre des preuves de fraude ZK repose sur la capacité à effectuer la vérification ZKP sur la chaîne, ce qui nous ramène aux difficultés de l'approche OP-ZKP.
3. vérification hors chaîne (validation côté client, réseau Lightning)
La vérification complète en dehors de la chaîne fait référence aux protocoles d'actifs CSV et au réseau Lightning dont il a été question précédemment. Comme nous l'avons vu dans les discussions précédentes, il n'est pas possible d'empêcher totalement la collusion dans les conceptions de CSV. Ce que nous pouvons faire, c'est utiliser la cryptographie et la conception de protocoles pour maintenir les dommages causés par la collusion malveillante dans des limites contrôlables, rendant de telles actions non rentables.
Les avantages et les inconvénients de la vérification hors chaîne sont tout aussi clairs. L'avantage est qu'il utilise un minimum de ressources sur la chaîne et qu'il a un énorme potentiel d'évolutivité. L'inconvénient est qu'il est presque impossible d'hériter entièrement de la sécurité de Bitcoin, ce qui limite considérablement les types et les méthodes de transactions hors chaîne qui peuvent être effectuées. En outre, la vérification hors chaîne implique également que les données sont conservées hors chaîne, gérées par les utilisateurs eux-mêmes, ce qui impose des exigences plus élevées en matière de sécurité de l'environnement d'exécution du logiciel et de stabilité du logiciel.
Tendance de l'évolution de l'échelle
Actuellement, les solutions populaires de la couche 2 sur Ethereum, en termes de paradigme, valident les calculs de la couche 2 par le biais de la couche 1, ce qui signifie que le calcul de l'état est déplacé vers la couche 2, mais que la vérification est toujours conservée à la couche 1. À l'avenir, nous pourrions de la même manière pousser les calculs de vérification hors de la chaîne, ce qui libérerait encore davantage les performances de l'infrastructure actuelle de la blockchain.