Solving the Scalability Problem on Bitcoin [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2017-08-27T13:19:25+00:00


Summary:

There is a potential issue with pruning in Bitcoin, as some wallets do not fully empty when instructed to send all funds. This could lead to difficulties in pruning, as wallets with any coins left cannot be pruned. To address this, users need to be encouraged to send everything instead of leaving a small fraction. The problem with node pruning is that it is not standardized, and new nodes need to download and prune all data themselves. The blockchain size is increasing exponentially and could reach a terabyte soon. Adam Tamir Shem-Tov proposes the concept of "trusted" nodes to solve this scalability problem. However, Thomas Guyot-Sionnest argues that implementing this solution is impossible without keeping all blocks until a hard-coded checkpoint. Shem-Tov suggests combining and pruning the blockchain every 999 blocks to one block, leaving only the genesis block. The network would wait for a special "pruned block" before accepting new blocks, and the ledger would always be a maximum of 1000 blocks.In response to a query about shortening transactions in Bitcoin, changes to the hash reference system, UTXO table, and reward mechanism are proposed. The author suggests blocks should refer to the hash of the balance sheet instead of the previous block's hash and that a new signature must be placed on the shortened transaction. However, there are issues with nLockTime and non-standard transactions. These changes would affect wallets, UTXO references, and the proof of work system.The email thread discusses a proposal to solve the scalability issue in Bitcoin by combining and pruning the blockchain every 999 blocks to one block. This would limit the ledger to a maximum of 1000 blocks. The size of the blockchain is currently around 140GB and growing rapidly. Node pruning is not standardized, making it difficult for new nodes to verify data. The proposal suggests adding a Genesis Account to remove intermediate origins and make funds untraceable. However, implementing this solution is deemed impossible due to the difficulty of determining the authenticity of the blockchain midway. Saving all necessary data every 1000 blocks does not guarantee dropping older blocks.The proposal to solve the scalability issue involves combining and pruning the blockchain every 999 blocks, leaving only the genesis block. The network would wait for a "pruned block" before accepting new blocks. However, implementing this is considered impossible due to authenticity and compatibility issues. The current implementation of node pruning keeps unspent inputs and recent blocks. Adam Tamir Shem-Tov suggests trusted nodes as a solution, but Thomas Guyot-Sionnest argues against it. The size of Bitcoin's data is currently around 140GB and could reach a terabyte soon, requiring action.The author suggests combining and pruning the blockchain every 999 blocks to one block to solve the scalability issue. This pruned block would contain a summed up transaction of all transactions in the previous 999 blocks and its hash pointer would reference the genesis block. Full nodes would verify the pruned block before accepting a new block. However, implementing this solution is considered impossible due to difficulties in determining the authenticity of the blockchain midway. Node pruning currently keeps unspent inputs and recent blocks, but there are also proposals to include UTXO in some blocks. The size of Bitcoin's data is growing exponentially and action needs to be taken.


Updated on: 2023-08-01T21:28:49.981793+00:00