The final blocksize showdown has begun, with the latest move taken by segwit2x clients which have implemented two important changes in preparation for the bitcoin hardfork.
Firstly, they have implemented opt-in replay protection to prevent expenditure of bitcoin on one chain from being spent on the other chain. Thus in a way accepting that there may be two blockchains and two currencies after the hardfork.
The opt-in replay protection is designed to not disrupt compatibility with current wallets, and therefore not lose current infrastructure by requiring added work from business developers.
Instead, all that is required is the inclusion of address 3Bit1xA4apyzgmFNT2k8Pvnd6zb6TnwcTi in a transaction, which ensures that transaction won’t be mined by segwit2x miners.
1x supporters have complained the method adds additional bloat to their network as the token satoshi payments to 3Bit will be stuck on nodes’ memories of transaction queues.
But 2x developers have said the private key of the 3Bit address will be publicly released, so any miner will be able to collect those token payments, and thus clear the queue.
Jeff Garzik, one of the first Bitcoin Core developers with some 20 years experience working in Linux open source code, has also implemented a code change which camouflages segwit2x nodes.
With that code merged, nodes will no longer easily be able to differentiate between 1x or 2x, so treating each other like peers until the fork, when their different consensus rules form two different networks.
1x supporters were not very happy, with Gregory Maxwell, Blockstream’s CTO, stating: “Jeff Garzik, I am publicly accusing you of intentionally disrupting other people’s systems.”
Jeff Garzik has not made any statement on this specific point as far as we can see, but the camouflage is likely in response to Bitcoin Core merging a change to their network which tried to ban segwit2x nodes.
As we reported at the time of Bitcoin Core’s merge to lock out segwit2x clients, Matt Corallo, a former Blockstream employee, stated:
“Staying connected to nodes on other networks only prevents both sides from reaching consensus quickly, wastes network resources on both sides, etc.”
In reply, Jeff Garzik said at the time that the move by Bitcoin Core to lock out segwit2x clients would cause a chain-split. He said:
“This creates chain splits even though Bitcoin Core and segwit2x nodes are validating 100% the same rules today; it creates chain splits because of a presumed future rule deviation.”
Bitcoin Core and segwit2x nodes are currently in consensus. The camouflage, therefore, appears to take measures to keep them connected.
It is unclear whether this measure also makes a DDoS of segwit2x nodes more difficult without DDoSing Bitcoin Core nodes at the same time, but what is clear is that the two teams are going through a skills test, which will most likely determine which one ends up being bitcoin.