Author: Tier Nolan 2015-12-08 19:08:57
Published on: 2015-12-08T19:08:57+00:00
In a bitcoin mailing list, Mark Friedenbach suggested using the last transaction in a block instead of the coinbase transaction to save half of the hashes in the Merkle tree. He also proposed an improvement to this trick by limiting the number of transactions to a power of 2 to get a path of length zero. This technique is presented in bip-aux-header.mediawiki which has a 105 byte overhead for the path but keeps proof lengths small while allowing for a soft-fork. However, only certain transaction counts are allowed, and in the worst case, 12.5% of transactions would have to stay in the memory pool causing a delay for around 7% of transactions until the next block. To raise the count to one of the valid numbers, blank or low latency transactions could be used. Managing the UTXO set to ensure at least one output pays to OP_TRUE is also a hassle.
Updated on: 2023-06-11T01:43:40.712382+00:00