MSTR Cat

Blockchain/Niveau II · Mécanismes/2.3 Les blocs et la chaîne/Leçon 6

La subvention par bloc et le halving

Le décalage de bits qui définit la masse monétaire et le verrou de 100 blocs sur les nouvelles pièces

MatérielUne copie du code source de Bitcoin Core, plus précisément `validation.cpp` ou `main.cpp` contenant `GetBlockSubsidy`Une interface d’explorateur de blocs (par exemple, mempool.space ou blockchain.com)Une calculatrice capable d’opérations binaires

Curiosité

  1. Pourquoi un opérateur de décalage vers la droite en C++ impose-t-il une limite monétaire stricte ?
  2. Qu’advient-il de la différence si un mineur réclame moins que la subvention maximale autorisée ?
  3. Combien de blocs doivent s’écouler avant qu’une pièce nouvellement créée puisse être déplacée ?

Explorer

  1. Les nouveaux bitcoins entrent en circulation exclusivement par la transaction coinbase de chaque bloc. Il ne s’agit pas d’une écriture distincte dans le registre, mais d’une sortie spécifique de la première transaction de chaque bloc valide, par laquelle le mineur revendique la propriété de cette nouvelle valeur. Le montant est déterminé par `GetBlockSubsidy` dans la logique de validation de Bitcoin Core, qui calcule la récompense en fonction de la hauteur du bloc courant et non du temps calendaire.
  2. La subvention initiale était fixée à 50 BTC, ce qui équivaut à 5 milliards de satoshis. Afin de diviser cette valeur par deux tous les 210 000 blocs, le code effectue une division entière de la hauteur du bloc par 210 000 pour déterminer le nombre de divisions par deux qui ont eu lieu. Il applique ensuite un opérateur de décalage binaire vers la droite à la valeur initiale de 5 milliards de satoshis pour chaque intervalle écoulé.
  3. Ce mécanisme de décalage de bits est déterministe et efficace. Comme il opère sur des entiers, toute fraction de satoshi issue de la division est tronquée vers le bas. Après 33 décalages de ce type, la valeur tombe à zéro. Cette convergence mathématique garantit qu’il ne sera jamais créé plus d’environ 21 millions de bitcoins, quelles que soient les conditions économiques extérieures ou les fluctuations de la puissance de minage.
  4. Le premier halving a eu lieu au bloc 210 000, le 28 novembre 2012, réduisant la subvention à 25 BTC. Les halvings suivants ont eu lieu aux blocs 420 000 (9 juillet 2016), 630 000 (11 mai 2020) et, plus récemment, au bloc 840 000 le 20 avril 2024, abaissant la récompense à 3,125 BTC. La prochaine réduction est prévue au bloc 1 050 000.
  5. Le revenu total d’un mineur se compose de cette subvention et de l’ensemble des frais des transactions incluses. Un mineur peut toutefois choisir de réclamer moins que le montant maximal autorisé. Les satoshis non réclamés ne sont tout simplement jamais créés et ne peuvent pas être réclamés plus tard. À mesure que la subvention continue d’être divisée par deux, les frais doivent supporter une part croissante du coût de sécurisation du réseau, sujet d’un débat de longue date sur le futur budget de sécurité de bitcoin.
  6. Les sorties coinbase sont verrouillées par une règle de consensus : elles ne peuvent pas être dépensées avant d’avoir atteint 100 confirmations. Une sortie coinbase n’existe que sur la branche qui contient son bloc ; si ce bloc est remplacé lors d’une réorganisation, les nouvelles pièces disparaissent. Ce délai empêche ces pièces de passer dans d’autres transactions qui deviendraient alors invalides.

Faits clés

  • La subvention par bloc commence à 50 BTC et est divisée par deux tous les 210 000 blocs.
  • Bitcoin Core calcule la subvention en décalant vers la droite 5 milliards de satoshis en fonction de la hauteur du bloc.
  • Le halving le plus récent a eu lieu au bloc 840 000 en avril 2024, fixant la subvention à 3,125 BTC.
  • Les mineurs peuvent réclamer moins que la subvention complète ; le montant non réclamé n’est jamais créé.
  • Les sorties coinbase nécessitent 100 confirmations avant de pouvoir être dépensées.
  • La série géométrique des halvings converge vers une offre maximale d’environ 21 millions de BTC.

Exercice neuf, six, trois, un

9RassemblerListez 9 périodes de subvention : le lancement en 2009 et les huit halvings suivants, avec la subvention de chaque période et en précisant si elle a déjà eu lieu.
6RegrouperRegroupez les 9 en 6 selon la part de l’ensemble des bitcoins émise par chaque période : la moitié, un quart, un huitième, un seizième, un trente-deuxième et le reste.
3DistillerRéduisez les 6 à 3 conséquences d’une subvention décroissante pour les mineurs et les frais.
1CristalliserÉcrivez une phrase expliquant comment la troncature entière dans le calcul de la subvention garantit le plafond absolu de l’offre.

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.

Ouvrir dans l'académie interactive →

EN PT ES ZH JA KO RU DE MS