Author: Dan Bryant 2017-11-20 18:04:09
Published on: 2017-11-20T18:04:09+00:00
There has been a discussion on whether there is any incentive for miners to pick segwit transactions over non-segwit transaction and whether they require less, equal or more compute to process. Johnson Lau via bitcoin-dev stated that computing the Transaction ID the same way the hash for signing the transaction is computed is not possible due to different SIGHASH flags. Also, changing the definition of TxID is a hardfork change, which requires everyone to upgrade or a chain split will happen. However, it is possible to use “normalised TxID” (BIP140) as a softfork to fix the malleability issue without changing the definition of TxID. The normalised txid, i.e. txid with scriptSig removed, is used when making signature. On the other hand, Praveen Baratam via bitcoin-dev questioned why the format needs to be changed in segwit at all. He suggested that it would be simpler to compute the Transaction ID the same way the hash for signing the transaction is computed. However, this approach is not feasible due to the above-mentioned reasons. Comparing with segwit (BIP141), BIP140 does not have the side-effect of block size increase and doesn’t provide any incentive to control the size of UTXO set. Also, BIP140 makes the UTXO set permanently bigger, as the database needs to store both txid and normalised txid.
Updated on: 2023-06-12T22:16:11.708706+00:00