The bitcoin network is currently fully congested with almost 100,000 transactions waiting to move, reaching a high of some 130,000 transactions yesterday.
If no further transactions are made, it would take more than 11 hours for the backlog to fully clear, but new transactions are being made at a current rate of around 4 per second, leading to ever higher fees.
An average transaction now requires more than $1 to move, with fees of $1.50 and $2 becoming common.
In the process, these higher fee new transactions either extend the queue or make older transactions drop-off, requiring the bitcoin user to re-send his or her transaction at a higher fee.
Confused users are taking to public spaces, wondering why their transaction is taking ten hour or longer, with some experienced user wondering whether the situation is in any way sustainable.
The problem has been in development for more than two years with the proposed solutions surprisingly leading to a very fierce argument that has divided bitcoin’s community. However, they seem to largely agree with each other, but are nonetheless stuck in a stalemate.
Who Goes First?
The two proposals on the table – segregated witnesses (segwit) and Bitcoin Unlimited (BU) – are sort of supported by both sides, with the only question seemingly being which goes first.
BU supporters have put forward a proposal to implement segwit. Segwit supporters appear to say they will increase maxblocksize when necessary. The problem is, after two years of arguing, neither side believes or trusts the other.
BU supporters think if segwit is activated the blocksize will never be increased for on-chain capacity to operate above demand rather than with full blocks as currently. Segwit supporters think if BU goes ahead they’ll just keep increasing the blocksize, making layer two protocols like LN somewhat useless since they don’t offer much advantage if there is on-chain capacity save for very niche cases of large microtransaction volumes.
The solution was an agreement reached by almost all miners, including current segwit supporters, and a large and representative section of Bitcoin Core developers as well as Blockstream employees, including the very strong small block supporters Peter Todd, Matt Corallo and Luke-Jr.
They agreed to activate segwit and increase maxblocksize at the same time, but then only merged segwit in Bitcoin Core, disenfranchising a large section of bitcoin users. Why such decision was made is not clear at all.
Why Not Both?
Litecoin currently has 8MB blocksize capacity in the same time period as bitcoin. Ethereum can handle far more even in its current version, with around 27 transactions per second, compared to bitcoin’s 2.5.
Both networks operate finely with no problems. Neither has seen any of the “what if” hypothetical attacks many Bitcoin Core developers used to bring up. Neither has seen any “infinite demand” for their capacity.
So, why not both segwit and maxblocksize increase? The surface reason is because a hardfork requires the agreement of everyone, but no one can quite say how you establish such agreement. One way of doing so is to flag-day merge in Bitcoin Core, but what if that leads to two bitcoins?
There have been two bitcoins previously, such as when some miners continued operating on a 50 bitcoins per block reward chain. They were just ignored. Any divergence from a maxblocksize increase merged in Bitcoin Core would likewise probably be ignored since it would have the overwhelming support of the vast majority.
Bitcoin Protocol Politics
Some say the question is slightly more philosophical, that developers should not merge changes under political pressure. The other coin of that is the implied suggestion that we should trust developers in a trustless currency.
Something which may benefit developers, so they won’t budge. Their stated strategy is that if segwit does not activate then the network doesn’t really need higher capacity. Which translates to we’ll wait until fees get very high and pressure significantly increases on miners even if there may be losses in network effects because we have concluded segwit is the way forward.
Some see that as a political way of operating as it potentially concentrates far too much power in the hands of around five developers who have merge access with really only one person, the maintainer, having the ability to decide what is and isn’t merged.
So the majority of miners who have decided, around 45%, have concluded BU should go first. By the time they reach 75%, segwit might even be activated in Bitcoin Unlimited, but the client has found much hostility by some Bitcoin Core developers.
It has had a number of fairly harmless bugs exploited which temporary send down nodes that then go back up with some nodes not affected at all. But the BU developers do lack the same level of experience as some other bitcoin developers gained in far more friendly times.
Interestingly, the one thing being targeted is Xthin blocks, a decentralized way of significantly increasing block propagation by achieving some 90% levels of compression, an improvement that doesn’t yet have an equivalent in Bitcoin Core save for a centralized method of achieving roughly the same result.
What’s the Way Out?
This matter has sort of turned into a team sport with public discussion spaces of both sides sometimes filled with outright hate or rage or anger. It can be very off-putting, even revolting, but it does suggest bridging the gap wouldn’t be easy.
Miners could just activate segwit. Capacity would then be increased, but by how much isn’t very clear. The network would still have to wait for the Lightning Network since a wallet hasn’t been launched yet, but then all transactions can go through LN, with on-chain capacity increased as required for LN.
In the short term there probably wouldn’t be much difference, but in the long term LN hubs may be required to engage in AML/KYC as the network sort of operates like Ripple through IOU hubs backed by on-chain settlement. Ripple, of course, was fined and now requires AML at protocol level.
They could just activate Bitcoin Unlimited, perhaps with segwit merged, but in the short term that may create some consternation. Some bitcoin developers may strongly oppose it, perhaps even split, with some exchanges supporting one side or the other.
Eventually it all probably settles, with the network then enjoying both the Lightning Network and on-chain capacity, giving something to both sides and perhaps ending the debate as far as the public is concerned.
But neither option is great if it doesn’t find the agreement of both sides, something which after two years of debate appears unlikely. So stalemate and status quo with increasing fees and backlogs will likely continue, perhaps for all of this year.