Les pièces colorées ou des pièces colorées sont l'une des tentatives de la communauté des développeurs de crypto-monnaie pour étendre les fonctionnalités de Bitcoin, permettant la création de jetons qui servent à représenter d'autres devises ou actifs d'intérêt sur la blockchain.
Las pièces colorées o les pièces colorées sont l'une des premières créations de la communauté afin de créer des jetons sur Bitcoin, afin de profiter de son énorme pouvoir, de sa sécurité et de sa portée mondiale.
Pour y parvenir, les pièces colorées utilisent les capacités de programmation de Bitcoin, à travers Script Bitcoin. Fondamentalement, ce qu'ils font, c'est créer un programme qui identifie de manière unique Bitcoin, tout en attribuant des propriétés qui représentent ce nouveau jeton ou cette nouvelle pièce colorée.
De cette façon, chaque transaction d'une pièce colorée en arrière-plan est une transaction Bitcoin, sauf que dans son script, elle comprend des instructions que seuls les nœuds et les portefeuilles adaptés aux pièces colorées pourront comprendre. Comme cela s'est produit avec le Jetons ERC-20 de Ethereum, apparu plus tard, ce type d'opération a ouvert les portes à un tout nouveau nombre de fonctionnalités.
Bien qu'il s'agisse de nos jours d'un protocole à peine utilisé, la vérité est qu'il a inspiré la possibilité de créer d'autres types d'actifs sur un réseau principal, ce qu'Ethereum exploitera plus tard, atteignant de nombreux autres cas d'utilisation.
Cela dit, nous pouvons définir une pièce de couleur comme suit:
Une pièce colorée est un jeton spécial qui fonctionne sur la blockchain Bitcoin. Un jeton dans lequel une série d'instructions est définie dans son script Bitcoin qui ne peut être pleinement comprise que par des nœuds et des portefeuilles qui lui sont adaptés. De cette façon, il est possible de créer un tout nouveau token, avec sa propre comptabilité au sein de Bitcoin.
Origine de la pièce colorée
L'origine des pièces colorées découle de la nécessité de créer de nouveaux jetons et de transférer des actifs sur la blockchain Bitcoin. Avec ces jetons, il est possible de représenter n'importe quoi dans le monde, des actions, des matières premières, de l'immobilier, des monnaies fiduciaires et même d'autres crypto-monnaies. Et comme la nécessité est la mère de toutes les créations, cette nécessité a conduit au fait qu'en mars 2012, Yoni Assia (le PDG d'eToro), animé par l'idée de MaîtreCoin, il a présenté l'idée de "pièce colorée" sur son blog personnel.
L'idée caillait, et dans des forums comme Bitcointalk l'idée des pièces colorées a commencé à prendre plus de forme et d'intérêt. Tout cela a conduit à cela le 4 décembre 2012, Meni Rosenfeld créera un livre blanc expliquant les pièces colorées. C'était la première œuvre formelle d'une pièce de monnaie colorée, et bien qu'incomplète, elle a attiré l'attention de la communauté.
Déjà en 2013, Protocole de pièces colorées par Flavien Charlon, un protocole qui a permis la création de pièces colorées en utilisant des configurations spécifiques pour les entrées et sorties de transactions. Il s'agissait du premier protocole de pièces colorées fonctionnelles sur Bitcoin. Cependant, ce n'est que le 3 juillet 2014 que le Protocole EPOBC de l'entreprise ChromaWay. Ce protocole a grandement facilité le processus de création de pièces colorées pour les développeurs intéressés par une telle technologie, et a été l'un des premiers à utiliser la nouvelle fonction OP_RETURN de Bitcoin Script.
Cette évolution a été suivie par d'autres comme celle de Pièces colorées qui ont vu le jour en 2015, entre autres qui gagnaient de plus en plus en pertinence dans le monde du Bitcoin. Et surtout, ceux qui s'intéressent à la tokenisation potentielle du monde, et tout cela avant qu'Ethereum ait sa première sortie publique.
Pourquoi les pièces colorées ont-elles été créées?
Maintenant, avec tout ce qui précède, vous vous demandez sûrement Pourquoi les pièces colorées ont-elles été créées? Eh bien, la principale raison pour laquelle des pièces colorées ont été créées est d'ouvrir les portes au développement de nouvelles fonctionnalités dans Bitcoin. La possibilité de créer des jetons qui sont associés à des choses dans le monde réel et que ceux-ci soient soutenus par un réseau blockchain est une opportunité unique. La possibilité de créer une monnaie, une obligation tokenisée ou même d'intégrer des applications avec Bitcoin pour envoyer des microtransactions ou des opérations enregistrées et protégées par la blockchain est quelque chose d'unique.
Mais pas seulement cela, les pièces colorées et leurs possibilités n'étaient que le point de départ d'autres technologies plus avancées, comme le cas des protocoles de deuxième couche que nous voyons maintenant, comme le cas de RSK o Bisq. Bref, l'inventivité de la communauté a poussé les possibilités de Bitcoin un peu plus loin et a permis d'explorer d'autres possibilités.
Par exemple, il était possible de créer une pièce colorée sur Bitcoin où chacune de ses unités équivalait à un dollar ou un euro. En effet, c'est ce que nous appelons le stablecoin, et à cette époque (2014) c'était quelque chose de nouveau avec de nombreuses possibilités et Bitcoin nous a permis d'explorer tout cela. Bien sûr, ce n'était pas la seule chose possible, avec les pièces colorées, vous pouviez représenter n'importe quoi, à ce stade, l'imagination était la limite.
Comment fonctionnent les pièces colorées?
Les pièces colorées ont des mécanismes de fonctionnement différents selon le protocole ou la manière dont elles sont mises en œuvre. N'oubliez pas qu'un protocole signifie simplement une façon de faire les choses.
La raison en est qu'en principe, il n'y a pas de méthode standard dans Bitcoin pour créer des jetons directement sur sa blockchain. Pour cette raison, les développeurs de pièces colorées ont utilisé des processus plus créatifs pour accomplir leur mission, certains d'entre eux assez complexes, et même avec des risques potentiels.
Il existe différents protocoles de création de pièces colorées, et la plupart d'entre eux exploitent actuellement la puissance de la propriété Bitcoin Script appelée OP_RETURN. Mais OP_RETURN n'a pas toujours existé sur Bitcoin.
Avant la création de OP_RETURN en 2014, les pièces colorées utilisaient un schéma dans lequel les entrées et sorties de leurs transactions étaient traitées d'une certaine manière. La façon dont ces entrées et sorties ont été configurées a créé l'équivalent d'une «couleur», un moyen d'identifier et de différencier une transaction Bitcoin régulière de sa pièce de couleur correspondante.
Par exemple, dans la première version du Colored Coin Protocol (CCP), l'entrée d'index 0 d'une transaction était marquée d'un «script d'index de couleur» qui identifiait l'opération. Cet indice de couleur a ensuite été utilisé pour vérifier les sorties supérieures à 2 (la première sortie était considérée comme non utilisable, et la deuxième sortie était la direction du changement) de cette transaction et via le script de l'entrée 0, le opérations de pièces colorées correspondantes.
Comme vous pouvez le voir, c'est un système assez complexe et même limité. Premièrement, CCP n'a pas pu gérer correctement les séquences de couleurs non reconnues sur le réseau. Ainsi, par exemple, si une personne utilisait une nouvelle version du protocole CCP, et effectuait une opération sur une pièce de couleur non reconnue dans une version précédente, les anciens nœuds invalident complètement la transaction, même si plusieurs de ces entrées ont été correctement reconnues. . Cela a conduit le protocole à être particulièrement sensible aux fourches de réseau qui affectent le fonctionnement de la pièce colorée.
Cette situation n'affectait pas directement Bitcoin car pour ce réseau et ses nœuds, les opérations effectuées étaient valides. Mais pour le réseau de pièces colorées fonctionnant sur des versions modifiées de Bitcoin Core, les opérations entre les différentes versions de son protocole étaient un véritable chaos.
L'arrivée de OP_RETURN
Avec l'arrivée d'OP_RETURN, les choses commencent à changer avec des pièces de couleur. Avec cette fonction, il était possible de stocker des informations sur la blockchain Bitcoin de manière standard. Au départ, il n'était possible d'ajouter que 80 octets d'informations dans OP_RETURN, puis il a été réduit à 40 octets, mais aujourd'hui il est possible de stocker un total de 83 octets (à partir de Bitcoin Core 0.12) d'informations arbitraires dans la transaction.
Cela peut sembler peu d'espace, mais 80 octets sont plus que suffisants pour créer de nouveaux protocoles de pièces de monnaie colorées, laissant derrière elles de nombreuses limitations qu'ils avaient jusqu'à ce moment. Au lieu de créer des structures colorées dans les entrées et sorties des transactions, il était plus facile d'inclure des informations sur les opérations dans la fonction OP_RETURN et de les faire traiter par les nœuds de la pièce colorée.
Fondamentalement, ce qui a été fait a été d'injecter des instructions dans l'OP_RETURN pour que les nœuds de la pièce colorée prennent les sorties de ladite transaction et les envoient à leurs destinataires selon les instructions données.
De cette manière, la capacité de programmation des pièces colorées a été améliorée et en même temps, il a été possible de créer des systèmes plus stables et élaborés pour leur manipulation.
La transaction genesis
Bien sûr, ce qui précède ne concerne que les méthodes pour faire fonctionner une pièce colorée, mais dans tout cela, il y a un point de base qui est partagé: la transaction de genèse de la pièce colorée.
La transaction genesis est utilisée pour émettre toutes les pièces qui seront attribuées à ladite pièce colorée. Cette transaction de genèse a une série de règles spécifiques que ses entrées et sorties doivent suivre.
Tout d'abord, vos entrées doivent considérer deux cas:
- Pièce colorée non remboursable: dans le cas de pièces de couleur non remboursables, les billets ne sont pas pertinents; l'émetteur n'aura aucun pouvoir une fois la transaction émise, donc la seule chose qui compte est la transaction elle-même (en particulier, ses résultats).
- Pièces colorées remissibles: dans ce cas, l'émetteur doit choisir une adresse sécurisée comme "adresse d'émission" et définir l'entrée de transaction 0 pour qu'elle provienne de cette adresse. Par la suite, l'émetteur pourra émettre plus d'unités de pièces de couleur en créant une autre transaction de genèse avec la même adresse à l'entrée 0.
D'autre part, du côté sortie d'une transaction de genèse, celles-ci consistent en un ensemble de sorties qui envoient les pièces colorées à leurs propriétaires d'origine, suivies d'une sortie de données OP_RETURN, ainsi que d'une ou plusieurs sorties "change" pour envoyer le excédent de bitcoins non colorés à l'émetteur.
À ce stade, chaque protocole met en œuvre son propre schéma de contrôle et d'émission d'unités de pièces colorées, mais en pratique, ces deux points sont universels pour chaque protocole.
Algorithmes de coloration
Les algorithmes de coloration ou couleur du noyau sont les mécanismes qui permettent le fonctionnement des pièces colorées selon une série de règles prédéfinies. De cette manière, les algorithmes de coloration sont au cœur des protocoles qui font fonctionner les pièces colorées, puisque ce sont elles qui permettent le fonctionnement des pièces colorées entre différentes bourses.
La première couleur de noyau qui permettait de transférer des pièces de différentes couleurs dans la même transaction était OBC (coloration par ordre). Puis d'autres algorithmes sont apparus tels que TBC (coloration basée sur le marquage), l' POBC (Coloration basée sur l'ordre rembourré), l' EPOBC (coloration améliorée, rembourrée, basée sur l'ordre). En plus d'autres plus complexes tels que SPOBC (coloration basée sur l'ordre des propriétés intelligentes) et l' DHKEC (Coloration d'échange de clés Diffie-Hellman).
Bien entendu, chacune de ces couleurs de noyau a ses avantages, ses inconvénients et ses propres applications possibles. Cependant, ils respectent tous certaines considérations opérationnelles de base, à savoir:
- La balance des couleurs de toutes les entrées
- La position des sorties par rapport aux entrées
- La taille relative des sorties
- Les détails du script associé aux sorties
- Informations encodées dans les en-têtes de la transaction. Par exemple en utilisant OP_CODE, OP_NSEQUENCE, ou le OP_RETURN.
Avantages et inconvénients des pièces colorées
Maintenant, comme tout dans le monde de la technologie, les pièces colorées ont leurs avantages et leurs risques.
Avantages
- Possibilité d'être utilisé pour représenter de manière tokenisée ce que l'on souhaite.
- Comme ils fonctionnent sur la blockchain Bitcoin, ils bénéficient du réseau de blockchain le plus puissant, le plus sûr et le plus décentralisé au monde et avec une portée mondiale.
- Ils permettent la création de systèmes de jetons échangeables. Cette propriété permet par exemple: de créer des échanges décentralisés ou de réaliser des échanges atomiques entre différentes pièces de couleur.
Inconvénients
- Très complexe à mettre en œuvre et à développer. L'apparition des protocoles et d'autres outils pour leur développement a amélioré cette situation, mais même ainsi, les pièces colorées sont plus complexes à créer que d'autres options telles que les jetons ERC-20 d'Ethereum.
- Ils mettent plus de pression sur la blockchain. La création de pièces de couleur augmente la taille des transactions et cela nuit à la capacité du réseau à traiter les transactions. Tout cela entraîne une diminution du nombre de transactions pouvant être traitées, entraîne le coût des commissions minières et augmente considérablement la taille de la blockchain.
- Décourage les mineurs en raison des faibles commissions pour les pièces colorées. C'est une situation qui peut entraîner une perte de puissance de calcul du réseau en raison de faibles profits pour les mineurs, qui préféreront alors exploiter des crypto-monnaies plus rentables.
- Le fait que certaines pièces de couleur représentent des titres ou d'autres types d'actifs liés à des tiers représente un risque. Le fait qu'un tiers représente les intérêts d'une pièce colorée conduit au fait qu'il peut simplement frauder ceux qui participent à ce système.
Cas d'utilisation des pièces colorées
Maintenant, connaissons quelques cas que nous pouvons donner aux pièces colorées:
- Systèmes de paiement et d'échange atomiques. Puisque les pièces colorées ne sont en réalité rien de plus que des bitcoins qui sont traités de manière spécifique selon le jeu de couleurs ou le script OP_RETURN indiqué, il est possible d'effectuer des opérations atomiques ou des systèmes de paiement en utilisant des pièces colorées.
- Échanges décentralisés (DEX). La possibilité d'effectuer des échanges atomiques avec des pièces colorées ouvre la possibilité de représenter d'autres jetons ou pièces avec eux et de faire des échanges avec eux de manière rapide, sécurisée et complètement décentralisée en utilisant la blockchain Bitcoin.
- Création d'objets de collection. Les pièces colorées sont dans une certaine mesure très similaires aux jetons non fongibles, en fait, lorsqu'un paiement est effectué avec une pièce colorée, ce qui est vraiment fait est de transmettre la propriété de ce jeton à l'autre personne, comme cela se produit avec un Jeton NFT (tel que ERC-721 d'Ethereum).
- Accès et abonnement. Utilisation de pièces colorées pour échanger et gérer les services d'accès et d'abonnement. Par exemple, un musée, un métro ou un service en ligne comme Netflix peut émettre des laissez-passer sous forme de pièces de couleur. Ainsi, lors du lancement d'une application smartphone, il peut être utilisé pour faire une signature cryptographique prouver la propriété d'un pass en personne, permettant à ces pass d'être simultanément transférables, entièrement numériques et sans copie sécurisée.
- Une entreprise pourrait vouloir émettre des actions en utilisant des pièces de couleur, tirant parti de l'infrastructure de Bitcoin pour permettre aux gens de conserver la propriété d'actions et de négocier des actions, et même de vous permettre de voter et de payer des dividendes sur la blockchain Bitcoin.
- Une communauté locale par exemple pourrait vouloir créer une monnaie communautaire, en utilisant l'infrastructure Bitcoin pour stocker des fonds en toute sécurité.
Protocoles de création de pièces colorées
Désormais, toute l'évolution du développement sur les monnaies colorées a conduit à la création de différents protocoles pour leur création. Et c'est que la réalisation de ce travail sur des protocoles établis a non seulement facilité sa création, mais aussi sa maintenance et son amélioration. Voici comment les protocoles suivants ont été créés:
CCP ou protocole Open Assets
Connu en 2013 sous le nom de Colored Coins Protocols (CCP) et renommé plus tard en Open Assets Protocol, il s'agit d'un protocole de création de pièces colorées. Le projet a été l'un des plus utilisés en raison de l'énorme quantité d'outils disponibles pour cette tâche. En fait, le protocole dispose d'interfaces dans des langages populaires tels que Python, Objective-C, Ruby ou Microsoft .NET, ce qui facilite le développement d'outils utilisant ce protocole.
De plus, Open Assets Protocol a pris en charge des améliorations telles que BIP-70 (un protocole de paiement) et BIP-21 (un schéma d'URI pour faciliter les paiements). Actuellement, le protocole est abandonné et son référentiel sur GitHub n'a pas été mis à jour depuis 2016.
Protocole ChromaWay EPOBC
EPOBC de ChromaWay est un autre protocole populaire pour créer des pièces colorées. Le protocole a commencé son développement en 2014, lorsque la société a commencé à commercialiser des pièces colorées. Le projet a été lancé par Alex Mizrahi, et depuis lors, il a commencé à révolutionner la façon dont les pièces colorées pouvaient être créées.
Protocole des pièces colorées de Colu
Le protocole des pièces colorées de Colu est un autre moyen bien connu de créer vos propres pièces colorées. L'implémentation est écrite en JavaScript, ce qui facilite grandement le processus de création de projets pour gérer les pièces de couleur.
Les pièces colorées en pratique
Créer une pièce colorée est gratuit, tout le monde peut le faire et il existe des outils pour le faire. Ci-dessous, nous vous montrons les outils.
Cependant, vous devez comprendre que, malgré le fait que l'action de la créer soit gratuite, pour les effectuer une transaction Bitcoin doit être créée. Autrement dit, vous devez payer les frais pour envoyer une transaction Bitcoin.
Pour effectuer une transaction, il suffira d'avoir un portefeuille prenant en charge le même protocole de pièces de couleur que celui utilisé.
Les pièces colorées fonctionnent sur le réseau Bitcoin, ce qui signifie que les adresses sont les mêmes que celles de Bitcoin. Vous n'avez pas à créer d'adresses spéciales et toute adresse Bitcoin peut recevoir une pièce de couleur.
La visualisation des pièces de couleur d'une adresse dépendra du fait que vous ayez ou non un sac à main qui la prend en charge.
Plus tard, chaque fois que quelqu'un souhaite transférer des unités de cette pièce colorée vers une autre adresse Bitcoin, vous devez effectuer une transaction Bitcoin, car la pièce colorée est l'interprétation de la valeur OP_RETURN d'un UTXO, qui est transférée à la nouvelle adresse. Cela signifie que vous devez payer les frais de transaction demandés par le réseau Bitcoin.
Mais pas seulement ça! Puisque dans Bitcoin, contrairement à Ethereum, vous ne pouvez pas effectuer une transaction où aucune quantité de Bitcoin n'est envoyée, vous devez envoyer le montant minimum (quantité de poussière), actuellement à 546 satoshis. En d'autres termes, l'envoi d'une pièce colorée a un coût minier et un «coût» de certains satoshis que vous devez envoyer à destination.
Comme vous pouvez le voir, sa mauvaise utilisabilité a déclenché la recherche d'alternatives, permettant aux contrats intelligents Ethereum de résoudre plus efficacement le cas d'utilisation des jetons via la norme ERC-20: ils ne nécessitent pas l'ajout d'un minimum, ils sont plus facilement programmables et ils permettent de programmer des scénarios plus élaborés.
Exemples de pièces colorées
Actuellement, plusieurs pièces de couleur sont en cours de développement et d'utilisation active, ces cas sont Counterparty, OmniLayer, Bisq. Tous ces projets dépendent du fonctionnement de Bitcoin pour pouvoir mener à bien leurs opérations, opérations rendues possibles par un chargement de données (coloration) dans les transactions Bitcoin.
Ainsi par exemple, dans contrepartie Actuellement, différents projets tirent parti de la capacité de coloration de Counterparty pour émettre des jetons sur Bitcoin. C'est le cas de projets comme Rare Pépé, un ensemble de mèmes bien connus de la communauté Bitcoin. Grâce à cela, il est possible de créer, acheter et vendre ces objets de collection sur Bitcoin. De la même manière, on peut parler de Spell of Genesis, un autre projet qui utilise Counterparty, et même la même devise de Contrepartie, le token XCP.
OmniCoucheDe son côté, il est mieux connu car il est le berceau du Tether, le stablecoin ancré au dollar qui est actuellement le pilier des opérations avec ce type de monnaie. En fait, dans OmniLayer, le Tether est connu sous le nom de Asset 31, et toutes les devises qui utilisent ce type de Tether, effectuent en fait leurs opérations sur Bitcoin à l'aide de pièces de couleur. En fait, si vous vérifiez cette adresse 32TLn1WLcu8LtfvweLzYUYU6ubc2YV9eZs, vous verrez qu'il s'agit d'une adresse Bitcoin. Vous remarquerez cependant que c'est une adresse qui reçoit des bitcoins en très petites quantités, ce qui est curieux. Mais si vous utilisez le Explorateur OmniLayer, l'histoire change radicalement, étant capable de voir qu'il s'agit d'opérations dans Tether, avec une valeur assez élevée, certaines allant jusqu'à 220 millions.
Bisq Pour sa part, c'est un échange décentralisé bien connu qui fonctionne en Bitcoin, et c'est aussi un projet qui fonctionne grâce à des pièces de couleur, de manière très similaire à OmniLayer.
Cependant, ces protocoles ont beaucoup changé et n'utilisent pas seulement la capacité de coloration pour leurs opérations, ils utilisent également d'autres avancées telles que HTML, DLC, CLTV o CSV pour vos opérations. En fin de compte, cela les a transformés en quelque chose de beaucoup plus grand et plus ambitieux, que nous appelons protocoles de deuxième couche.