Aller au contenu principal
Transactions

Transaction Bitcoin

Une transaction Bitcoin transfère des UTXO en consommant des inputs pour créer des outputs. Une transaction valide doit débloquer ses inputs (scripts) et respecter les règles de consensus. Elle est diffusée au réseau, attend dans le mempool, puis est incluse dans un bloc. Son identifiant est le TXID.

L'unité atomique du registre

Une transaction Bitcoin est l'opération qui consomme un ou plusieurs UTXO existants pour en créer de nouveaux. C'est la brique élémentaire de l'activité du réseau : tout ce qui se passe sur Bitcoin — paiements, ouverture de canaux Lightning, ancrage de protocoles RGB, inscriptions Ordinals — passe par des transactions.

Anatomie d'une transaction

Une transaction sérialisée contient :

  • Version (4 octets) ;
  • Nombre d'inputs ;
  • Liste des inputs (chacun référence un UTXO et fournit un scriptSig / witness pour le débloquer) ;
  • Nombre d'outputs ;
  • Liste des outputs (chacun contient un montant en sats et un scriptPubKey de verrouillage) ;
  • Witness data (depuis SegWit, séparée du corps) ;
  • Locktime (4 octets, contrainte de hauteur de bloc ou de date).

Le cycle de vie d'une transaction

  1. Création : ton wallet construit la transaction localement.
  2. Signature : la clé privée signe les inputs (ECDSA ou Schnorr).
  3. Diffusion : la transaction est envoyée à un nœud, qui la relaie au réseau.
  4. Mempool : elle attend dans la mémoire des nœuds.
  5. Inclusion : un mineur la sélectionne et l'ajoute à un bloc.
  6. Confirmation : chaque bloc supplémentaire renforce la finalité (1 confirmation suffit pour un café, 6 pour un montant moyen, 100+ pour la coinbase).

Identifiants

  • TXID : double hash SHA-256 de la transaction sans witness, identifiant unique.
  • WTXID : avec witness, depuis SegWit. Permet d'éviter la malléabilité.

Ces hashs servent partout : explorers, references inter-canaux Lightning, etc.

Frais et propagation

Les frais (inputs - outputs) sont la principale incitation à inclure ta transaction. Le fee rate (sats/vB) est ce que les mineurs maximisent. En période de congestion, des frais trop bas font rester ta transaction des heures, voire jours, dans le mempool. Tu peux la débloquer via RBF (remplacement) ou CPFP (parent rapide grâce à un enfant à frais élevés).

Standard vs non-standard

Une transaction valide selon le consensus peut quand même être refusée par le réseau si elle ne respecte pas les règles de standardisation de Bitcoin Core. Ces règles évoluent (size, opcodes utilisés, sortie OP_RETURN…). Une transaction non-standard reste minable directement, mais aucun nœud ne la relaiera.

Comprendre la structure d'une transaction, c'est ouvrir la porte aux concepts plus avancés : multisig, Lightning, covenants, vaults.

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.