[bitcoin-dev] Announcing a new standard for soft fork activation

Michael Folkson michaelfolkson at gmail.com
Thu Apr 1 14:58:04 UTC 2021


There have been a vast number of proposals for soft fork activation in
recent months and it is important that all these important ideas don’t go
to waste. Hence I propose a new standard for soft fork activation
incorporating all the ideas into one standard. I appreciate this standard
has come too late for Taproot activation but it should be ready for any
future soft forks. It is a multi phase, multi year standard. No soft fork
can activate unless and until it has successfully passed through all of the
different 14 phases. This will demonstrate Bitcoin’s ultimate conservatism.

Phase 1) Let’s See What Happens - BIP 8 (false, 0.25 years). The shortest
phase just to whet appetites.

Phase 2) Start now, improve later - BIP 8(false, 1 year) A confusing name,
it starts but it doesn't improve later

Phase 3) BIP 9 equivalent - BIP 8(false, 1 year)

Phase 4) Gently discourage apathy - BIP 8(true, 1 year) Forced signaling at
the end of this phase but obviously there are still many phases before the
soft fork can actually activate.

Phase 5) BIP 91 (1 year). As a nod to our SegWit history we have a BIP 91
activation phase.

Phase 6) BIP 148 (1 year). Some people disagree that BIP 91 activated
SegWit so we do a BIP 148 activation phase to keep those people happy.
Again forced signaling doesn’t actually mean activation. There are still
many more phases to pass through.

Phase 7) Speedy Trial (using block height, 0.5 years) on mainnet

Phase 8) Speedy Trial (using MTP, 0.5 years) on mainnet

Phase 9) Speedy Trial on the default signet (0.5 years)

Phase 10) Speedy Trial on a combination of three different custom signets
in parallel (0.5 years)

Phase 11) Speedy Trial on testnet and a custom signet in parallel (0.5
years)

Phase 12) Modern Soft Fork Activation (3.5 years) This is the longest phase
of the soft fork activation standard. It is itself multi phase and multi
year so this can be considered a nested activation phase within this
standard.

Phase 13) UASF BIP 8 (LOT=true, 1 year). Forced miner signaling at the end
of this phase but ultimately the soft fork doesn’t yet activate as there is
one final additional phase the activation must pass through. This gives
Samson the opportunity to sell some hats. We are close now. The natives are
getting restless.

Phase 14) Second flag day (1 year) We don’t want those pesky users actually
activating a soft fork on their own so an additional flag day is added just
so we can tell users that we prevented a chain split.

Assuming a soft fork activation has successfully passed through all these
14 phases it should activate. It will take a minimum of 13 years. However,
if it fails during any one of these phases it has to start from Phase 1
again. We should take Bitcoin’s conservatism very seriously. If a soft fork
activation can’t pass successfully through all these phases it shouldn’t
activate. Ultimately we don’t really mind what is in the soft fork (any
idiot can design consensus changes and write secure bug free C++ code) that
is very much secondary in importance to *how* the soft fork is activated.
The activation design absolutely must be conservative.

I expect this rigorous standard for soft fork activation will get a BIP
number. If you are going to propose a future soft fork I recommend you plan
for activation in approximately 13 years from the point the soft fork code
is merged into Core.

I am happy to settle the soft fork activation question once and for all for
the community. I expect in time my contribution will be recognized in the
annals of history with Satoshi Nakamoto and Hal Finney.

Addendum: Although all future soft forks will ultimately use this standard,
this standard is copyrighted. Every time it is used royalties must be paid
into this quantum secure Bitcoin vanity address 1quantumsecureaddress


-- 
Michael Folkson
Email: michaelfolkson at gmail.com
Keybase: michaelfolkson
PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210401/292151d1/attachment.html>


More information about the bitcoin-dev mailing list