零点课堂 | 比特币改进提案的运作流程(3)
BIP 的类型共有三种:
- 标准跟踪 BIP:描述了影响大多数或所有比特币实现的任何更改,例如网络协议的更改,块或交易有效性规则的更改,或任何影响使用比特币的应用程序互操作性的更改或增加。
- 信息性 BIP:描述了比特币设计问题,或向比特币社区提供了常规准则或信息,但未提出新功能。信息性 BIP 不一定代表比特币社区的共识或建议,因此用户和实施者可以自由地忽略信息性 BIP 或遵循其建议。
- 流程 BIP:描述了围绕比特币的流程,或提出流程的更改(或其中的事件)。流程 BIP 类似于「标准跟踪 BIP」,但作用于比特币协议本身以外的区域。流程 BIP 可能会提出实施方案,但不会是针对比特币的代码库的;他们经常也需要社区的共识;与信息 BIP 不同,它们不仅仅是建议,而且用户通常不能随意忽略它们。过程,指南,决策流程的更改以及比特币开发中使用的工具或环境的更改这些都是属于流程 BIP。
BIP 的最终实现流程
当你的 BIP 通过审核并并入到 BIP 仓库后,抓紧时间推进你的 BIP,毕竟自己的想法得以实现并作用于社区会给你会带来很大的成就感。
流程 BIP 和信息 BIP 将会讨论月余时间,若无反对意见,就即可生效。那么就如果是流程 BIP、信息 BIP,只要在邮件列表上讨论超过一个月后,没有任何未解决的的反对意见,我们就可以判定这个 BIP 达成了大部分共识,这个 BIP 的状态将会更改为「激活」,真正作用于比特币社区了。
而标准追踪 BIP,则会更加复杂和谨慎。你的目标会是把 BIP 状态从「草案」变为「最终实现」。
在 BIP123 中把标准 BIP 分成了四层共五类:
- 共识层(软分叉、硬分叉)
- 对等服务层
- API/RPC 层
- 应用层
不同分类的 BIP 达到「最终实现」状态所需要达到的条件不一致。
- 软分叉 BIP 严格要求需要矿工的大部分投票。考虑到矿池的存在,一般情况下需要 95% 的绝大多数投票赞同。
- 硬分叉 BIP 则更严格,需要比特币整个社区的成员的采纳,特别包括使用比特币来买卖商品、存储交易比特币的人。基本上说需要比特币社区的全部成员的认可才有可能实现硬分叉,达成这样的共识是极度困难的,因此在比特币历史上没发生过真正的针对比特币的硬分叉升级。
- 对等服务 BIP 则要求应监控到至少 1% 的公共监听节点采用该 BIPs 一个月
- API/RPC 和应用层 BIP 则至少由两个独立的、兼容的软件实现。
以上流程都是很复杂且漫长的,往往是多方的博弈的结果。作为 BIP 的拥有者,在这阶段你要做的就是不断推动你的 BIP,接触更多的社区人员,努力宣扬自己的设计理念,阐述你的 BIP 将会如何对比特币社区产生积极的影响,争取更多的社区人员成为你的 BIP 的拥护者,一步一步把你的 BIP 实现。
BIP 的状态改成「最终实现」将是对你最大的奖励。