TÉMOIN DE TRANSACTION
Fait référence à une composante des transactions Bitcoin qui a été déplacée avec le soft fork SegWit afin de résoudre le problème de la malléabilité des transactions. Le témoin contient les signatures et les clés publiques nécessaires pour déverrouiller les bitcoins dépensés dans une transaction. Dans les transactions Legacy, le témoin représentait la somme des scriptSig de tous les inputs. Dans les transactions SegWit, le témoin représente la somme des scriptWitness de chaque input, et cette partie de la transaction est dorénavant déplacée dans un arbre de Merkle séparé au sein du bloc.
Avant SegWit, les signatures pouvaient être légèrement modifiées sans être invalidées avant qu’une transaction ne soit confirmée, ce qui changeait l’identifiant de la transaction. Cela rendait difficile la construction de divers protocoles, car une transaction non confirmée pouvait voir son identifiant changer. En séparant les témoins, SegWit rend les transactions non malléables, car tout changement dans les signatures n’affecte plus l’identifiant de la transaction (TXID), mais uniquement l’identifiant du témoin (WTXID). En plus de résoudre le problème de la malléabilité, cette séparation permet d’augmenter la capacité de chaque bloc.