BCH:直击BCH硬分叉:采用“钱包分离法”彻底根除重放攻击风险_ELD

北京时间10月16日,自02:16块高度556767起,以比特大陆和蚂蚁矿池为首的BCHABC阵营和以CoinGeek及nChain为首的BCHSV阵营(代表人物CraigSteveWright,即澳本聪)正式宣告分家,分叉为BCHABC和BCHSV两条独立的公链。这场被业界广泛关注的BCH分叉算力之战,并没有出现一开始假想的51%算力攻击,双方在算力、出块速度上你追我赶,各自独立运行,暂时ABC链保持领先,SV紧追其后。表面上看似波澜不惊,实则却暗流涌动。由于BCH分叉为ABC和SV后,两条新分叉后的支链,地址、私钥、签名规则、交易格式都相同,因此存在被重放攻击的风险。何为重放攻击,简而言之是指,A在ABC公链上向B发出了一个交易请求,B可以在SV链上重放A发出的请求,结果是,A只向B发出了一次交易请求,B却可以同时获得属于A的两份资产,这样以来,B就非法侵占了A原本预期转账之外的额外资产,造成A在数字资产上的损失。在此前区块链历史上的多次硬分叉,都存在因缺乏重放保护功能而出现的重放攻击事件,此次BCH硬分叉后,外网也已经报道出现了重放攻击个例。据区块链安全公司PeckShield态势感知平台数据显示:11月16日,即BCH硬分叉后的当天,BCHABC和BCHSV两条链上存在341,068笔重放交易;11月18日,在受到不明巨量粉尘攻击的影响下,BCHABC和BCHSV两条链上的重放交易数高达1,409,055次,达到了百万级。图一为BCHABC和SV链上硬分叉后,每小时被重放的交易次数。然而,在如此巨量重放交易存在的情况下,ABC和SV公链并没有出台全链层面的重放保护功能,来保障用户资产不受重放攻击的威胁。且各大交易所开始逐渐恢复BCH交易和存取币,而任何交易行为都存在潜在被重放攻击的可能。当务之急,在重放保护功能出台前,交易所和一般用户该如何保障自身的数字资产不受侵害呢?

PeckShield安全人员经过周密分析并实测认为:可采用“钱包分离法”来解除风险,也就是用户应该将ABC和SV资产分离到不同钱包地址,具体操作有以下三种:1.无掺加地址分离:在ABC和SV链上分别生成一个不同的地址,然后把原BCH地址中ABC和SV币分别转到这两个地址中。这两个交易确认成功后,新地址中的数字资产就不会再遭受重放攻击。据了解,有些SV节点在把SV的交易重放到ABC链上,所以我们建议先发起ABC链的交易,确认后再发起SV链交易。2.掺加Input疫苗:在发起一个ABC/SV交易时,在input中加入一个只存在于ABC/SV链的小额UTXO,使得这个交易在另一个链上是非法交易,无法重放。这个小额的UTXO可以由第三方服务商生成转发给用户,也可以自己产生。3.掺加特殊OPCode:ABC链和SV链都有独有的OPcode,所以可以把它们加入交易中,达到类似于第二种方法的效果。在ABC链的交易中可以加入OP_CHECKDATASIG,SV链可以加OP_MUL。PeckShield认为只要彻底做到钱包分离,且分离过程不受干扰,就可以确保资产不再受重放攻击困扰。当然,为了强化各个处理方法的高效、牢靠,可以组合叠加使用。PeckShield建议一般BCH持有者可以采用简单容易操作的第二种方法。对于交易所而言,因存在更大规模的交易量和复杂地址,可以叠加使用第一种+第二种或第一种+第三种方法来确保安全。PeckShield也已和各大交易所建立联系,并尝试用各类有效方法,帮助用户解除存在的重放攻击风险。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:15ms0-3:588ms