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



Summary:

This thread discusses two separate topics - transaction pruning and simplified payment verification (SPV) mode. Transaction pruning, also called "stubbing," only saves disk space and does not affect initial chain download bandwidth or time. On the other hand, SPV clients can download only chain headers with no bodies, reducing initial setup time. However, this method is still linear in the length of Bitcoin's life and requires a regular series of checkpoints signed by a trusted developer and a circular block store for truly bounded overheads. The merkle tree is still useful because it allows for SPV clients to receive only transactions of interest while having nearly the same assurances as downloading full blocks. Contrary to popular belief, SPV clients do not use "number of blocks on top" to decide validity. They look for the best chain available. If an SPV node has access to the P2P network and is also talking to you, you can defraud it for as long as you can dominate the network's hash power (51% attack). However, your invalid blocks won't be accepted by the rest of the network, regardless of how many there are or how much work they represent. As soon as you stop dominating the network, the correct chain will catch up and replace yours, resulting in the fraud being detected and shown to the SPV user.


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