Le Bitcoin Script, pilier fondamental de la blockchain Bitcoin, semble ĂŞtre sur le point de faire un retour aux sources. Un projet de restauration visant Ă redonner au langage de script sa simplicitĂ© d’origine et Ă renforcer la sĂ©curitĂ© du rĂ©seau suscite l’intĂ©rĂŞt de la communautĂ©. DĂ©couvrons ensemble les enjeux et les implications de cette dĂ©marche pour l’avenir du Bitcoin.
Bitcoin et son protocole ossifié

Le protocole Bitcoin est rĂ©putĂ© pour sa stabilitĂ©, en grande partie due Ă son caractère intentionnellement « ossifié ». En adoptant cette approche, les dĂ©veloppeurs cherchent Ă minimiser les risques de bugs et Ă maximiser la sĂ©curitĂ© de la blockchain. C’est une stratĂ©gie de long terme axĂ©e sur la sĂ©curitĂ© plutĂ´t que sur l’évolutivitĂ©. Cependant, cette rigiditĂ© n’empĂŞche pas les initiatives de mise Ă jour du protocole, spĂ©cialement pour rĂ©veiller des fonctionnalitĂ©s oubliĂ©es.
Le langage Bitcoin Script

Tout comme Ethereum dispose de Solidity, Bitcoin possède son propre langage de scripts appelĂ© Script. Ce langage permet d’ajouter des conditions spĂ©ciales aux transactions, offrant une programmabilitĂ© supplĂ©mentaire. MalgrĂ© ses capacitĂ©s, Script reste limitĂ© par rapport Ă d’autres langages. Par exemple, il ne supporte ni les multiplications ni les divisions.
Il fut un temps oĂą le langage Script de Bitcoin Ă©tait plus puissant. Ces fonctionnalitĂ©s sont appelĂ©es opcodes (codes opĂ©rationnels). En 2010, certains d’entre eux ont Ă©tĂ© dĂ©sactivĂ©s pour des raisons de sĂ©curitĂ©, notamment après la dĂ©couverte d’un bug dans l’opcode OP_LSHIFT qui pouvait entraĂ®ner le crash d’un nĹ“ud Bitcoin.
The Bitcoin Script Restoration Project

Rusty Russell, développeur chez Blockstream, souhaite ressusciter ces fonctionnalités oubliées à travers un projet ambitieux surnommé The Bitcoin Script Restoration Project. À travers ce projet, il propose de réactiver les opcodes désactivés en 2010, en adoptant les mesures de sécurité adéquates pour éviter les erreurs passées.
« La maison brûle, on éteint le feu, puis on reconstruit, n’est-ce pas ? [Pour Bitcoin] nous n’avons jamais eu cette deuxième étape. »
Russell explique que l’absence de ces fonctionnalités limite actuellement les possibilités pour les développeurs construisant au-dessus de Bitcoin, et il y a une « faim incroyable » parmi la communauté pour les récupérer.
Nouveau modèle de calcul des coûts des opcodes

Un autre aspect de ce projet concerne la rĂ©vision du modèle de calcul des coĂ»ts associĂ©s aux opcodes. Actuellement, chaque opcode sur Bitcoin a un coĂ»t fixe, peu importe la complexitĂ© des calculs qu’il engendre. Russell propose d’attribuer des coĂ»ts diffĂ©renciĂ©s aux opcodes, en fonction de leur consommation de ressources.
Cette approche se rapproche du modèle de gas utilisĂ© sur Ethereum, oĂą le coĂ»t des opĂ©rations reflète mieux l’utilisation rĂ©elle des ressources. Toutefois, contrairement Ă Ethereum, si une transaction Ă©choue, les frais de gas ne seraient pas perdus pour l’utilisateur.
Étapes à venir

Bien que prometteur, ce projet est encore loin d’être déployé sur le mainnet de Bitcoin. Plusieurs étapes doivent être franchies avant cela :
- Rédaction et soumission d’une Bitcoin Improvement Proposal (BIP) à la communauté.
- Examen et débat de la proposition au sein de la communauté.
- Obtention d’un consensus suffisant parmi les développeurs pour activer les modifications.
Pour donner un exemple, la proposition Taproot a été soumise en 2021 et a nécessité plusieurs mois de discussions et de tests avant son activation, montrant ainsi la rigueur nécessaire pour toute modification du protocole Bitcoin.