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
- Création : ton wallet construit la transaction localement.
- Signature : la clé privée signe les inputs (ECDSA ou Schnorr).
- Diffusion : la transaction est envoyée à un nœud, qui la relaie au réseau.
- Mempool : elle attend dans la mémoire des nœuds.
- Inclusion : un mineur la sélectionne et l'ajoute à un bloc.
- 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
- UTXOUTXO (Unspent Transaction Output) designe une sortie de transaction non depensee. Contrairement a un compte bancaire avec un solde, Bitcoin fonctionne avec des UTXO : chaque transaction consomme des UTXO existants et en cree de nouveaux. C'est comme manipuler des billets plutot qu'un solde numerique.
- TXIDLe TXID (Transaction Identifier) est le hash double SHA-256 d'une transaction Bitcoin sans ses witness data. Il identifie de manière unique la transaction. Avec SegWit, il est complété par le wtxid qui inclut les witness. Utilisé partout pour référencer une transaction.
- Input (vin)Un input désigne une UTXO consommée par une transaction. Il référence le TXID + index de la sortie qu'il dépense, et fournit les données de déverrouillage (scriptSig, witness). Une transaction a un ou plusieurs inputs. Leur somme doit être ≥ aux outputs (la différence = frais).
- Output (vout)Un output crée une nouvelle UTXO, verrouillée par un scriptPubKey. Il contient le montant en satoshis et la condition à remplir pour le dépenser. Une transaction crée 1 à plusieurs outputs. Une fois consommé, un output devient un input.
- MempoolLe mempool est l'ensemble des transactions valides non encore confirmées, stockées dans chaque nœud Bitcoin. C'est la « salle d'attente » du réseau. Sa taille et son fee rate déterminent les frais à payer. Mempool.space en propose une visualisation populaire.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.