does "stubbing" off Merkle trees reduce initial download bandwidth?



Summary:

A newly created wallet does not require a bootstrapping node to download the chain with transactions, as it will only have new key-pairs and no incoming transactions. However, later full blocks would be required to detect usable inputs for future outgoing transactions. The chain itself can be verified without the transactions, as long as the very last blocks in the chain are verified. While Satoshi's paper mentions that storage requirements for the blockchain can be reduced by deleting transactions whose outputs have been spent, this technique can only reduce storage requirements and not bandwidth required for the initial chain download by a high-security client that doesn't trust any of its peers. A paranoid client booting up for the first time needs to be given an un-stubbed chain, as part of a block being "valid" is that each transaction's inputs are unspent and their sum exceeds the transaction's outputs unless it is a coinbase. However, if a client decided to accept stubbed blocks only when the sum of the difficulties in the blocks after it exceeds some number N, then attacking it could be made very expensive by picking a large enough N.


Updated on: 2023-06-05T01:38:12.419960+00:00