delvingbitcoin

Great Consensus Cleanup Revival

Great Consensus Cleanup Revival

Original Postby evoskuil

Posted on: August 27, 2024 17:57 UTC

The discussion revolves around the specifics of proof sizes in transactions and their implications on network efficiency, particularly focusing on coinbase transactions.

An initial estimation suggested that proof sizes could be inflated by 70%, but further analysis indicates this inflation might be even more significant due to the necessity of verifying initial bytes of the coinbase transaction. This verification process requires downloading the entire coinbase transaction to calculate its transaction ID (txid), potentially increasing the proof size by up to almost 1MB.

A detailed examination reveals that the average size of a coinbase transaction up to the most recent halving was approximately 256 bytes, which slightly increased to 260 bytes following the activation of Segregated Witness (segwit). The depth of the Merkle tree, a fundamental component in the structure of blockchain technology, averages at 8 before segwit and 11 afterwards. Consequently, the average download cost for validating Merkle proofs of all transactions in a block during the segwit era is about 612 bytes. This calculation translates to a verification time of roughly 0.34 seconds using a 14,400 baud modem, highlighting concerns over basing decisions on worst-case scenarios given the technological speeds involved.

Additionally, the text points out the discrepancy in sizes of the largest coinbase transactions recorded. Before segwit, the largest coinbase transaction was 31,353 bytes, significantly reduced to just 6,825 bytes in the segwit era, as evidenced by records from Blockstream for the pre-segwit era and Blockstream for the segwit era. This reduction in size has implications for the network's efficiency and the feasibility of certain operations. One such operational challenge highlighted is the need for clients to request a coinbase transaction without knowing its txid, proposing the use of its block hash as a sufficient identifier. This suggestion underscores the ongoing adjustments and optimizations within blockchain technology to accommodate evolving requirements and constraints.