当前流程由已部署的 BIP 3 管理。任何人都可以编写提案,但编号由 BIP 编辑分配并发布。 BIP 分为规范、信息和流程,经历草稿、完成、部署和关闭状态,并保留作者的推荐;真正的采用只能通过在存储库本身之外的实施、使用和可能的激活来实现。 (Specification) (Informational) (Process) (Draft) (Deployed) (Closed)
BIP是比特币的公开提案文件。它可以定义技术特征、互操作性规则、流程、建议或历史记录。存储库为设计提供了稳定的参考点并保留更改的历史记录。 BIP 不是法律、协议命令或自动更新;节点仅强制执行其实际运行的软件中包含的规则。
BIP 3,名为“更新的 BIP 流程”,状态为“已部署”并取代了 BIP 2。该流程澄清了工作流程,限制了编辑者的决策空间,用“规范”类别取代了旧的“标准跟踪”类别,并简化了状态。同时,它明确表示存储库是一种出版媒介和档案,而不是投票系统或接受度计。
这项工作先于 GitHub 开始。作者将浏览旧提案并在比特币开发邮件列表上讨论具体想法。只有充分阐述的提案才会作为没有自己编号的拉取请求发送。如果文本主题相关、格式正确且明显超出创意阶段,BIP 编辑器会分配一个编号;然后通过将其合并到存储库中来发布它。
BIP 规范为功能或互操作性设置了可实施的技术规则;在完成状态之前,它必须有一个参考实现和全面的测试向量。信息性 BIP 描述设计问题、建议或信息。流程BIP修改了围绕比特币的流程,部署后可以作为持续更新的流程文档。
草案是指正在进行中的提案。 Complete 表示作者认为计划的工作已经完成并建议采用或实施;必须有BIPu规范的实施和测试文件。部署意味着记录了主动使用,或者在流程 BIP 的情况下,需要粗略的共识。已关闭表示文档不再被积极处理或使用;仍然保留下来作为历史。
BIP 编辑审查范围、格式、事先讨论、许可和准备情况、分配编号并维护元数据。根据 BIP 3,他们无权决定提案是否被接受。因此,仅仅发布有争议的 BIP 并不能确认其安全性、正确性、受欢迎程度或社区共识。
这个数字主要是作为一个稳定的参考。 BIP 39是广泛使用的助记词标准,BIP 141描述了SegWit的规则,BIP 174定义了PSBT,BIP 50是2013年3月分裂的事后分析。其他编号的 BIP 仍处于草稿或已关闭状态。这个数字本身并没有说明重要性、实施或批准。
规范可以在没有生产实现的情况下存在,实验软件可以实现草案,并且部署或激活是单独的事件。对于协商一致的变更,差异至关重要:一个 BIP 可以定义新规则,另一种部署规则的方式,并且节点仅在其软件和激活条件确定时才开始执行它们。
BIP 141是BIP规范,其规则在SegWit激活后成为比特币共识的一部分。 BIP 174 是一种在不改变区块有效性的情况下实现钱包和签名者互操作性的格式。 BIP 50 记录了该事件。 BIP 3 本身是一个进程 BIP。因此,“BIP 已收到”这句话对于不同类型来说可能意味着根本不同的事情。
现代 BIP 包含元数据,例如状态、类型、分配编号的日期、许可证、讨论链接、版本,以及可能的要求、替换和建议替换。完成后,更重要的更改将写入更改日志,其版本类似于语义版本控制。对成熟规范的向后不兼容更改通常应该获得新的 BIP,而不是悄悄改变旧数字的含义。
始终从官方存储库中的当前版本开始,而不是屏幕截图或旧文章。检查类型、状态、版本、作者、讨论、依赖关系和变更日志。然后独立验证相关软件的支持,并进行共识设计、部署和激活。关键问题不是“BIP 存在吗?”,而是“它具体规定了什么,谁实施它,以及什么证据表明它实际上是活跃的?”。
要获得更完整的理解,请将本词条与以下词条结合阅读: Soft Fork, 共识规则, Bitcoin Core, Bitcoin, Hard Fork, BIP 39. 反向关联还来自: Soft Fork, 区块大小之争, Bitcoin Core, 卢克·达什杰.