Blockchain/Niveau II · Mécanismes/2.2 Transactions/Leçon 3
Frais et taux de frais (sat/vB)
L’enchère pour l’espace de bloc et la métrique qui en fixe le prix
MatérielAccès à mempool.space ou à un explorateur de blocs similaireUne calculatrice permettant d’effectuer des divisions
Curiosité
- Pourquoi une transaction ayant des frais totaux plus élevés est-elle parfois laissée de côté au profit d’une autre avec des frais totaux plus faibles ?
- Comment se fait-il qu’un seul octet de données de signature coûte moins cher qu’un octet de données d’adresse dans le même bloc ?
- Qu’est-ce qui détermine si un paiement est confirmé en dix minutes ou en deux semaines ?
Explorer
- Les mineurs sélectionnent les transactions à inclure dans leurs blocs en fonction du taux de frais, et non du montant total des frais. Un bloc a une capacité limitée ; maximiser les revenus exige d’y faire tenir le plus de valeur possible. Il s’agit d’une enchère où chaque transaction enchérit sur sa propre densité. L’indicateur compare le prix par unité de volume, ce qui garantit qu’une petite offre à forte valeur passe devant une offre volumineuse à faible densité lorsque l’espace se fait rare.
- Depuis l’activation de SegWit en août 2017, la capacité des blocs se mesure en unités de poids plutôt qu’en octets. La limite est de 4 000 000 d’unités de poids par bloc. Les données hors witness comptent pour quatre unités de poids par octet ; les données witness (les signatures) comptent pour une. Les données witness n’entrent jamais dans l’ensemble des UTXO que chaque nœud doit conserver, et peuvent être élaguées après validation : elles sont donc moins facturées.
- Les octets virtuels (vB) normalisent cette pondération : la vsize est égale au poids total divisé par quatre. Les taux de frais s’expriment donc en satoshis par octet virtuel (sat/vB). Une transaction SegWit native typique à une entrée et deux sorties fait environ 141 vB. Le même paiement sous forme de transaction entièrement legacy (P2PKH) ferait environ 226 octets, soit près de 60 % d’espace de bloc en plus pour le même paiement.
- Les taux de frais fluctuent en fonction de la demande d’espace de bloc. En décembre 2017, puis au printemps 2021, la congestion a porté les taux à des niveaux records. Autour du halving d’avril 2024, le lancement du protocole de tokens Runes a provoqué de fortes flambées, les utilisateurs se ruant pour minter de nouveaux tokens. En période calme, les taux redescendent vers le seuil minimal de relais, ce qui permet même aux petites transactions d’être confirmées rapidement.
- Les portefeuilles estiment les taux de frais appropriés en analysant l’état du mempool et les blocs récents. Ils prévoient combien de temps une transaction attendra selon différents niveaux de prix. Cette estimation est probabiliste ; rien n’est garanti. Les utilisateurs peuvent choisir des frais plus élevés pour une confirmation plus rapide, ou des frais plus bas pour réduire le coût, en acceptant le risque d’un retard. L’arbitrage se fait entre certitude et coût.
- Ouvrez mempool.space pour observer les taux de frais actuels. Notez le taux recommandé pour le prochain bloc par rapport à celui d’une confirmation sous une heure. Sélectionnez une transaction récente dans la liste et examinez sa taille virtuelle (vsize) et ses frais totaux. Divisez les frais par la vsize pour vérifier le taux en sat/vB affiché, et constater ainsi comment le marché fixe le prix de cette unité de données précise.
Faits clés
- Les mineurs évaluent les transactions en divisant les frais totaux par le poids de la transaction, afin de maximiser la densité de revenus.
- La limite de taille de bloc est de 4 000 000 d’unités de poids ; les octets hors witness comptent pour 4 unités, les octets witness pour 1.
- Les octets virtuels (vB) sont calculés comme le poids divisé par 4, et servent d’unité de référence pour les taux de frais.
- Une transaction SegWit native typique fait environ 141 vB, tandis qu’un équivalent legacy fait environ 226 octets.
- Les taux de frais s’envolent en période de forte demande, comme en décembre 2017 et lors du lancement des Runes en avril 2024.
- Les portefeuilles estiment les frais en fonction de la congestion du mempool et des délais d’inclusion observés dans les blocs récents.
Exercice neuf, six, trois, un
9RassemblerRelevez 9 transactions Bitcoin récentes sur un explorateur de blocs. Pour chacune, notez la taille virtuelle (vB), le montant total des frais en satoshis et le taux de frais qui en résulte en sat/vB.
6RegrouperRegroupez ces 9 transactions en 6 catégories selon leur taux de frais par rapport à la médiane du réseau à ce moment-là : nettement plus élevé, légèrement plus élevé, proche de la médiane, légèrement plus bas, nettement plus bas, ou non confirmée après 24 heures.
3DistillerRéduisez ces groupes à 3 comportements d’utilisateurs distincts qui expliquent ces choix de frais (par exemple : urgence, optimisation des coûts, erreur).
1CristalliserRédigez une phrase définissant ce qu’un taux en sat/vB achète réellement au réseau de minage.
Vérification des faits
Les dates, les chiffres et les affirmations ont été vérifiés à l’aide des sources publiées listées ci-dessous.
- BIP141: Segregated Witness (consensus layer)
- A. M. Antonopoulos & D. A. Harding, Mastering Bitcoin, 3rd ed. (2023), ch. 9
- mempool.space documentation on fee estimation