bitcoin-dev

BIP 8.5: Flag day activation based on nlocktime signaling

BIP 8.5: Flag day activation based on nlocktime signaling

Original Postby /dev /fd0

Posted on: August 19, 2024 05:08 UTC

An alternative method for activating soft forks in the Bitcoin protocol is proposed, leveraging nLockTime signaling combined with a predetermined flag day for activation.

This approach aims to offer a solution to the controversies surrounding existing activation methods such as BIP 8 and BIP 9. By assigning numbers to soft fork proposals or utilizing their BIP numbers, users can express their support for specific soft forks by broadcasting transactions with the corresponding number as the nLockTime. This allows miners to signal their readiness to implement the soft fork by including these transactions in a block.

The community is then given a three-month period to analyze the transactions and prepare for a flag day, which marks the activation of the soft fork. An example provided includes using the number 119 to signal support for the OP_CHECKTEMPLATEVERIFY proposal. The document outlines how transactions that fail to be included in a block within a reasonable timeframe can be replaced by new transactions that spend the same inputs but with a different nLockTime, ensuring flexibility and user control over transactions meant for soft fork signaling.

Reference implementations for both the activation process and the conditions under which transactions might be excluded from relay or mining have been provided, illustrating practical steps towards implementing this proposal. These references are available through GitHub commits, highlighting the technical groundwork laid out for this approach. Activation implementation can be found here, and details about transaction exclusion in relay or mining are detailed in another GitHub commit. This innovative method aims to streamline the soft fork activation process, addressing key issues with previous methods while fostering community consensus and miner readiness.