EDIT (8 May 2017): This has now become BIP135 . I left the title to preserve the history.
¡Hola!
[ Por favor considéralo como una vista previa ]
Please find below a proposal for a new informational BIP provisionally named 'bip-genvbvoting'.
I present it here in rough draft for your esteemed consideration and as a basis for discussion.
Best regards,
Sancho
--- begin draft of bip-genvbvoting ---
Preamble
BIP: ?
Title: Generalized version bits voting
Author: Sancho Panza <sanch0panza@protonmail.com>
Status: Draft
Type: Informational
Created: 2017-03-29
License: CC0-1.0, GNU-All-Permissive
Replaces: 9
Abstract
This document describes a generalized version bits voting scheme based
on and intended to replace BIP9.
The generalization consists of allowing each version bit to be treated
individually using a configurable percentage threshold and window size,
instead of the fixed 95% (mainnet) and 2016 block window specified in
BIP9.
The state machine and governing parameters (name, bit, starttime,
timeout) remain as is, but additional parameters called 'threshold' and
'windowsize' are added to the per-bit set.
As before, a set of per-chain parameters will exist for the version bits
governed by BIP9.
Motivation
The Bitcoin protocol requires a flexible consensus-finding scheme
to ensure that it can adapt to the needs of the market (its users) and
remain competitive as an electronic payment system.
While BIP9 has served the community reasonably well until now, the
author remarks several shortcomings in its approach:
can address these issues in a way that can satisfy the needs of both soft
and hard forks, as well as represent varying degrees of contentiousness.
Specification
To be elaborated.
It is thought that only cosmetic changes are needed to generalize from
only soft forks to 'soft or hard forks', and to add the additional
per-bit parameters 'threshold' and 'windowsize'
References to fixed values will need to be eliminated and replaced
by respective parameters.
The design of the state machine is envisioned to remain unchanged.
Implementation
A reference implementation can be constructed after elaboration of
the specification.
Copyright
This BIP is dual-licensed under the Creative Commons CC0 1.0 Universal
and GNU All-Permissive licenses.
--- end draft of bip-genvbvoting ---
¡Hola!
[ Por favor considéralo como una vista previa ]
Please find below a proposal for a new informational BIP provisionally named 'bip-genvbvoting'.
I present it here in rough draft for your esteemed consideration and as a basis for discussion.
Best regards,
Sancho
--- begin draft of bip-genvbvoting ---
Preamble
BIP: ?
Title: Generalized version bits voting
Author: Sancho Panza <sanch0panza@protonmail.com>
Status: Draft
Type: Informational
Created: 2017-03-29
License: CC0-1.0, GNU-All-Permissive
Replaces: 9
Abstract
This document describes a generalized version bits voting scheme based
on and intended to replace BIP9.
The generalization consists of allowing each version bit to be treated
individually using a configurable percentage threshold and window size,
instead of the fixed 95% (mainnet) and 2016 block window specified in
BIP9.
The state machine and governing parameters (name, bit, starttime,
timeout) remain as is, but additional parameters called 'threshold' and
'windowsize' are added to the per-bit set.
As before, a set of per-chain parameters will exist for the version bits
governed by BIP9.
Motivation
The Bitcoin protocol requires a flexible consensus-finding scheme
to ensure that it can adapt to the needs of the market (its users) and
remain competitive as an electronic payment system.
While BIP9 has served the community reasonably well until now, the
author remarks several shortcomings in its approach:
- it limits itself to backward-compatible changes, precluding its applicability to hard forks
- a fixed 95% threshold is not flexible enough to allow for a 'spectrum of contentiousness' to be represented
- the 95% threshold allows small minorities to veto proposed changes, leading to stagnation (viz. current standoffs)
can address these issues in a way that can satisfy the needs of both soft
and hard forks, as well as represent varying degrees of contentiousness.
Specification
To be elaborated.
It is thought that only cosmetic changes are needed to generalize from
only soft forks to 'soft or hard forks', and to add the additional
per-bit parameters 'threshold' and 'windowsize'
References to fixed values will need to be eliminated and replaced
by respective parameters.
The design of the state machine is envisioned to remain unchanged.
Implementation
A reference implementation can be constructed after elaboration of
the specification.
Copyright
This BIP is dual-licensed under the Creative Commons CC0 1.0 Universal
and GNU All-Permissive licenses.
--- end draft of bip-genvbvoting ---
Last edited: