Remplacement par frais (RBF), expliqué


La politique de remplacement par frais (RBF) du réseau Bitcoin permet aux utilisateurs de remplacer les transactions en attente (non confirmées) par de nouvelles avec des coûts de transaction plus élevés.

La politique RBF a été proposée dans le BIP 125 et introduite en tant que fonctionnalité dans le protocole Bitcoin avec la sortie de Bitcoin Core version 0.12.0, publiée en février 2016. Cette fonctionnalité offre de la flexibilité aux utilisateurs qui souhaitent accélérer leurs transactions ou modifier leurs transactions. les frais en réaction aux contraintes du réseau.

Le 23 novembre 2023, un utilisateur de Bitcoin a effectué une transaction à 9 h 59 UTC, payant des frais de transaction exceptionnellement élevés de 3,1 millions de dollars pour le transfert de 139,42 Bitcoin (BTC). Ces frais exorbitants ont établi un record, le huitième plus élevé de l’histoire du Bitcoin. Pour mettre les choses en perspective, l’utilisateur a payé en trop 119 980 fois les frais de transaction habituels. Il y a plusieurs facteurs en jeu ici  :

Remplacement par frais (RBF), expliqué

Sélection de frais de transaction élevés

L’expéditeur peut avoir délibérément choisi des frais de transaction élevés pour tenter d’obtenir une confirmation plus rapide ou parce qu’il a mal évalué les frais.

Politique de FBR

Les utilisateurs peuvent remplacer une transaction aux frais plus élevés par une transaction non confirmée dans le cadre de la politique de remplacement par des frais. Cela implique que pour garantir une confirmation plus rapide, l’expéditeur peut avoir choisi de remplacer la transaction initiale, qui pouvait avoir un coût élevé, par une nouvelle avec des frais encore plus élevés.

Inconscience de l’expéditeur

Il est possible que l’expéditeur n’ait pas prêté une attention particulière aux circonstances du réseau ou qu’il n’ait pas été entièrement conscient des conséquences de ses actions. Ils n’auraient peut-être pas prévu que le RBF entraînerait une augmentation significative des frais de transaction.

Quels réseaux blockchain prennent en charge RBF ?

La capacité RBF est utile lorsque les utilisateurs de Bitcoin souhaitent accélérer la confirmation des transactions ou modifier les coûts en réaction aux conditions changeantes du réseau.

Le remplacement par frais est une politique de transaction intégrée au protocole réseau Bitcoin et prise en charge par Bitcoin Core, l’implémentation de référence du protocole. Comme mentionné, en raison de la politique RBF, les utilisateurs peuvent échanger une transaction Bitcoin non confirmée contre une nouvelle avec des frais de transaction plus élevés.

Il est essentiel de se rappeler que différents portefeuilles et services au sein de l’écosystème Bitcoin peuvent adopter le RBF différemment. Par exemple, bien que RBF soit pris en charge par Bitcoin Core, tous les portefeuilles ne peuvent pas adopter ou offrir cette fonctionnalité. Pour garantir que leur portefeuille ou service est compatible avec la politique de remplacement par des frais, les utilisateurs doivent confirmer les caractéristiques et directives particulières de la plateforme.

D’autres règles RBF incluent que la nouvelle transaction doit conserver les mêmes sorties que la précédente et avoir un numéro de séquence plus élevé pour chaque entrée pour utiliser RBF. De plus, le RBF ne s’applique qu’aux transactions qui n’ont pas encore été confirmées ; une fois qu’une transaction est approuvée, elle ne peut plus être annulée. Cependant, comme tous les nœuds et mineurs ne prennent pas en charge ou ne reconnaissent pas les transactions RBF, son efficacité dépend des conditions du réseau et de la volonté des mineurs de donner la priorité aux transactions comportant des frais plus élevés.

permettant ainsi de personnaliser la valeur occasionnelle, le prix du gaz ou la limite de gaz. Cette fonctionnalité, disponible dans la version 1.8.2 et supérieure de l’application, permet aux utilisateurs avancés d’adapter les paramètres de transaction.

Les utilisateurs peuvent accéder aux paramètres avancés via l’écran de confirmation d’envoi, ajuster les valeurs, consulter les frais de réseau projetés et poursuivre la transaction. Le processus comprend la confirmation des paramètres personnalisés et l’autorisation de la transaction avec un mot de passe et un code 2FA si activé.

Comment fonctionne la politique de remplacement par des frais ?

Les utilisateurs de Bitcoin peuvent accélérer la confirmation de la transaction en créant une nouvelle transaction avec des frais plus élevés, signalés par un « numéro de séquence » unique qui, une fois diffusé, peut être priorisé par les mineurs, remplaçant ainsi la transaction d’origine.

L’état du réseau, les règles des mineurs et le degré de soutien des nœuds et des portefeuilles participants affectent tous l’efficacité de la politique RBF. Voici une explication détaillée du fonctionnement de RBF  :

Confirmation initiale de la transaction

Une transaction Bitcoin est initiée par un utilisateur et partagée avec le réseau. La transaction se trouve dans le pool de mémoire et est en attente d’inclusion dans un bloc par un mineur.

Ajustement des frais de transaction

L’utilisateur peut lancer une nouvelle transaction avec des frais plus élevés s’il souhaite accélérer le processus de confirmation ou s’il trouve les frais trop bas.

Indicateur de remplacement par frais

La nouvelle transaction inclut un « numéro de séquence » unique dans l’entrée de transaction, signalant qu’elle est destinée à remplacer une transaction précédente. Ce numéro de séquence est supérieur à celui de la transaction originale.

Dans le contexte de Bitcoin, le champ nSequence, initialement conçu pour le « remplacement basé sur le numéro de séquence » ou le « verrouillage temporel », répond à deux objectifs principaux. Premièrement, pour qu’une transaction soit éligible au remplacement des frais, elle doit exprimer sa remplaçabilité au moment de l’envoi initial. Ceci est accompli en définissant le champ nSequence – un composant dans chaque transaction – sur une valeur inférieure à 0xffffffe.

En notation hexadécimale, 0xffffffe représente un entier non signé de 32 bits avec tous les bits définis sur 1 à l’exception du bit le moins significatif. En décimal, cette valeur équivaut à 4294967294. Deuxièmement, le champ nSequence active les temps de verrouillage relatifs pour les entrées de transaction, permettant ainsi la mise à jour des transactions après la diffusion, offrant une flexibilité pour les ajustements et facilitant le RBF.

Diffusion de la transaction de remplacement pour contrepartie par les mineurs

L’utilisateur diffuse la transaction de remplacement sur le réseau Bitcoin. Les mineurs qui sélectionnent les transactions à inclure en bloc peuvent voir la transaction de remplacement avec des frais plus élevés. Ils peuvent décider d’inclure la transaction de remplacement dans un bloc parce qu’ils sont incités à inclure des transactions comportant des frais plus élevés.

Confirmation de transaction

La transaction d’origine est remplacée si la transaction de remplacement est incluse dans le bloc. La transaction de remplacement ne sera pas validée et est essentiellement « expulsée » du pool de mémoire.

Comment activer et désactiver RBF ?

Pour activer RBF dans un portefeuille Bitcoin, les utilisateurs doivent vérifier la prise en charge, accéder aux paramètres, activer l’option RBF et ajuster les frais, tandis que la désactivation de RBF implique d’accéder aux paramètres, de désactiver l’option RBF et de s’assurer qu’elle n’est pas activée par défaut.

Activation du RBF

Les utilisateurs doivent s’assurer que le portefeuille sélectionné prend en charge RBF avant d’activer cette fonctionnalité. Les paramètres du portefeuille sont généralement accessibles dans la section des préférences avancées ou de transaction.

L’utilisateur doit rechercher dans les paramètres une option RBF, généralement « Remplacer par frais » ou un terme similaire, et activer cette option. Les utilisateurs peuvent ensuite diffuser la transaction sur le réseau et modifier les frais de transaction en cas de problème avec la confirmation de la transaction.

La version 21.2.2 de Trezor Suite offre une prise en charge sur appareil pour le Trezor Model T (firmware 2.3.5 et supérieur) et le Trezor Model One (firmware 1.9.4 et supérieur). Les utilisateurs peuvent utiliser RBF pour finaliser la transaction ou augmenter les frais.

RBF par réduction de production à Trezor

RBF, par réduction de production, déduit les frais supplémentaires du montant du transfert plutôt que du solde du compte lors de la transmission du montant maximum de Bitcoin à partir d’un seul compte.

RBF avec les appareils Trezor dans Electrum

Les utilisateurs peuvent utiliser RBF avec les appareils Trezor dans Electrum, permettant le remplacement de la transaction d’origine. Cependant, ce remplacement n’est réalisable que si la transaction initiale a été exécutée à l’aide d’Electrum avec l’option « Remplacer par frais » activée, accessible via Outils > Préférences > Remplacer par frais.

Désactivation du RBF

D’un autre côté, l’utilisateur doit accéder aux paramètres du portefeuille pour désactiver RBF. La désactivation de RBF devrait être possible via les options avancées ou les préférences de transaction. Cette option peut être intitulée « Remplacer par des frais » ou quelque chose de similaire.

Pour garantir que cette fonctionnalité n’est pas activée par défaut dans les transactions nouvellement effectuées dans le portefeuille, l’utilisateur doit décocher l’option activée. La documentation ou les ressources de support pour le portefeuille considéré doivent être consultées pour obtenir des informations à jour et précises sur l’activation ou la désactivation de RBF.

Inconvénients de la politique de remplacement par des frais

La politique RBF de Bitcoin permet des ajustements de frais après la transaction, mais soulève des inquiétudes en matière de double dépense, de confusion des utilisateurs et de congestion du réseau.

RBF s’inquiète d’une éventuelle double dépense, car les utilisateurs peuvent remplacer une transaction non confirmée par une nouvelle avec des frais plus élevés. Ce risque rend difficile pour les commerçants ou les destinataires des transactions de décider quelles transactions sont légitimes, ce qui pourrait entraîner des fraudes et des malentendus.

RBF peut compliquer l’expérience utilisateur car des personnes ignorant son fonctionnement peuvent par inadvertance remplacer des transactions ou rencontrer des retards. En outre, cette fonctionnalité rend plus difficile pour les entreprises de prévoir avec précision les délais de confirmation en réduisant la fiabilité et la prévisibilité des transactions.

L’efficacité du réseau dans son ensemble peut également être affectée par le fait que les utilisateurs remplacent régulièrement les transactions par des frais élevés, ce qui peut également provoquer des congestions. De plus, la vulnérabilité du RBF aux abus, qui permettraient à des parties sans scrupules de profiter du système pour en tirer un avantage financier, souligne la nécessité de son utilisation prudente et de l’éducation des utilisateurs.