比特币是一个开源网络,全世界的开发者都有权对网络更新作出贡献。从本质上来说,比特币改进协议(BIP)是一种设计文档,主要为全网带来新的功能或信息。由于比特币的开源本质以及其系统中不存在中央机构,比特币软件鼓励开发者使用BIP作为一种交流意见、互换信息的主要方式。
比特币网络第一个BIP是由计算机程序员Amir Taaki提交的。主要内容都是关于BIP的,包括BIP的定义以及如何将BIP和Bitcoin Core客户端相结合。
在比特币系统中,BIP可以大致分为三种:标准类、信息类和进程类。所有BIP都会经历同样的提交、审核和激活过程,因此,这三类BIP唯一的不同就在于各自要实现的目标。
标准类BIP的提交目的是改变网络协议或其他足以影响到互通性(interoperability)的运营模式或功能,包括交易验证和区块容量参数。
信息类BIP主要解决设计问题,建立通用指南。与标准类BIP不同,这类BIP通常都会提出全新的网络功能。
进程类BIP大致与标准类相似,主要区别为:进程类BIP提出的是比特币协议以外的进程更改。
BIP 0001也可称为Taaki提议,并没有清晰说明BIP如何植入Bitcoin Core客户端。虽然该协议内容中的信息图详述了BIP提交流程,但只综合描述了草拟和整合方法,并没有详细说明验证和通过的过程。
从Taaki所绘的图表中可以看出,BIP草案在由某位开发者编写完毕之后会提交到比特币网络开源的“知识库”(repository)当中。然后多个开发者会验证该协议的可用性,选择是否通过。一旦通过,一系列整合流程是可以在Github上查看的。
除了这部分普通流程之外,在BIP彻底通过之前还需注意几个特殊的操作细则。
首先,某BIP开发者或设计者必须向比特币开发团队说明其BIP在提高比特币网络及其核心组成部分的能力。只有在核心开发者同意并通过了这个想法,设计者才可以真正开始草拟自己的BIP。
草拟完成之后,BIP指定编者Luke Dashjr会分配特定的BIP号码。一旦该BIP被大部分的社区成员和开发者接受,技术实施过程就会启动。
Bitcoin Core也通过了部分对钱包、协议和网络产生积极影响的BIP。
目前已经有27个BIP植入了Core客户端。其中比较引人注目的有BIP 0011(多重签名输出)、BIP 0032(HD wallets,分层确定性钱包)和BIP 0152(致密区块中继)。
举个例子,BIP 0011为世界上大部分比特币钱包服务商创建了一个技术标准。如今大部分加密钱包都植入了多重签名技术来保证安全性。这个协议大大影响了比特币网络的运作模式,也使服务商的钱包安全性达到了一定的高度。
而BIP 0032则是一种目的比较单一的协议,因为它只影响到了比特币网络中的钱包。该协议将公钥和私钥的生成过程分离开来,带来了更多的安全性和稳定性。一些大型的比特币钱包平台,比如说Armory和Coinkite都在使用这一技术。
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。