Actu-crypto

🔒
❌ About FreshRSS
There are new articles available, click to refresh the page.
Before yesterdayComprendre la cryptomonnaie

Bitcoin en 2023 : Ordinals, BRC-20, frais et censure

December 31st 2023 at 09:30

L’annĂ©e 2023 dans Bitcoin a Ă©tĂ© marquĂ©e par l’émergence et le succĂšs des mĂ©taprotocoles Ordinals et BRC-20. Ce ne sont en effet pas les demandes d’ETF qui ont animĂ© le plus les discussions au cours de cette annĂ©e, mais la crĂ©ation et l’échange de jetons fongibles et non fongibles (NFT) par l’intermĂ©diaire de ces standards. Cela s’explique par la vague spĂ©culative ayant eu lieu Ă  propos de ces jetons, et par l’encombrement de l’espace de bloc qu’elle a entraĂźnĂ©, menant Ă  une hausse des frais de transaction considĂ©rable. Une certaine tension s’est installĂ©e et fait ressurgir des questions comme celle de l’utilisation lĂ©gitime du protocole ou celle de la censure. C’est ce dont nous parlerons ici, en guise de rĂ©trospective.

Ordinals, le protocole d’inscription et de transfert de NFT

Le protocole Ordinals a Ă©tĂ© conçu par Casey Rodarmor, dĂ©veloppeur reconnu dans la communautĂ© de Bitcoin. Ce protocole permet l’émission et le transfert de jetons non fongibles, aussi appelĂ©s NFT pour non-fungible tokens. La particularitĂ© de ces « artĂ©facts numĂ©riques » est que toutes leurs donnĂ©es sont inscrites sur la chaĂźne de blocs et qu’ils sont suivis et transfĂ©rĂ©s via une numĂ©rotation des satoshis par nombres ordinaux, d’oĂč le nom du protocole. CrĂ©er des NFT sur la chaĂźne de BTC Ă©tait dĂ©jĂ  possible depuis 2014 par le biais du mĂ©taprotocole Counterparty, mais le contenu liĂ© n’était pas conservĂ© sur la chaĂźne.

Cette possibilitĂ© d’inscription, mĂȘme si elle existait antĂ©rieurement sous une forme plus indirecte, a Ă©tĂ© largement facilitĂ©e par la mise Ă  niveau Schnorr-Taproot qui s’est produite le 14 novembre 2021. En effet, les inscriptions Ordinals sont rĂ©alisĂ©es au sein d’un script de dĂ©verouillage placĂ© dans le tĂ©moin de la transaction et Ă©crit Ă  l’aide de Tapscript. Les inscriptions sont identifiĂ©es Ă  l’aide de la structure particuliĂšre du script et en particulier par l’indicateur ord.

Elles bĂ©nĂ©ficient du calcul des frais liĂ© Ă  SegWit qui pondĂšre les donnĂ©es du tĂ©moin de façon quatre fois moins importante que les autres donnĂ©es de la transaction. Cette caractĂ©ristique donne a cette mĂ©thode un avantage par rapport au schĂ©ma d’inscription de donnĂ©es NULLDATA, qui utilise l’opĂ©rateur OP_RETURN pour stocker des donnĂ©es dans des sorties « classiques » indĂ©pensables. De plus, le fait de passer par Tapscript permettent Ă  ces inscriptions de ne pas ĂȘtre limitĂ©es en taille par les restrictions des scripts classiques : celle des 3,6 ko standards, dont le respect est nĂ©cessaire Ă  la bonne diffusion de la transaction sur le rĂ©seau (rĂšgle de mempool), et celle des 10 ko obligatoires, qui doit ĂȘtre respectĂ©e pour l’inclusion dans un bloc (rĂšgle de consensus). La taille d’une inscription Ordinals est donc plafonnĂ©e uniquement par la taille limite des blocs.

Le protocole Ordinals a Ă©tĂ© lancĂ© officiellement le 20 janvier 2023 (UTC). Il a provoquĂ© immĂ©diatement le dĂ©bat, comme en tĂ©moigne l’article de Pourtreaux publiĂ© le 25. Le 2 fĂ©vrier, une image de prĂšs de 4 Mo a Ă©tĂ© incluse dans le bloc 774 628, suscitant l’émoi dans la communautĂ©. Il s’agissait d’une image des « Taproot Wizards », dĂ©tournement du mĂšme de la Magic Internet Money contenant notamment les lunettes de soleil usuellement arborĂ©es par Udi Wertheimer, l’un des instigateurs de cette tendance. Le bloc Ă©tait le plus gros bloc jamais minĂ© sur BTC et l’est toujours aujourd’hui.

Ordinals a connu un succÚs fulgurant. Présenté comme une nouveauté, ce modÚle a tout de suite plu aux artistes et aux spéculateurs en tous genres. Son succÚs a été tel que le sujet a été abordé par la presse généraliste, particuliÚrement friande de ce genre de phénomÚne. Mais il a vite été remplacé par un protocole autrement plus viral : la norme BRC-20.

BRC-20 : des jetons fongibles basés sur les inscriptions Ordinals

Le succĂšs d’Ordinals a donnĂ© des idĂ©es aux gens. Ç’a Ă©tĂ© le cas du dĂ©veloppeur et analyste domo qui a dĂ©voilĂ© le standard BRC-20 le 9 mars 2023 (UTC). Les jetons BRC-20, appelĂ©s comme tels en rĂ©fĂ©rence Ă  la norme ERC-20 prĂ©sente sur Ethereum, sont des jetons fongibles, c’est-Ă -dire que chaque unitĂ© du jeton est interchangeable avec une autre.

Le principe du standard BRC-20 est d’inscrire des fichiers JSON sur la chaĂźne afin d’effectuer des opĂ©rations sur les unitĂ©s de compte. Trois fonctions existent : deploy, qui permet de crĂ©er un nouveau jeton sur le rĂ©seau, mint, qui permet de forger de nouvelles unitĂ©s, et transfer, qui permet de transfĂ©rer les unitĂ©s en notre possession. Chaque jeton a son sigle boursier, son plafond d’unitĂ©s en circulation et sa limite d’émission par transaction. À titre d’illustration, voici le fichier de dĂ©ploiement du jeton ordi (le premier jeton crĂ©Ă© par domo lui-mĂȘme et leader actuel du marchĂ© des BRC-20) inscrit le 8 mars dans le bloc 779 832 :

{ 
  "p": "brc-20",
  "op": "deploy",
  "tick": "ordi",
  "max": "21000000",
  "lim": "1000"
}

LĂ  encore, les jetons fongibles sur Bitcoin ne forment pas quelque chose d’entiĂšrement nouveau. En 2013-2014, on pouvait dĂ©jĂ  Ă©mettre et utiliser des piĂšces colorĂ©es, qui ont d’ailleurs eu leur petit succĂšs Ă  l’époque, Ă  l’instar des Open Assets de Coinprism, des CoinSpark assets de Coin Sciences, et des Colored Coins de Colu. Les BRC-20 nous rappellent aussi les user currencies qu’il Ă©tait possible de crĂ©er sur le protocole Mastercoin (aujourd’hui appelĂ© Omni), dont faisait partie notamment le stablecoin Tether USD (Ă©mis initialement sous le nom de Realcoin en 2014).

L’avantage de la norme BRC-20 est qu’elle est trĂšs simple et qu’elle se fonde sur un protocole existant trĂšs Ă  la mode. Cependant, elle constitue aussi une piĂštre implĂ©mentation de jetons, non optimisĂ©e. Par exemple, les transferts nĂ©cessitent deux transactions : l’une pour autoriser le transfert par le biais d’un nouveau fichier JSON et l’autre pour effectuer le dĂ©placement des satoshis Ă  l’adresse souhaitĂ©e. Il est donc nĂ©cessaire de rĂ©Ă©crire Ă  chaque fois toutes les donnĂ©es liĂ©es au jeton (l’indicateur ord, le format du fichier, et le fichier lui-mĂȘme) sur la chaĂźne. De plus, des clients d’indexation doivent ĂȘtre dĂ©ployĂ©s pour suivre la distribution des jetons, ce qui est une charge non nĂ©gligeable.

DĂšs le dĂ©but, domo lui-mĂȘme expliquait dans un avertissement prĂ©cĂ©dant la description technique de son protocole :

« Il s’agit uniquement d’une norme expĂ©rimentale amusante dĂ©montrant qu’il est possible de crĂ©er des Ă©tats de solde en dehors de la chaĂźne Ă  l’aide d’inscriptions. Elle ne doit en aucun cas ĂȘtre considĂ©rĂ©e comme LA norme pour la fongibilitĂ© sur Bitcoin avec Ordinals, car je pense qu’il est trĂšs certainement possible de faire des meilleurs choix de conception et des optimisations. Par consĂ©quent, il s’agit d’une expĂ©rience extrĂȘmement Ă©volutive, et je dĂ©conseille fortement de prendre des dĂ©cisions financiĂšres Ă  partir de ce modĂšle. »

domo, brc-20 experiment, 10 mars 2023

La rĂ©elle particularitĂ© des BRC-20 est leur procĂ©dĂ© d’émission. En effet, les jetons sont forgĂ©s par des transactions Bitcoin, contenant l’inscription liĂ©e Ă  l’instruction mint. Une limite d’émission par transaction est dĂ©terminĂ©e dĂšs le dĂ©but (pour l’ordi il s’agit de 1000 unitĂ©s) ainsi qu’un plafond total (21 millions pour l’ordi). N’importe qui peut donc participer Ă  la crĂ©ation initiale des jetons. Une fois qu’ils ont tous Ă©tĂ© forgĂ©s, il n’est plus possible d’en crĂ©er de nouveaux, Ă  moins de modifier la norme BRC-20 elle-mĂȘme.

Cette particularitĂ© donne une certaine raretĂ© aux unitĂ©s et c’est ce qui semble plaire. À ma connaissance, aucun BRC-20 n’a de cas d’utilisation revendiquĂ©. Il s’agit essentiellement de memecoins servant de support Ă  la spĂ©culation.

L’envolĂ©e des frais de transaction

Comme on le sait, la taille des blocs de BTC est limitĂ©e par un paramĂštre appelĂ© la limite de poids. Le poids d’une transaction est dĂ©fini comme Ă©tant la moyenne pondĂ©rĂ©e de la taille des donnĂ©es de base et de la taille du tĂ©moin contenant les signatures, cette derniĂšre impactant quatre fois moins la mĂ©trique. Le poids d’un bloc est la somme du poids des transactions qu’il contient. Le total est limitĂ© Ă  4 millions d’unitĂ©s, ce qui correspond Ă  environ 1,8 Mo pour un bloc contenant des transactions « normales » et qui peut aller jusqu’à 4 Mo pour un bloc incluant des transactions « atypiques ». MĂȘme si cette limite est complexe Ă  apprĂ©hender, elle rend l’espace de bloc rare, ce qui peut soumettre les utilisateurs Ă  une rude concurrence pour la confirmation de leurs transactions et conduire Ă  une hausse significative des frais.

Le succĂšs des Ordinals, et a fortiori des BRC-20, a eu pour effet de remplir l’espace de bloc disponible. DĂšs fĂ©vrier, les inscriptions ont abreuvĂ© les mempools des nƓuds et ont commencĂ© Ă  prendre la place des transactions financiĂšres dans les blocs de la chaĂźne. Puis les jetons BRC-20 ont progressivement supplantĂ© les artĂ©facts numĂ©riques au sein des blocs, faisant monter les frais en flĂšche au dĂ©but du mois de mai.

Cette tendance s’explique par le fonctionnement particulier de ces jetons, dĂ©crit ci-dessus. Ces derniers sont forgĂ©s par les utilisateurs qui publient des transactions : quand leur prix monte sur le marchĂ©, il est rentable de publier de nouvelles transactions pour s’en procurer, ce qui mĂšne in fine Ă  un encombrement de l’espace de bloc.

Ainsi, c’est la spĂ©culation autour de ces jetons qui est responsable de la montĂ©e record des frais qui a suivi. Cette spĂ©culation a Ă©tĂ© nourrie par le dĂ©ploiement de places de marchĂ©. DĂšs avril, des services d’échange ont commencĂ© Ă  Ă©merger, comme Ordswap OTC ou UniSat Marketplace. RelayX, un service de swap fonctionnant sur Bitcoin SV, s’est vite adaptĂ© pour prendre en charge les principaux BRC-20. Puis des plateformes de change reconnues sont rentrĂ©es dans la dance : Gate.io a commencer Ă  intĂ©grer les BRC-20 Ă  son offre avec l’ordi le 8 mai, BitMart l’a fait le 9 mai, OKX le 20 mai et KuCoin le 1er juin. À l’automne, aprĂšs quelques mois d’accalmie, la tendance est revenue. C’est alors que Binance a listĂ© l’ordi le 7 novembre 2023, ce qui a lancĂ© une nouvelle vague spĂ©culative. Le cours du jeton ordi est passĂ© de 0,10 $ en avril Ă  prĂšs de 20 $ en mai, puis est redescendu et est remontĂ© pour atteindre 75 $ le 26 dĂ©cembre.

Les frais de transaction sont montĂ©s en consĂ©quence. Ils ont connu un premier pic en mai, mois durant lequel les frais mĂ©dians ont pu atteindre 20 $ par transaction au maximum. Puis une nouvelle hausse Ă  eu lieu durant l’automne, bien plus importante et durable que la prĂ©cĂ©dente, et les frais mĂ©dians ont ainsi effleurĂ© les 25 $ le 16 dĂ©cembre !

Évolution des frais mĂ©dias sur BTC en 2023 (cliquer pour agrandir). Source : BitInfoCharts.

Ces Ă©pisodes de hausse de frais ont posĂ© des problĂšmes fondamentaux, non pas en raison de leur niveau mais de leur volatilitĂ©. AprĂšs tout, les frais mĂ©dians gravitaient autour des 50 centimes pendant toute l’annĂ©e, et personne ne s’attendait Ă  ce qu’ils descendent. C’est leur variation brutale qui vient perturber le bon fonctionnement du systĂšme : du jour au lendemain, certains cas d’usage sont anĂ©antis et certaines piĂšces (UTXO) deviennent « indĂ©pensables ».

Ces pĂ©riodes de congestion du rĂ©seau ont Ă©galement montrĂ© les limites des solutions de seconde couche ayant pour but de rĂ©soudre le problĂšme du passage Ă  l’échelle. En effet, les hausses des frais ont perturbĂ© l’usage du rĂ©seau Lightning, en dĂ©cuplant parfois le coĂ»t d’ouverture et de fermeture des canaux. Les soldes trop petits et les canaux Ă  la capacitĂ© trop faible perdaient leur caractĂ©ristique de minimisation de la confiance, ceux-ci Ă©tant Ă  la merci d’une fermeture non coopĂ©rative par un tiers.

La tentation de la censure

Le succĂšs des NFT Ordinals et des jetons BRC-20 a dĂ©clenchĂ© un fort rejet, qui a Ă©tĂ© exprimĂ© sous sa forme la plus extrĂȘme par le dĂ©veloppeur luke-jr, contributeur de longue date Ă  Bitcoin Core et mainteneur de l’implĂ©mentation alternative Bitcoin Knots. En effet, en limitant l’espace de blocs et en faisant augmenter les frais, ces Ă©pisodes ont rĂ©duit l’utilitĂ© de Bitcoin en tant que monnaie, ce qui n’a pas manquĂ© d’attiser les tensions. En raison de leur caractĂšre principalement spĂ©culatif, ces jetons ont Ă©tĂ© qualifiĂ©s de « spam », de « dĂ©ni de service » ou d’« attaque ». La possibilitĂ© d’inscription a Ă©tĂ© elle appelĂ©e un « bug » et une « vulnĂ©rabilitĂ© ».

Ce rejet a fait naĂźtre la tentation de procĂ©der Ă  des actions concrĂštes pour limiter voire supprimer cette activitĂ© jugĂ©e indĂ©sirable. Ces actions prĂ©conisĂ©es ont Ă©tĂ© communĂ©ment appelĂ©es de la censure, mĂȘme si chacune d’entre elles s’appliquait Ă  un niveau diffĂ©rent.

La premiĂšre action proposĂ©e Ă©tait le non-relai des transactions contenant des inscriptions Ordinals dans les mempools des nƓuds. Cette proposition s’est matĂ©rialisĂ©e par un « correctif » appelĂ© Ordirespector, publiĂ© par luke-jr le 1er fĂ©vrier pour Bitcoin Core et adaptĂ© pour Umbrel et Citadel deux semaines plus tard. NĂ©anmoins, la mesure s’arrĂȘtait au relai de ces transactions : il s’agissait d’une rĂšgle de gestion pratique, un filtrage au niveau de la mempool du nƓud, et les blocs contenant des inscriptions Ordinals continuaient Ă  ĂȘtre acceptĂ©s. Une utilisation gĂ©nĂ©ralisĂ©e de ce « correctif » aurait permis de gĂȘner la diffusion des inscriptions jusqu’aux mineurs, sans pour autant l’empĂȘcher totalement : on peut parfaitement imaginer que les mineurs, ayant intĂ©rĂȘt Ă  miner ces transactions en raison de leurs frais, auraient pu mettre en place un nƓud public spĂ©cial pour les recevoir.

La deuxiĂšme action prĂ©conisĂ©e et appliquĂ©e a Ă©tĂ© le dĂ©ploiement de ce rejet au sein d’une coopĂ©rative miniĂšre, menant Ă  la production de blocs ne contenant pas d’inscription Ordinals. Le dĂ©ploiement a Ă©tĂ© rĂ©alisĂ© au sein de la coopĂ©rative Ocean, lancĂ©e le 28 novembre 2023 par luke-jr et Jack Dorsey (ancien PDG de Twitter), qui se voulait ĂȘtre l’hĂ©ritiĂšre de l’ancienne coopĂ©rative Eligius, gĂ©rĂ©e par le mĂȘme luke-jr entre 2011 et 2017. Ocean se basait initialement sur Bitcoin Knots, qui rejetait les inscriptions Ordinals : cela fait que les quelques blocs qu’elle a produit en 2023 ne contenaient pas ces inscriptions mais uniquement des « transactions financiĂšres rĂ©elles » (ce qui impliquait tout de mĂȘme les transferts de NFT). De plus, l’implĂ©mentation limitait aussi les sorties NULLDATA Ă  40 octets de donnĂ©es utiles, de sorte qu’elle ignorait aussi d’autres transactions comme les transactions de rĂ©partition (« tx0 ») du service de mĂ©lange Whirlpool de Samourai Wallet. Il s’agit ici d’une censure passive, qui consiste Ă  confirmer des transactions selon une logique non strictement Ă©conomique. Depuis le 21 dĂ©cembre cependant, Ocean est revenu sur cette mesure et les hacheurs de la coopĂ©rative peuvent dĂ©sormais choisir la politique qu’ils appliquent Ă  leurs blocs entre trois possibilitĂ©s (Knots, Core + Ordisrespector, Core par dĂ©faut).

Enfin, la troisiĂšme proposition d’action a Ă©tĂ© celle de procĂ©der Ă  un soft fork pour remĂ©dier au problĂšme d’Ordinals, partiellement ou totalement. Ce soft fork aurait Ă©tĂ© appliquĂ© par les mineurs (vraisemblablement) suite Ă  la demande d’une partie de l’économie. Il s’agissait ni plus ni moins de rĂ©aliser une censure active des transactions contenant des inscriptions, en invalidant les blocs incluant de telles transactions. Ce soft fork aurait pu conduire Ă  une scission dans le cas oĂč il n’aurait pas Ă©tĂ© appliquĂ© par la puissance de calcul majoritaire.

Heureusement, un tel soft fork n’a pas eu lieu et il est peu probable qu’on en arrive lĂ . Cependant, si cette solution peut paraĂźtre drastique et contraire aux principes de Bitcoin, elle n’est pas impossible et il est toujours enrichissant de voir comment elle peut Ă©merger, y compris au sein de la communautĂ© de Bitcoin elle-mĂȘme. Les gens trouvent toujours des raisons pour vouloir censurer l’autre. À titre d’illustration, en janvier 2012, luke-jr avait rĂ©alisĂ© une attaque de censure complĂšte avec sa coopĂ©rative Eligius contre le systĂšme Coiledcoin, qui Ă©tait minĂ© en combinaison avec Bitcoin ; il n’est pas exclus qu’il recommence un jour si le besoin s’en fait ressentir.

Désapprouver et décourager, mais ne pas rejeter

Les protocoles Ordinals et BRC-20 ont donc marquĂ© l’annĂ©e 2023. Ils ont fait augmenter les frais de maniĂšre drastique et fait surgir des discussions qui ne manqueront pas de rĂ©apparaĂźtre dans les annĂ©es Ă  venir. La censure a probablement Ă©tĂ© le sujet central, celle-ci trouvant des partisans plus ou moins zĂ©lĂ©s au sein de la communautĂ©.

Rappelons que l’essence de Bitcoin est la rĂ©sistance Ă  la censure. Se proposer de juger quelles transactions sont lĂ©gitimes ou pas en commençant Ă  appliquer des mesures, c’est s’engager sur une pente savonneuse. MĂȘme si l’entrave de la diffusion sur le rĂ©seau et le filtrage des transactions au sein des blocs ne forment un problĂšme grave, ces actions prĂ©parent le terrain pour une forme de censure autrement plus menaçante : la censure active imposĂ©e par le rĂ©gulateur financier aux diffĂ©rentes coopĂ©ratives conformistes.

Cela Ă©tant dit, ne pas prĂŽner la censure des inscriptions ne veut pas dire qu’elles ne doivent pas ĂȘtre critiquĂ©es. Les jetons BRC-20 par exemple sont des objets spĂ©culatifs illustrant la dĂ©gĂ©nĂ©rescence du monde de la cryptomonnaie, dĂ©gĂ©nĂ©rescence qui a pour effet de perturber l’adoption durable et pĂ©renne des commerçants. Ne pas les empĂȘcher ne signifie pas les approuver : tout ce qu’un bitcoineur peut faire (si tant est qu’il doive faire quelque chose), c’est dĂ©courager cette tendance, en l’ignorant en premier lieu, puis en expliquant calmement Ă  quel point elle est superficielle et sans fondement, et qu’elle a vocation Ă  tomber dans l’oubli comme tous les autres engouements futiles avant elle. Bitcoin, de son cĂŽtĂ©, survivra.

❌