Bitcoin is in the middle of a debate over how it should scale so more people can use it with low fees, which Bitcoin enjoyed until very recently. These higher fees are a direct result of natural market forces responding to the limits of the hard-coded capacity of Bitcoin’s ability to process transactions known as the block size. Currently this is limited to 1 megabyte of data (block) every ten minutes. For years this was not a problem because there just weren’t enough users and/or data to ever get close to this limitation of 1 mb every 10 minutes. In the last year or so this has changed as more and more people all around the world are starting to use Bitcoin. As a result, the fee miners get to process your transaction have grown from $3-$10 a transaction. To put it into perspective, in the beginning of just last year (2016) fees were on average around $.05 a transaction.
What’s the Solution?
While this debate has been going on publicly for well over a year now with multiple solutions presented, there are currently two main solutions being offered. Those two solutions are Segregated Witness and Bitcoin Unlimited. Let’s talk about what those two things are in a nutshell.
Bitcoin unlimited is a software tool that miners and nodes could use to find consensus of what is the maximum prevailing block size limit. The creators of Bitcoin Unlimited or BU claim that it is not a hard fork in itself but if implemented and consensus were to be above 1mb blocks, then a hard fork (irreversible and non backwards compatible software update) would be needed. BU does not change the current consensus rules of bitcoin, but rather just changes the hard coded rule of 1mb block size which is currently under control of the developers of the current Bitcoin software known as Bitcoin Core. BU also claims to have a solution to a long standing problem with Bitcoin known as transaction malleability. Currently BU would recommend a block size increase from 1mb to 16mb to start off with.
Segregated Witness is a proposed soft fork (reversible and backwards compatible software update) offered by the Bitcoin Core developers that would essentially raise the block size to 2mb without actually raising the 1mb base block size at all. A bitcoin transaction has three parts: a sender, a receiver and a signature or (witness). Segregated Witness or SegWit would remove or segregate this signature data from the transaction block, effectively making a 1mb block into a 2mb block. So blocks would still retain their 1mb limit, but would be able to fit double the transactions. Segwit claims to have fixed the issue of transaction malleability in Bitcoin by segregating these signatures and thus changing the way the transaction ID is calculated. Because of this fix, they then would be able to implement Lightning Network to work in conjunction with the Bitcoin network. Lightning Network is a cool piece of new tech that would allow trust-less peer to peer off chain payment channels that would have the enforce-ability of on chain transactions. And like the name suggests, its lightning fast and can scale many times over. This would clear up some of the unconfirmed transactions that we see right now with Bitcoin.
My Stance On This
Having watched this debate go on for over a year, and having had the time to look into all the proposals along the way, it’s hard for me to not call for the activation of Segregated Witness ASAP. I am open to have my mind changed but I have not heard a convincing argument in favor of Bitcoin Unlimited as of yet. One of my long standing worries about Bitcoin and blockchain based cryptocurrencies in general is centralization. I believe that we are running out of runway with Bitcoin with respect to finding a better way to turn the tide and head back in the direction of decentralization again. What am I talking about? When Bitcoin started, it was supposed to be a digital cash system that would allow anyone to mine, run a full node to secure the network and have their own copy of the full ledger. As time has gone by, less and less people can afford to keep a full node because the data is getting too large. The 1st time I downloaded Bitcoin Core was back in 2013 and was less than 10 gigabytes. Now its almost 120 gigabytes. What happens when it gets to Terabytes, who will run a full node? The answer is eventually there will only be a few server farms capable of running full nodes, and THAT will be an attack point for Bitcoin. Bitcoin’s strength is in its decentralization. I feel that if Bitcoin Unlimited gets activated we will reach this situation far sooner than if we activate SegWit. I have faith that the 150+ Bitcoin Core developers will find a way to solve this problem before we get to that point, lets give them the time they need to find those solutions.
Secondly, SegWit is a soft fork, meaning it would be backwards compatible and would only activate if 95% of miners reached consensus. This means that the possibility of a chain split and two Bitcoins being created at full activation is greatly diminished. This is a much safer alternative. Bitcoin Unlimited on the other hand would require a hard fork to change the 1mb block size and at only 51%-75% consensus. This would almost indefinitely create a chain split given the fierce contention between the two camps here. A little over half the miners would go to BU and the other half would stick with Bitcoin Core. This would diminish Bitcoin’s hash rate and its security in half overnight, raising the chance for attacks. For instance, a 51% attack would become half the price overnight. This seems to be to reckless with something that is holding over 30 billion dollars worth of other people’s money.
Whats Your Stance?
Please give me your opinion. I want people to think about this, I want people to get involved. This is your money, this is the people’s money, this is Bitcoin. This is cryptocurrency. What’s your take? Comment below.