Published on: 2018-03-07T14:43:11+00:00
A proposal has been made to reserve 16 bits of the nVersion field in the block header for general purpose use, reducing the number of parallel soft-fork activations using versionbits from 29 to 13. This proposal aims to prevent node software from emitting false warnings about unknown signalling bits under the versionbits signalling system (BIP8/9). The author of the proposal suggests reserving upper bits of the nVersion field instead of annexing the lower 2 bytes. The scope of the proposal is limited to reserving bits for general use without specifying specific uses for each bit. The author provides examples of potential use cases for these reserved bits, such as version-rolling AsicBoost and nonce rolling to reduce CPU load on mining controllers. However, specific use cases are not crucial for this proposal.The proposal is revived due to the introduction of the DragonMint miner, which utilizes version-rolling AsicBoost on mainnet. It is important to address this to ensure that node software can adapt the versionbits warning system to avoid false positives. By reserving bits for general use, mining manufacturers can operate within the designated area without causing disruption or inconvenience. The current draft of the proposal integrates the work of Timo and Sergio, who had proposed something similar in the past. The author emphasizes the importance of basing the specification on their work instead of creating a completely new specification. The complete specification includes updates for GBT and the Stratum mining protocol.It is emphasized that it is not appropriate to use a draft BIP on mainnet before any discussion or consensus has been reached. Doing so would be considered malicious. The author hopes that DragonMint miners can still operate using the current Bitcoin protocol. To implement the proposal, 16 bits from the block header nVersion field, starting from 13 and ending at 28 inclusive (0x1fffe000), are reserved for general use and removed from BIP8 and BIP9 specifications. A mask of 0xe0001fff should be applied to nVersion bits so that bits 13-28 inclusive will be ignored for soft-fork signalling and unknown soft-fork warnings. Importantly, this proposal is backwards compatible and does not require a soft fork to be implemented.The proposal is dual licensed as BSD-3-Clause and CC0-1.0 Universal, ensuring that it can be used and implemented by the community effectively. Overall, this proposal aims to reserve bits for general use in order to prevent false warnings and allow mining manufacturers to operate within designated areas without causing disruption or inconvenience.
Updated on: 2023-08-01T22:46:45.536172+00:00