主页 > imtoken官网下载教程 > BCH硬分叉背后:“重放攻击”下的用户自救指南

BCH硬分叉背后:“重放攻击”下的用户自救指南

imtoken官网下载教程 2023-09-08 05:12:00

11月16日凌晨2点16分以太坊硬分叉事件,BCH在556767区块硬分叉,分叉大战落下帷幕,分为BCH ABC和BCH SV两大阵营。

微信图片_20181116160543.png

在这次硬分叉中,BCH ABC 和 BCH SV 都没有实现“重放保护”。 也就是说,在这个分叉之后以太坊硬分叉事件,理论上,重放攻击可能会导致共识崩溃,任何一方的算力归零。

什么是“重放攻击”

以太坊硬分叉事件_以太坊硬分叉会上涨_sitechainfor.com 以太坊大都会硬分叉

在传统的计算机术语中,重放攻击,也称为重放攻击或重放攻击,是指攻击者发送一个已经被目的主机接收到的数据包,以达到欺骗系统的目的。 重放攻击可以发生在任何网络通信过程中,是计算机世界中黑客常用的攻击手段之一。 主要用于认证过程。

在区块链领域,重放攻击(Replay Attacks)通常出现在区块链硬分叉时,指的是“一条链上的交易往往在另一条链上是合法的”。

有一个例子可以简单说明什么是区块链中的“重放攻击”:

小A从无法有效识别付款的啤酒厂购买啤酒(这里无法确定是哪笔付款)。 当他向业务员出示支付宝支付成功的支付信息时,业务员将啤酒递给他。 随后小A将最后的付款信息展示给另一位业务员,业务员又给了他一瓶啤酒。 只要小A反复出示自己的支付信息,就可以连续骗啤酒。 对于啤酒厂来说,这是一次重放攻击,损失了无数啤酒。

以太坊硬分叉会上涨_sitechainfor.com 以太坊大都会硬分叉_以太坊硬分叉事件

就这次BCH硬分叉而言,BCH从一条链变成了两条链。 当两条链都得到支持并继续运行时,另一条分叉链已经产生了资产 BSV ,即 BCH ABC 和 BCH SV 都存在。 由于没有重放保护,如果你在分叉后不管它,让它自然生长,这时候就会出现这样的情况: 当你在 SV 链上交易时,由于相同的地址、算法和交易格式,你得到如果ABC 链重播,可能被 ABC 链认为有效,从而可以进行相同的交易操作。 一旦攻击者利用该漏洞在交易所持续充值提现(BCH SV),就可以获得额外的BCH ABC。

这意味着没有重放保护的BCH用户资产已经暴露在风险之中,更严重的是会导致共识崩溃和零算力。

“重放攻击”起源:以太坊硬分叉

2016年7月20日晚,以太坊在192万区块发生硬分叉,产生两条链,分别为ETH链和ETH经典链,上述代币分别称为ETH和ETC。

sitechainfor.com 以太坊大都会硬分叉_以太坊硬分叉会上涨_以太坊硬分叉事件

这两条链上的地址和私钥算法是一样的,交易格式也完全一样,所以一条链上的交易很可能在另一条链上是完全合法的。 所以如果你在一条链上发起了一笔交易,然后在另一条链上重新广播,它也可能被确认。

因为事先没有计划,很多人就利用这个漏洞在交易所不断充值提现ETH,以获得额外的ETC。 “重放攻击”在区块链世界被重新定义。

受重放攻击的影响,以太坊目前存在的问题对用户来说是存在的。 因为ETH和ETC都有很好的经济体量,如果用户不能解决自己操作被重玩的可能性,他想卖掉其中一个资产,同时保留另一个资产,要么自己分离,要么只能做到这一点只有在交易所的协助下才能实现。

回应:交易前分离

sitechainfor.com 以太坊大都会硬分叉_以太坊硬分叉会上涨_以太坊硬分叉事件

由于 BCH 已经分叉,没有重放保护,所以无法避免重放。 为避免损失,交易所和用户需要将BCH ABC/BCH SV分开查看。

让我们回顾一下BCH的两个升级版本:bitcoin abc 0.18.2和bitcoin sv 0.1。

Abc0.18.2协议版本主要修改是增加了两个操作码OPcode,OP_CHECKDATASIG(CDS)和OP_CHECKDATASIGVERIFY(DSV); 将区块中交易的排序规则从拓扑排序(TTOR)更改为规范排序(CTOR)。

SV0.1协议版本主要修改是恢复比特币早期的四个操作码OPCode、OP_MUL、OP_LSHIFT、OP_RSHIFT、OP_INVERT; 取消每个脚本201个操作码的限制; 将块大小的上限增加到 128MB。

sitechainfor.com 以太坊大都会硬分叉_以太坊硬分叉事件_以太坊硬分叉会上涨

由于两个版本都更新了操作码,对于已经持有BCH的用户,使用新的OP码进行交易操作更为安全,操作账户前应将其分离。

最简单有效的拆分方式是在拆分点后100个区块从矿池购买一点coinbase交易的UTXO,发送到你的BCH钱包,然后一次性将余额全部转入新地址。 你只需要在一条链上做一次,就可以完全分开了。

两种资产分离后,就可以使用新的OPCode,新的OPCode在BCH链上不会因为被重放而存在安全隐患。

在此,SECBIT实验室提醒支持ABC/BSV的BCH持有者和交易所在交易中谨慎使用新的OPCode,再分离您/您用户的BSV,避免重放造成损失。