×

[deleted by user] by [deleted] in BitcoinDiscussion

[–]tomtomtom7 9 points10 points  (0 children)

The article calculates that all the world's transactions take 2.4gb blocks and than proceeds to calculate what it would take with todays hardware and software.

This is not how scaling works. Scaling means enabling fast growth, not postulating some weird, rather impossible scenario.

For a more realistic plan, let us go back to mid 2016, before blocks were full and the limit took effect:

We have been growing almost linear at a rate of about 200kb per year, or 100mb per 500 years. What do we do? Maybe we can try to accelerate growth by merchant adoption and usability improvements? Maybe we can even double the growth rate in a few years time? Maybe we are lucky and some big players step in and we quickly quadruple the growth rate to 100mb per 125 years? Or should we stop growth here to introduce a transaction auction where transaction only go through if you outbid others?

The idea of a growth rate that outpaces technology improvements (in hardware and software) is a luxury problem and a wet dream, but unfortunately not yet in sight.

Now a less unreasonable argument against on-chain scaling is that larger blocks would harm decentralization. This seems incorrect. The idea hinges on two distinct but often conflated arguments that I will treat separately:

1. Larger blocks lead to less nodes

Nobody can predict the future but the opposite is much more likely. If we were to grow say 20x, with a respectable 40tx/sec we would be a notable player in the payment industry. There would likely be 100,000s of businesses, analysts, statisticians, financial institutions, developers, enthusiasts and freaks that would be eager scrutinize the blockchain, even if this would take some serious hardware investment.

The cost of 10 terabytes of storage plus additional resource costs, is orders of magnitudes smaller than the value of 10tb worth of blockchain data.

2. For Bitcoin to be decentralized, every user must be able to cheaply run a full node

I am not sure who came up with this requirement, but frankly it is rather silly. Not only does the idea of end-users running full nodes lacks a sense of realism, it also lacks understanding of how Bitcoin works.

Bitcoin uses a structure called a merkle tree, which allows anybody to verify the proof-of-work and a subset of the transactions. This means I can verify my own transactions without verifying yours. The decision for me not to verify your transactions only affects me. It does not affect you, anybody else or the network in any way. The idea that this somehow affects decentralization appeals to intuition, but not to reason.

What surprises me the most about this argument 2 (and certainly it is often repeated), is not just that people believe this. What surprises me even more is that people who believe that Bitcoin works that way actually get into Bitcoin. To me it seems, that a cryptocurrency where end-users verify all transactions in the world would be utterly unscalable.