Aller au contenu
buybitcoinsmart

Glossaire / Minage et consensus

Bloc

Qu'est-ce qu'un bloc ?
Un bloc est un lot de transactions bitcoin accompagné de l'en-tête de 80 octets qui le scelle, ajouté à la chaîne environ toutes les dix minutes par le mineur qui le résout le premier.

Les blocs transforment un flux de paiements en un registre ordonné et permanent. Chacun porte un en-tête, un nombre de transactions et les transactions elles-mêmes, et l'ensemble est plafonné à quatre millions d'unités de poids, ce qui représente en pratique quelques milliers de paiements. Quand on dit qu'un paiement est confirmé, cela signifie qu'un mineur l'a placé dans un bloc.

Comment cela fonctionne

Un bloc comporte trois parties, et seule la première a une taille fixe.

L'en-tête fait 80 octets et ne varie jamais. Vient ensuite le nombre de transactions, écrit au format compactSize à longueur variable de bitcoin. Puis les transactions elles-mêmes, dans l'ordre, avec une exigence stricte : la première doit être la transaction coinbase, celle qui paie le mineur. Un bloc dont la coinbase occupe la deuxième place est rejeté aussi fermement qu'un bloc contenant une signature falsifiée.

La taille ne se compte plus en octets simples. Depuis l'activation de SegWit en août 2017, la limite est de 4 000 000 unités de poids, où un octet hors witness coûte quatre unités et un octet de witness en coûte une. Il en résulte un plafond proche de 4 Mo pour les blocs riches en witness et d'environ 1 Mo pour un bloc rempli de transactions de style ancien, les blocs réels typiques se situant entre 1,5 Mo et 2 Mo. La règle d'origine de 1 000 000 octets subsiste en dessous comme plafond de la partie hors witness, ce qui explique pourquoi la réponse honnête à « quelle taille un bloc peut-il atteindre » est une fourchette plutôt qu'un chiffre.

Tout le reste est vérifié indépendamment par chaque nœud. Le hash de l'en-tête doit être inférieur ou égal à la cible, la racine de merkle doit correspondre aux transactions réellement présentes, aucune entrée ne peut être dépensée deux fois, et la sortie coinbase ne doit pas réclamer plus que la subvention majorée des frais des transactions incluses. Le protocole impose aussi une période d'attente au mineur : les bitcoins créés dans un bloc ne peuvent être dépensés qu'après que 100 blocs supplémentaires ont été construits par-dessus, de sorte qu'un mineur dont le bloc est ensuite abandonné lors d'une réorganisation ne peut pas avoir déjà dépensé le produit.

Pourquoi cela compte quand vous achetez du bitcoin

L'espace de bloc est une enchère, et les frais de votre retrait sont une offre dans cette enchère.

Les blocs sont finis et la demande ne l'est pas, donc quand la mempool est chargée, les transactions qui paient le plus par octet virtuel sont prises en premier et les autres attendent. C'est le mécanisme qui se cache derrière chaque demande d'assistance « pourquoi mon retrait est-il bloqué ». Consulter un estimateur de frais avant de déplacer des bitcoins, et les déplacer à une heure creuse quand vous le pouvez, ne coûte rien et permet couramment d'économiser plus que la différence de frais de plateforme que vous avez passée un après-midi à comparer.

Le chiffre de dix minutes est une moyenne, pas un horaire. La découverte des blocs se comporte comme un processus aléatoire sans mémoire, si bien que les intervalles se dispersent largement : plus d'un tiers des blocs mettent plus de dix minutes, et environ un sur vingt met plus d'une demi-heure. Une plateforme qui crédite les dépôts après plusieurs confirmations vous annonce donc une distribution, pas un délai de livraison, et un dépôt qui n'est pas arrivé en vingt minutes est généralement normal plutôt que perdu.

Il existe aussi un moyen de contourner entièrement l'espace de bloc. Les paiements Lightning se règlent hors chaîne et ne touchent un bloc que lorsqu'un canal s'ouvre ou se ferme, ce qui explique pourquoi une application comme Strike peut déplacer de la valeur en quelques secondes alors qu'un retrait on-chain attend le bloc suivant. Ce compromis mérite d'être compris avant de supposer que tout transfert de bitcoin doit coûter des frais à un mineur.

À l'intérieur du bloc 774 628, le plus grand jamais miné

Le bloc 774 628, miné par la pool Luxor le 1er février 2023, est le plus gros bloc que bitcoin ait produit : 3,96 Mo.

Il contenait 63 transactions, et l'une d'elles représentait 3,94 Mo du total, une inscription de l'image Taproot Wizard insérée dans un witness Taproot. La pool a coordonné la transaction directement plutôt que de la prendre dans la mempool, et elle a payé au bloc presque rien : environ 0,009 BTC de frais contre une subvention qui était encore de 6,25 BTC à l'époque. Le record précédent était de 2,77 Mo.

Ce bloc mérite d'être consulté parce qu'il montre la règle de poids en action. L'ancienne limite de 1 Mo aurait rendu cette transaction impossible, et le budget de 4 000 000 unités de poids ne l'a permise que parce que les données de witness bénéficient d'une réduction. Il montre aussi qu'un seul participant peut occuper un bloc entier, ce qui est exactement l'objet de la guerre sur la taille des blocs.

Bloc vs en-tête de bloc

Un bloc est l'objet entier ; l'en-tête est le résumé de 80 octets situé à son début. La distinction est pratique plutôt que pédante. Les mineurs ne hachent que l'en-tête, les portefeuilles légers ne téléchargent que les en-têtes, et un nœud qui se synchronise pour la première fois récupère la chaîne d'en-têtes avant de demander la moindre transaction. Si un document parle de « hash du bloc », il désigne le hash de ces 80 octets, pas un hash des paiements qu'il contient.

Bloc vs bloc obsolète

Un bloc se trouve sur la chaîne sur laquelle le réseau s'accorde ; un bloc obsolète est un bloc parfaitement valide qui a perdu la course pour être cette chaîne. Il arrive que deux mineurs trouvent une solution presque au même moment, le réseau retient brièvement deux candidats, et la branche qui cesse de croître est abandonnée. Le bloc écarté n'avait rien d'anormal, et ses transactions réapparaissent presque toujours dans le suivant. C'est aussi pourquoi une seule confirmation est plus faible que six : plus un bloc est profond, moins il devient plausible qu'une branche concurrente le dépasse.

À ne pas confondre avec

Questions fréquentes

Combien de transactions tiennent dans un bloc bitcoin ?

Généralement quelques milliers, car la limite est de 4 000 000 unités de poids et non un nombre de transactions. Les blocs remplis de petites transactions modernes en contiennent plus que les blocs qui portent des données multisig ou d'inscription.

Pourquoi ma transaction n'est-elle pas entrée dans le bloc suivant ?

Parce que les mineurs trient selon le taux de frais et que votre offre était inférieure au seuil retenu pour ce bloc. La transaction reste dans la mempool et est prise en compte lorsque la demande baisse ou lorsque vous augmentez les frais avec replace-by-fee.

Arrive-t-il qu'un bloc soit produit en moins de dix minutes ?

Souvent. Dix minutes est la moyenne de long terme visée par l'ajustement de difficulté, et les écarts individuels vont de quelques secondes à bien plus d'une heure. Environ un écart sur vingt dépasse trente minutes.

À lire ensuite

Termes associés

Plus de termes : Minage et consensus

Lire cette page en anglais