Compartilhe este artigo

Bitcoin est sur le point de réduire ses frais grâce à une meilleure sélection de pièces

Des années de travail ont abouti à ce que le logiciel Bitcoin CORE bénéficie d'une mise à niveau de « sélection de pièces » qui réduira les frais de transaction et fera évoluer la blockchain.

shred, money

ONEun des mécanismes techniques qui a permis au Bitcoin d’être comparé à l’argent liquide est sur le Verge de faire l’objet d’une mise à jour majeure.

Appelé « sélection de pièces », ce terme désigne l'algorithme qui détermine aujourd'hui les données à combiner pour créer la transaction d'un utilisateur. En résumé, le code de sélection de pièces reproduit le processus consistant, par exemple, à donner un billet de 10 $ à un caissier pour un article de 7 $ et à faire payer le consommateur 3 $ en monnaie.

A História Continua abaixo
Não perca outra história.Inscreva-se na Newsletter Crypto Daybook Americas hoje. Ver Todas as Newsletters

Mais si cela ne vous paraît T particulièrement complexe, rappelez-vous que Bitcoin est un logiciel expérimental et que cette fonction, bien que fonctionnelle, n'est T entièrement optimisée. Pire encore, la partie nécessitant des ajustements a un impact direct sur les coûts d'utilisation.

« L'algorithme original de sélection des cryptomonnaies de Bitcoin Core nécessite de nombreuses modifications, notamment en ce qui concerne les frais de transaction. Il est inefficace et finit par tourner en boucle pour tenter de deviner le montant des frais de transaction nécessaires », a déclaré Andrew Chow, contributeur de Bitcoin CORE, à CoinDesk.

Mark Erhardt, ingénieur chez le fournisseur de portefeuille BitGo, est d'accord, allant jusqu'à qualifier l'algorithme de « compliqué » lors d'une récente interview.sur le podcast Noded.

Ainsi, les développeurs ont travaillé sur un nouvel algorithme, baptisé « branch and bound » ou «BNB», qui rassemble les données de manière plus efficace, ce qui entraîne une petite augmentation de l'échelle et des frais de transaction inférieurs.

Erhardtpremière propositionquelques optimisations il y a près de deux ans, alors que Chow était le premier développeur à coder les changements.

Récemment, cette modification a été jugée prête à être intégrée à Bitcoin CORE , l'implémentation logicielle la plus populaire de Bitcoin , et a donc été intégrée au code source. Mieux encore, cette fonctionnalité devrait être largement disponible dès la sortie de la version 1. 17e versiondu logiciel dans l’année à venir.

S'exprimant sur les avantages des changements, Chow a déclaré :

« Cela nous permettra de simplifier considérablement le code de sélection des pièces et permettra à une ONE personne de comprendre exactement ce que fait l'algorithme de sélection des pièces. »

Aucun changement nécessaire

En prenant du recul, comme mentionné, chaque transaction Bitcoin qu'un utilisateur envoie est composée de différentes quantités plus petites de Bitcoin.

En effet, si vous avez un Bitcoin dans votre portefeuille, ce Bitcoin n'est généralement pas une simple donnée. Il est souvent composé de plusieurs blocs de données assemblés. Vous pouvez avoir un, deux ou des dizaines de petits blocs de transaction, chacun appelé « sorties de transaction non dépensées » (UTXO).

Par exemple, à l'adresse de votre portefeuille Bitcoin peut être liée une donnée d'une valeur de 0,1 BTC, une autre d'une valeur de 0,3 BTC, une autre de 0,1 BTC et une dernière ONEune valeur de 0,5 BTC, pour constituer un Bitcoin entier.

Ces pièces sont basées sur les transactions qui les ont précédées et sur la manière dont elles ont été initialement divisées pour être envoyées vers votre portefeuille.

Ainsi, si vous devez envoyer 0,2 BTC, l'algorithme de sélection de cryptomonnaies de Bitcoin CORE pourrait décider de placer la donnée de 0,3 BTC dans ce que l'on appelle l'« entrée », créant ainsi la transaction. Il y aura alors deux sorties : 0,2 BTC, envoyé au destinataire, et 0,1 BTC, remis dans votre portefeuille comme « sortie de monnaie ».

Cependant, selon les développeurs, l'algorithme n'est T très efficace pour décider comment sélectionner les pièces pour les transactions.

L'algorithme génère presque toujours automatiquement des « sorties de monnaie », souvent T et qui gaspillent de l'espace sur la blockchain, a expliqué Erhardt. Dans l'exemple ci-dessus, l'algorithme pourrait éviter cela en sélectionnant deux données valant 0,1 BTC et en évitant ainsi de renvoyer la « monnaie » à l'expéditeur.

Il a continué en parlant d’un autre effet secondaire malheureux :

« Vous ne voulez T que les transactions soient réduites en poussière. »

Les « poussières » sont des morceaux de Bitcoin si petits qu'ils ne valent presque pas la peine d'être dépensés, car les frais peuvent être supérieurs à la transaction elle-même. On peut les comparer à des centimes, dans la mesure où un centime coûte plus cher à produire qu'il ne vaut réellement pour l'achat de biens.

Comment choisir ?

Le nouvel algorithme, BNB, évite ces émetteurs en essayant d'éliminer autant de scénarios de rendu de monnaie que possible. En bref, il LOOKS toutes les entrées pour déterminer s'il existe un moyen d'atteindre exactement le nombre de bitcoins qu'un utilisateur souhaite envoyer lors d'une transaction.

« Cela permet de réduire encore un peu l'ensemble UTXO », a déclaré Chow. « De plus, les transactions pour lesquelles une correspondance exacte a été trouvée seront généralement plus petites que celles pour lesquelles il y a une modification, ce qui permettra également à l'utilisateur de réduire les frais de transaction et de libérer quelques octets d'espace de bloc pour d'autres transactions. »

Et il existe des preuves de son efficacité. Lors d'une simulation, Erhardt a constaté que, dans environ 40 % des transactions normalement soumises à des modifications, le nouvel algorithme était capable de supprimer les données inutiles.

En plus de ces avantages pour les utilisateurs, le changement de code aide également les développeurs, car le nouvel algorithme est beaucoup plus facile à comprendre d'un point de vue technique.

Les développeurs n'ont T encore fini de peaufiner le processus de sélection des pièces. Chow et d'autres prévoient d'aller plus loin dans l'algorithme en y ajoutant un « tirage aléatoire simple ».

Lorsque l'algorithme BNB analyse tous les UTXO d'un utilisateur Bitcoin et T peut éviter de générer une sortie de monnaie, il revient au processus initial de sélection de monnaie. En revanche, avec un tirage aléatoire simple, l'algorithme choisira des UTXO aléatoires jusqu'à atteindre le montant requis.

Il est intéressant de noter que les développeurs trouvent que le choix aléatoire des pièces est une meilleure méthode que l’algorithme plus délibéré utilisé par Bitcoin CORE aujourd’hui.

C'est l'aboutissement d'années de travail, mais selon Erhardt, le processus n'aurait T pu être plus rapide. La sélection des pièces est une « partie sensible » du code et sa modification a des « conséquences mondiales », a-t-il déclaré.

« De ce fait, ONE n'a voulu s'en occuper trop longtemps », explique Erhardt, ajoutant :

« Nous avons maintenant installé une grande partie de la plomberie pour d'autres changements. »

Code binaireimage via Shutterstock

Alyssa Hertig

Journaliste spécialisée dans les technologies chez CoinDesk, Alyssa Hertig est programmeuse et journaliste spécialisée dans le Bitcoin et le Lightning Network. Au fil des ans, ses articles ont également été publiés dans VICE, Mic et Reason. Elle écrit actuellement un livre explorant les tenants et aboutissants de la gouvernance du Bitcoin . Alyssa possède des BTC.

Alyssa Hertig