主页 > imtoken1.0钱包下载 > BCH比特币现金,分叉升级的技术细节
BCH比特币现金,分叉升级的技术细节
根据bitcoincash.org网站提供的信息,比特币现金(BCH)网络将于UNIX时间戳1542300000(北京时间2018年11月16日0点40分)进行硬分叉协议升级,BCH网络将使用的所有企业和个人都应检查他们正在运行的软件,以确保他们的软件与此更新兼容。
目前兼容的客户端有Bitcoin ABC 0.18.2、Bitcoin Unlimited Cash Edition 1.5.0.0,即将兼容的客户端有bcoin-bcash 1.1.0。
以下是本次硬分叉协议升级的具体说明:
当最后11个区块(MTP-11)的中位时间[1]大于或等于UNIX时间戳1542300000(BCH)时,将按照本规范进行网络共识规则升级。 从下一个区块开始,这些共识规则更改将生效:
删除拓扑交易排序约束并强制规范交易排序;
启用 OP_CHECKDATASIG 和 OP_CHECKDATASIGVERIFY 操作码;
执行最小交易规模规则;
对 scriptSig(脚本签名)执行“仅推送”规则;
执行“清洁堆栈”规则;
以下部分不是共识更改捡到一个比特币有用吗怎么卖,而是对比特币现金 (BCH) 实施的建议更改:
自动重放攻击保护,用于未来升级;
规范交易排序
除 coinbase 交易外,区块中的交易必须按交易 id 升序排列,交易 id 将被解释为 256 位小端整数(little endian integers)。 coinbase 交易必须是区块中的第一笔交易。
操作码(OpCode)
新操作码 OP_CHECKDATASIG 和 OP_CHECKDATASIGVERIFY 将按照 op_checkdatasig.md[2] 中的规定启用。
最小交易规模
小于 100 字节的交易应被视为无效交易。 这可以防止黑客利用默克尔树漏洞对轻钱包(SPV)进行欺诈交易攻击[3]。
仅推送
如果脚本签名中出现数字大于 96(十六进制代码 0x60)的操作码,则交易将被视为无效。 这与比特币 BIP 62#2 规则 [4] 相同。
清除堆栈
为了使交易有效,在脚本评估完成时捡到一个比特币有用吗怎么卖,堆栈中必须恰好有一个非零条目。 如果堆栈上仍有其他数据元素,则脚本计算结果为“false”。 这与比特币 BIP 62#6 规则 [4] 相同。
自动重放攻击保护
当最后 11 个区块(MTP-11)的中位时间 [2] 小于 UNIX 时间戳 1557921600(2019 年 5 月 15 日)时,比特币现金(BCH)全节点必须执行以下规则:
forkid[5] 等于 0。
当最后11个区块(MTP-11)的中位时间[1]大于或等于UNIX时间戳1557921600(2019年5月15日)时,执行2018年11月共识规则的比特币现金全节点应做如下改动:
更新forkid[5]等于0xFF0001,以0xFF开头的ForkID将保留用于未来的协议升级。
这个特殊的共识规则绝不能由比特币现金软件钱包实施。 升级钱包后,什么都不会改变。