Aller au contenu
ecdsa.com

Indicateurs SIGHASH

L’octet ajouté à une signature Bitcoin qui sélectionne les parties de la transaction qu’elle couvre : ALL (0x01), NONE (0x02), SINGLE (0x03), chacun pouvant être combiné avec ANYONECANPAY (0x80), plus la valeur par défaut 0x00 de Taproot.
Autres graphiessighashSIGHASH_ALLSIGHASH_ANYONECANPAYsighash type

SIGHASH_ALL couvre toutes les entrées et toutes les sorties, et c’est presque toujours ce qu’utilisent les portefeuilles ; NONE laisse les sorties ouvertes, SINGLE ne couvre que la sortie de même index, et ANYONECANPAY permet à d’autres d’ajouter des entrées (à la manière d’un financement participatif). SIGHASH_DEFAULT (0x00) de Taproot se comporte comme ALL et économise l’octet. BIP-143 (SegWit v0) et BIP-341 (Taproot) définissent la construction du condensat, montants des entrées compris, ce qui permet aux portefeuilles matériels de vérifier les frais.

Des indicateurs inhabituels dans une PSBT sont un signal d’alarme : un signataire amené par la ruse à utiliser SIGHASH_NONE ou SINGLE permet à quelqu’un d’autre de détourner les fonds. Les signataires devraient refuser les indicateurs autres que celui par défaut, sauf si le protocole en a besoin.

Normes et références

Tous les termes