Civil War within the Bitcoin Community – SegWit2x
With the Bitcoin price reaching new heights and cryptocurrencies dominating a market cap of around $200B, there’s a civil war going on in the Bitcoin community. With the SegWit2x hard-fork being around the corner there has been a split in the community, one side supporting the update and the other side strongly against it.
Problem with the current system
Currently, the block size of Bitcoin is limited to 1MB. This size was OK in the beginning, where only a handful of people used BTC to make transactions. But now that the popularity of Bitcoin has grown exponentially, it is not enough.
Due to the combination of limited space inside the blocks and the overwhelming amount of pending transactions waiting to be added into blocks, it makes the system slow and more expensive. All of the pending transactions don’t fit into the blocks, so miners can only add some of them into blocks that get added to the blockchain. This means that some transactions take hours, or even days, to be validated.
It also creates an incentive to increase the transaction fees. Because miners have to pick a handful of transactions that they’ll add into their blocks, they tend to pick the ones with the highest transaction fees as they’ll earn more money doing so. This encourages the increase in fees, as higher fees mean faster transactions.
How can we solve it?
In order to solve this problem, there are two proposals. One of them is the use of Segregated Witnesses (SegWit) and the other is simply increasing the blocksize.
What does SegWit mean?
SegWit is an optimization proposed by Pieter Wuille, a Bitcoin Core developer. This optimization increases the amount of transactions that fit into blocks without changing the block size. It takes one of the most size-heavy parts of the transactions, the signatures (also called “witnesses”, hence the name segregated witness = separated signature), and put them at the bottom of the block. This data is called witness data, and is sometimes referred to as extended blocks.
In order to keep the SegWit update a soft-fork, meaning that nodes don’t necessarily have to update their software, the optimization had to find a way to still satisfy the rule of 1MB block size.
The way SegWit deals with it is that “legacy” nodes (the nodes that run the traditional Bitcoin protocol without the SegWit update) receive blocks without the witness data, while updated nodes receive the blocks with the witness data. This means that the size of the blocks sent to legacy nodes is still 1MB or below, while containing more transactions as the blocks don’t contain the signatures, allowing more transactions to be fit into blocks.
The only limitation with this is that the legacy nodes can’t validate SegWit blocks as validation requires the witness data, which they don’t have. This also means that legacy nodes will only receive blocks with SegWit transactions once the blocks have been validated by the SegWit nodes.
While blocks without the witness data that are sent to legacy nodes are kept at 1MB or lower, the SegWit blocks that have the witness data can theoretically reach up to 4MB, but the actual size depends on the network and is more likely to be around 2MB.
This new concept also eliminates a malleability issue with the current system, where third parties are able to change the transaction ID with the witness data. Since SegWit separates the witness data from transaction data, this is no longer possible. This makes it easier to implement the Lightning Network in the future, which intends to move some transactions off-the-chain in order to provide even faster transaction speeds.
What does increasing the blocksize mean?
This implies to changing the protocol, increasing the block size limit from 1MB to let’s say 2MB. This means that the new blocks can contain twice as many transactions than they did previously.
Both of these proposals have the same goal – making Bitcoin more scalable. But since both of them have their own advantages and disadvantages there are people that support one but not the other.
In order to solve this dispute there was a compromise made in the 23rd of May, 2017 and it’s known as the New York Agreement. This compromise intends to implement the SegWit soft-fork as well as increase the block size limit from 1MB to 2MB.
This is called SegWit2x and this agreement was signed by 58 companies that control around 83% of the hashing power. But there are also people opposing it. The objective of SegWit2x is not to create two separate Bitcoins like the Bitcoin Cash and Bitcoin Gold hard-forks did, but to make the SegWit2x Bitcoin the primary Bitcoin, bearing the legendary symbol of BTC.
This is the reason there’s a split in the community.
- Full nodes (who don’t mine) – increased block size means more data, more data means more space that has to be dedicated to the blockchain on the node and thus keeping an active full node becomes more expensive.
- Core developers – with the implementation of the new protocol the core development team will no longer be the main team working on Bitcoin as they’ll be replaced with the SegWit2x development team.
They also argue that this will give the miners too much power and that it makes the network less centralized as running a full node and mining becomes less available with more memory needed to process blocks. They also state that the update puts the entire Bitcoin at risk. If the SegWit2x protocol would be to fail, then it also affects the whole Bitcoin and could undermine the whole system.
For the hard-fork:
- Miners – the ability to store more transactions inside blocks directly benefits the miners as they’ll receive more money from the transaction fees.
- People and companies using BTC – the updated protocol allows for faster transactions and lower costs.
They also see that the update will make Bitcoin more scalable, while other proposals have failed to do so. They also see that competitors of Bitcoin gain from Bitcoins slower speeds and higher costs, making Bitcoin less desirable as a payment method.
The SegWit part of the proposal has already been implemented as of the end of August and the 2MB block size limit hard-fork is predicted to take place in the middle of November (the fork happens on block #494,784).
The upcoming hard-fork can result in three different outcomes, which leaves the future of Bitcoin uncertain:
- If the majority of the community participates in the hard-fork and updates their software the new SegWit2x Bitcoin with 2MB block size will become the main Bitcoin.
- If there’s not enough people upgrading to the 2MB block size, then there’s going to be two competing Bitcoins with unique rules and different currencies
- If there are almost no people adapting the 2MB block size protocol, then it will be a failure and the old traditional Bitcoin protocol will continue.
The compromise that was intended to solve the dispute about the scalability issues of Bitcoin has caused a lot of controversy and ultimately a split in the community. The main topic of argument is the increase in block size as it requires a hard-fork, which could result in two unique competing Bitcoin blockchains. Nevertheless, the SegWit protocol has been a part of Bitcoin for over 1 month and the hard-fork is around the corner. Will there be one Bitcoin with increased block size or will there be 2 Bitcoins? Only time will tell.