After the miners seem to refuse to signal the activation of the SegWit protocol upgrade, the developer community is beginning to think about how they can activate SegWit against the resistance of miners.
Imagine: The Bitcoin ecosystem is unanimous for an upgrade because it solves important problems. Developers, exchanges, wallet providers and hardware wallets want the upgrade. But the miners refuse to activate it. Does the ecosystem have to accept this? Can it even be made extinctable by the miners?
We’re talking about SegWit, of course. The SoftFork, the transaction in a new format allows, in addition to some other advantages, a good bit more capacity on the blockchain brings. SegWit should be introduced if 95 per cent of miners signal their willingness to do so. However, the miners do not seem to be willing to do that.
Do the miners have a misunderstanding?
When it became apparent that there would be no SegWit on Bitcoin for the time being, Charlie Lee, as already reported, has tried to push it into Litecoin. But there too, the miners stand crosswise. In an AMA (ask Me Anythin, ask me what you want), Litecoin chief developer Charlie Lee has pushed the political conflict, which is in the matter, to the top: Lee has explained that the miners are not asked for their consent , But only to signal when they have installed the update to coordinate the SoftFork. And anyway, Lee says something nebulous: If the miners continue to not cooperate, but the ecosystem SegWit wants, then there will be other possibilities.
As these “other possibilities” look, the Litecoin developer Shaolin Fry recently sketched in the mailing list of Bitcoin developers. Fry starts his contribution by listing the disadvantages of the previous method of activating softfork when 95 percent of the hashrates have to signal more than 1,000 blocks of readiness: There is a small portion of the hashrate a vetomache and is threatened by a future “upgrade Inertia “to block significant improvements of Bitcoin.
Fry repeats what Lee has already said in the AMA: “The method is widely misunderstood as the hash power is about a suggestion.” He adds that it is difficult to “resolve this misunderstanding in the wider community.” Fact But it’s a fact that softforks “are never used by the miners,” Miner “can naturally log out simply by not confirming transactions using SoftFork’s features.” But – and now it’s going to be a bit tricky: “You can not produce blocks that are invalid for Softfork.”
Let us stay briefly at the place. What is a Softfork? Why is it different from a hardfork? What does this have to do with the miners, with the Nodes? And how can it help the developers push a softfork against the miners?
The difference between hard and softforks
Both Soft and Hardforks are upgrades from Bitcoin, which take place not only at the software level, but at the level of the consensus protocol, which ensures that all Bitcoin nodes around the world synchronize with the same blockchain according to the same rules. While a Softfork adds more rules, a Hardfork eliminates old rules. A SoftFork is backwards compatible, which means that old nodes that have not imported the update will not understand the newly introduced features, such as SegWit transactions, but still accept them as valid. A hardfork, on the other hand, breaks backwards compatibility, which means that old clients who missed the update not only do not understand the new blocks, but also reject them as invalid.
Imagine a Word document. When you create a .doc file, it can be read by a variety of programs. However, when Microsoft introduced the .docx format, open source alternatives such as OpenOffice were unable to read the documents. One could say that this corresponds to a Hardfork. However, the boundaries are flowing: in part, you could open .docx files with other programs, since the basic format was recognized, but only one letter character with special character display was displayed. In this case it would correspond to a SoftFork.
Back to SegWit: The transactions that SegWit is supposed to implement are recognized as valid by all nodes. Really, however, they are only understood by the nodes, which also have SegWit installed. The plan was actually that 100% of the miner blocks mines in which SegWit transactions are processed in the intended way, while the nodes – the users and companies – have the choice, whether they want to form SegWit transactions or understand themselves First satisfied with a gibberish.
Shaolin Fry now has a plan to activate a SoftFork without the Miner. “The alternative discussed here is a ‘flag day activation’ where nodes start to pass the Softfork at a certain time in the future. This method takes a longer preparation time than a hash-based trigger, but it offers a number of advantages … ”
As soon as people start sending and receiving SegWit transactions, there is an incentive for rational miners to confirm them, since the Witness – which is excluded without SegWit activation – introduces additional charges. Such a “user activated soft fork” (UASF) is a “win-win, because it creates an option that some people want without taking other people. Even if only 10 percent of the users want a feature, it would not be rational for others to refuse them, as long as the benefits outweigh the technical risks. ”
In the mailing list the UASF of course controves was discussed. Some of the jubilant ones opposed the proposal, and they rejected him, and others expressed skepticism.
Jameson Loop, an engineer of the Wallet provider BitGo, suggested that a UASF is not risk-free. If the softfork is enabled by flag day, someone can trigger a split of the chains by making transactions valid on the old chain but invalid on the softfork. If the softfork is activated with the help of a minority of the hashrates, then the majority of the miners could reject the softfork blocks together to stall them. Core developer Luke Dashir also says that without the majority of the hashrates it is possible to split the chain with a single block. According to Luke Dashir, a user-activated SoftFork, the advantages of a softfork on a hardfork on the head, because it behaves like a hardfork.
Chris Belcher, developer of Joinmarket, however, finds the idea. “I think UASF is a great idea, as it balances the power balances in Bitcoin and is much more voluntary.” Belcher would not like to compare a UASF with a Hardfork. Because if there is a fork that is valid on the one chain SegWit and invalid on the other, the old chain will be destroyed whenever the SegWit chain has more hashrates, and there will be a big reorganization of the blockchain. Unlike a Hardfork, the old chain will cease to exist.
Also David Vorrick, developer of Siacoin, estimated the Iee: “The Hashrate follows the price of a coin. If the UASF has a higher price, the other chain is destroyed. If the UASF has a lower price, it can still exist (even if the coins can be stolen trivially on the Mainchain). “The success of a UASF depends exclusively on the price. All you need is the support of economic centers. Vorrick estimates that a UASF should be successful if it finds support for 75 percent of the most important stock exchanges and payment service providers.
Tom Zander, developer of Bitcoin Classic, however, is skeptical: “Do not make a mistake; If a hash minority attacks the hash majority, this is an attack on Bitcoin as a whole. If something like this is possible next year, we will see how governments try to make changes through a UASF. I am very glad that UASFs do not work because this would be the end of Bitcoin’s free and decentralized nature. ”
However, Shaolin Fry was not deterred by such criticism from expanding his idea. A little later, he suggested a flag-day activation in the mailing list.
The Flag Day activation
Since there seems to be strong support for SegWit in the bitcoin economy, but some mining pools are blocking the activation, Shaolin Fry proposes to push the Softfork in a different way. Namely as a User Activated Soft Fork (UASF).
“While the number of nodes per se is meaningless,” says Fry, “the upgrade trend is significant in favor of SegWit. “It is also quite clear that a significant portion of the ecosystem has invested time and resources to deal with SegWit, such as upgrades of wallet codes, updates of libraries, and other work that costs time and money. In addition, others have already developed systems based on SegWit, have invested significant resources to develop systems that require SegWit – as well as various Lightning network systems. This is a much more significant social proof than a node run. ”
Instead of asking the miners for the activation, Fry proposes “to publish the code that activates the existing SegWit development without relying on a complete new development and without giving the hash power veto access. This could be achieved if the economic majority agrees to use a code that rejects blocks that have not activated SegWit. From the perspective of all existing Witness-Nodes, the miners would then signal the BIP9 activation. Such a rule could enter into force 4 to 6 weeks before the timeout of GDP9 [in November 2017, CB]. If large parts of the economic majority publicly declare that they are applying this new client, Miner must give the SegWit activation signal to produce valid blocks. ”
So what Shaolin Fry suggests is that the Bitcoin companies force the miners to activate SegWit by rejecting the blocks of miners who refuse SegWit.