Proposal: Demonstration of Phase in Full Network Upgrade Activated by Miners [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2017-07-22T03:58:21+00:00


Summary:

In an email conversation among bitcoin developers, the topic of upgrading consensus rules was discussed. It was noted that if miners are passive or veto the activation of new rules, users have the option to refuse blocks that don't show readiness for enforcing the new rules. The discussion also touched on the issue of user choice and whether users should trust the majority of miners or not. It was emphasized that Bitcoin is a market, and users can choose to follow the miners or fork away if they don't trust them. The importance of not relying solely on miners when it comes to choosing consensus rules was highlighted.The proposed protocol upgrade involves using versionbits to define support signals for mining nodes, with tx version used to define current transactions. The deployment will occur in three stages, with an optional fourth stage for integrating codes of the protocol upgrade. Once activated by majority miner signal, mining nodes will orphan blocks with old versionbits and only new versionbit transactions will be allowed after two grace periods. Non-mining nodes have time to upgrade their software during the first two grace periods. The ledger in non-mining wallet nodes is honored and reserved, but users of off-chain wallet services can decide whether or not to follow service providers after receiving notification. Future protocol upgrades can be bonded with node upgrades and activated through miner votes.A new method for activating soft forks called "false signalling" has been proposed by the Bitcoin development team. This method suggests that non-mining nodes should upgrade their software assuming all signals are true. However, it may not be viable for controversial changes. Users will consider market factors when deciding what to do, and the total number of nodes does not necessarily indicate economic and user support.The benefits of the proposed protocol upgrade include incentivizing miners and non-mining nodes to upgrade, ensuring asset security for wallet nodes, and phasing in upgrades under the Nakamoto Consensus. However, there are risks associated with validationless mining, false signaling from miners, and collusion between miners and non-mining nodes. The implementation details of the proposed method are yet to be determined.Overall, the proposed protocol upgrade process aims to ensure that all miners and non-mining nodes upgrade by implementing a phased approach and utilizing majority miner signal. It provides incentives for upgrading, protects asset security, and minimizes the risk of delaying network upgrades. However, there are still challenges and risks that need to be addressed in the implementation.Nodes in the SPY network have the opportunity to upgrade their software as versionbits in the block header do not affect mining. However, after two grace periods, all nodes must be upgraded in order to send transactions and receive confirmations. This requirement is no worse than before and ensures that the ledger in non-mining wallet nodes is respected. Users of off-chain wallet services can choose whether or not to follow the service providers after receiving public notification. Future protocol upgrades can be linked with node upgrades, allowing for sufficient time for nodes to support new protocols. Even if there is a failure in miner activation, the situation will not worsen and the current state will remain stable.The fluctuation of hashing power can impact the longest chain, so having higher activation requirements reduces the risk of temporary forks. It is possible for miners to falsely signal to avoid being orphaned, but non-mining wallet nodes are unable to distinguish between true and false signals. Therefore, non-mining wallet nodes should upgrade assuming all signals are true, and miners signaling false signals should follow suit once all non-mining nodes have upgraded. Non-mining wallet nodes also have the ability to falsely signal without supporting the new protocol. However, genuine nodes should follow the result provided by miners' votes. While it is possible for miners and non-mining nodes to conspire to fork using the old protocol consensus, this possibility cannot be eliminated. Upgrading most passive non-mining nodes reduces their benefit in such scenarios.Transactions from non-mining nodes will not be affected, and there will be ample time for them to upgrade their wallet software. Future protocol upgrades can be independently activated by merging protocol upgrade codes with the upgraded client version and conducting a separate activation vote. This approach ensures that enough time is given for nodes to upgrade their software and support the new protocol, even if the miner vote fails to activate it.


Updated on: 2023-08-01T21:07:40.604251+00:00