1. Hi区块链首页
  2. 资讯
  3. 技术指南

比特币改进协议BIP 9 简述

首先明白:软分叉升级主要是在原有的主链上增加共识规则。
比特币改进协议BIP 9 简述

软分叉的目的是为了让老版本的客户端能够兼容。我们人为设定一个开始时间和结束时间,表示在这个范围内,我们进行软分叉升级,我们规定每到 2016 的整数倍作为一个升级的周期,那么在这个周期内,如果有 80% 的算力认可我的提议,那么就代表升级成功,将该提议添加为共识规则的一部分,如果不够 80%,就进入下一个周期,也就是,在结束时间到达之前,我有可能已经升级成功,也有可能升级不成功。在升级过程中,没有成功的 block,我按照原先的规则保留,但是升级成功之后,假设我又来了之前的一个 block,我会进行check,然后将其抛弃掉。

在主链中,我每要加入进去一个块,我就会进行一次 check,看其是否符合当前的共识规则。但是如果在周期内的话,会有 cache 所以,咱们只需要知道最后一个块的状态信息,剩余在这个周期内的所有块都保存和它一样的状态信息。

这里需要注意一个问题,我比较的时间并不是结束的时间,而是中位数时间(结束时间所在的块往前数 10 个块,加上本身是 11 个块),因为每一个块的时间是矿工随意填写的一个值,所以我拿到这 11 个块之后,进行一次排序,取第 6 个块的时间来作为我真正需要去比较的时间,众所周知,6 个块的时候,我这个链就处于一个稳定的状态,所以,这种方式能够有效的降低随意性。

比特币改进协议BIP 9 简述

– bits:标识位,代表我需要增加哪些共识规则

– startTime:开始时间

– endTime:结束时间

version是一个32字节的bit,前三位是固定的:001,第5为是0或者1,1代表赞成,0代表不赞成。

比特币改进协议BIP 9 简述

声明:登载此文出于传递更多信息之目的,观点仅代表作者本人,绝不代表Hi区块链赞同其观点或证实其描述。

提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。