Recently bitcoin's most senior head developer and the chief scientist for the Bitcoin Foundation, Gavin Andresen, published some core code changes to the bitcoin client and protocol. Along with this publication Andresen has started writing blog posts in his new, rousing series in an attempt to convince bitcoiners everywhere of the vital changes needed to scale the bitcoin network.
Andresen's proposed changes specifically address the block size limitation originally set by Satoshi Nakamoto. A larger block size will help increase the number of transactions that can be simultaneously sent across the network.
Seven Transactions Per Second (TPS) is a rate commonly quoted by bitcoiners when talking about the bandwidth of the bitcoin network. This number comes from the Bitcoin wiki, which states, "the Bitcoin network is restricted to a sustained rate of 7 TPS due to the bitcoin protocol restricting block sizes to 1MB."
For six years head developers of bitcoin have considered plans to accommodate a larger number of bitcoin transactions. Ideas include compressing the blockchain, using sidechains and side trees, and even splitting the blockchain into 3 tiers of service. Some or maybe all of these solutions could be used in the future, as bitcoin's popularity rises, but for now Andresen believes that raising the block size limit from 1 MB to 20 MB is the fastest and surest remedy for scalability.
"I believe this is the simplest possible set of changes that will work."
Along with the bitcoin core code revisions, Andresen has set a date of March 1, 2016 for this block size limit change. With almost a year until the change is implemented, the head developers will have plenty of time to consider all arguments for and against this change.
In Andresens Blog posts he attempts to address a list of known arguments against the idea. Andresen has posted many different types of concerns including added centralization, reduced privacy, higher mining fees, and even the complete loss of user confidence in the blockchain. With such a diversity of concerns Andresen's has committed to making a daily post to address them individually.
The proposed solution does not just raise the number of TPS available. This solution can better be described as a way to make the naturally-rising number of confirmations less risky, Andresen explains "[As] the queue of transactions waiting to be confirmed grows, using more and more memory inside every full node, Full nodes could (and probably will in a future release of Bitcoin Core) start to drop transactions from the queue, which will make transaction confirmation less reliable.”
As confirmations become less reliable, and new transactions are not confirmed after a few blocks, Andresen states that wallets may re-broadcast transactions, “then bandwidth usage spikes as every wallet on the network rebroadcasts its unconfirmed transactions.”
“If the number of transactions waiting gets large enough, the end result will be an over-saturated network, busy doing nothing productive. I don’t think that is likely– it is more likely people just stop using Bitcoin because transaction confirmation becomes increasingly unreliable"
The proposed change may not be easy, even assuming the change is accepted by the other core developers, and all of them agree to make the change next March. To implement the change the code inside the Bitcoin core client software, which both miners and original wallet users run, must be altered. Bitcoin core users then need to install the newly modified version, consenting to the change in the process.
The type of change Andresen has suggested requires a hard fork, a divergence in the bitcoin network resulting in two separate blockchains. A majority upgrade throughout the network is required to confirm the changes, and the old chain would become obsolete. In March 2013 a hard fork occurred without any major issues, but did cause the Mt. Gox bitcoin exchange to briefly halt bitcoin deposits. During that time bitcoin prices dipped by 23% to $37 as panic first spread onto the market. The price quickly recovered to around $48, within a few hours.
Once March 1 arrives, and the new code is released, word will quickly be spread throughout the Bitcoin community urging everyone to upgrade their bitcoin core wallet software to the new version in a coordinated effort.
As soon as 51% of the network has reached a consensus on the proposed changes the new blockchain, with a 20 Megabytes block size, will be standard.