Aller au contenu principal
Transactions

vin

vin est le tableau des inputs d'une transaction Bitcoin dans son sérialisé. Chaque entrée pointe vers une UTXO consommée. Synonyme moderne d'« inputs ». Utilisé dans les RPC et explorers.

Le champ "vin" dans la structure d'une transaction

Le terme vin (pour vector of inputs) désigne le tableau des entrées d'une transaction Bitcoin tel qu'il apparaît dans sa représentation JSON sérialisée. C'est le format renvoyé par les RPC getrawtransaction de Bitcoin Core, et affiché par tous les explorateurs de blocs (mempool.space, blockstream.info, etc.).

Anatomie d'un vin

Chaque élément du tableau vin contient quatre champs principaux :

"vin": [
  {
    "txid": "abc123...",
    "vout": 0,
    "scriptSig": { "asm": "...", "hex": "..." },
    "sequence": 4294967295
  }
]
  • txid : hash de la transaction dont vient l'UTXO consommée.
  • vout : index de l'output au sein de cette transaction parente.
  • scriptSig : script de déverrouillage qui prouve le droit de dépenser (signature + clé publique pour P2PKH, par exemple).
  • sequence : champ d'opcodes pour RBF, timelocks relatifs (CSV), etc.

Coinbase : un vin spécial

Pour la transaction coinbase (première transaction de chaque bloc, celle qui crée la subvention), vin contient un unique élément sans txid réel — à la place, un champ coinbase contient des données arbitraires (hauteur du bloc, message du mineur). C'est dans ce champ qu'a été écrite la fameuse phrase « Chancellor on brink of second bailout for banks » du bloc Genèse.

vin et SegWit

Depuis SegWit, le scriptSig est en grande partie déplacé vers un champ txinwitness adjacent (le witness). Le scriptSig peut être vide pour les inputs P2WPKH ou P2TR, et la signature se trouve dans le témoin séparé — ce qui permet le discount de poids en vBytes.

En pratique

Quand un développeur ou un wallet "consomme" des UTXO pour construire une transaction, il assemble le tableau vin en sélectionnant les sorties précédentes appropriées. La transaction n'est valide que si chaque scriptSig (et/ou témoin) débloque correctement le scriptPubKey de l'UTXO référencée par (txid, vout).

Termes lies

← Retour au glossaire complet

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