木星链 木星链
Ctrl+D收藏木星链
首页 > 火必 > 正文

比特币:BCH 双花的唯一受害者竟是攻击者?图解比特币现金硬分叉的三大问题

作者:

时间:1900/1/1 0:00:00

2019年5月15日,比特币现金硬分叉似乎遭遇到三个相互关联的重大问题。「攻击交易」利用一个漏洞,导致矿工产生空块。围绕空区块的不确定性可能引起了一些矿工的担忧,他们可能试图在最初的非硬分叉区块链上挖矿,继而引发了共识区块链分裂。

开发人员和矿工似乎已经制定了一项计划,以复原意外发送到隔离见证地址的资金,上述漏洞可能破坏了这一计划。这种失败可能导致了进行有意识和协调的两个区块链重组。根据我们的计算,大约有3392比特币现金可能已经在一个精心策划的交易逆转中成功地被双重花费了。不过,这次双重花费的唯一受害者可能是原来窃取这笔钱的「小偷」。

原文标题:《比特币现金硬分叉——三个相互关联的事件》作者:BitMEX研究团队

比特币现金网络在2019年5月15日分裂的图解,资料来源:BitMEX研究

三个比特币现金的问题

比特币现金在2019年5月的硬分叉升级受到三个重大问题的困扰,其中两个可能是间接由一个导致空块的漏洞引起的。下图显示了这三起事件之间的潜在关系。

比特币现金在硬分叉升级期间面对的三个问题之间的关系,资料来源:BitMEX研究

网友爆料:ABC团队破解BCHA链困境或只有紧急修改挖矿算法:微博网友“BCH爱好者BruceLee”刚刚在微博发文称,现在BCHA面临的形势已经非常严峻了,随着时间的推移,那个打空块的矿工的意图已经基本展现出来了。他是一个和ABC开发组存在极大私人恩怨的矿工,目的就是弄死或弄残BCHA链。最开始他采取的是挖空块的方式,而且是使用远高于挖矿利润的算力,这个办法攻击效果差,成本很高。昨天开始他已经采取孤立块的方式,但是他自己还在接着挖矿,还是需要倒贴一些钱的。今天开始,他的攻击方式更进化一步。他暂停了在BCHA链挖矿,改为监视其他矿工的动作,一旦其他矿工挖出的新块不符合条件(100%捐赠给ABC团队),他就立即切算力过来,把这些区块孤立作废掉,然后再切走。这样搞几次,其他算力就不敢再来挖矿了。于是就看到了现在的结果,在目前BCHA的市场价和挖矿难度基本匹配的现状下,已经连续7个小时没有新的块挖出来了。使用这种方式,他可以用极低的代价长时间让BCHA链处于无法正常运行的状态。ABC团队破解这个困境的办法,只有两个:1.寄希望于某个大算力倒贴钱来守护网络,这个概率接近0;2.紧急修改挖矿算法,比如改成显卡挖矿。目前市面上已经有多条链修改过挖矿算法,所以阿毛里依样画葫芦,应该很快就可以做到。当然也可以改成POS,不过改成POS涉及的东西更多,比单纯修改挖矿算法复杂很多。[2020/11/28 22:26:12]

空块问题

金色财经挖矿数据播报 | BCH今日全网算力下降5.00%:金色财经报道,据蜘蛛矿池数据显示:

BTC全网算力117.294EH/s,挖矿难度15.78T,目前区块高度636957,理论收益0.00000825/T/天。

ETH全网算力189.669TH/s,挖矿难度2365.99T,目前区块高度10364134,理论收益0.00839147/100MH/天。

BSV全网算力1.779EH/s,挖矿难度0.28T,目前区块高度641555,理论收益0.00050589/T/天。

BCH全网算力2.774EH/s,挖矿难度0.38T,目前区块高度641784,理论收益0.00032445/T/天。[2020/6/30]

BitcoinABC是比特币现金的一个重要实现软件,但它有一个漏洞,进入内存池的交易的有效性条件可能没有共识有效性条件那么繁琐。这与比特币预期运作的方式相反,共识有效性规则本应比内存池有效性更宽松。这实际上是一个非常重要的特性,因为它可以防止恶意花费者创建满足通过网络中继并进入商家内存池的条件,但是无法满足进入有效区块所需条件的交易。这会使0确认双重花费攻击相对容易阻止,而无需担心初始付款进入区块链。在这种情况下,攻击者可以有理由确定,恶意构造的交易永远不会进入区块链。

直播|Cindy Wang > 不容错过的BCH近期大事件:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第5期20:00准时开始,本期“后浪”仙女 Satoshi's Angels|联创,“行走的翻译”将在直播间聊聊“不容错过的BCH近期大事件”,感兴趣的朋友扫码移步收听![2020/6/18]

攻击者似乎已经在比特币现金ABC中发现了这个漏洞,然后在硬分叉之后加以利用,从而引起混乱和迷惑。这个攻击可以随时执行。攻击者只需要广播满足内存池有效性条件但未通过共识检查的交易。当矿工试图产生这些交易的区块时,他们失败了。作为故障保护,矿工似乎已经制造空块,而不是颗粒无收,至少在大多数情况下是这样。

比特币现金—每个区块的交易数量—橙色线是硬分叉,资料来源:BitMEX研究

不对称的链分裂

在空块不确定性达到最高峰时,我们的预硬分叉BitcoinABC0.18.2节点收到了一个新的区块,582,680。当时,许多人都担心空块,一些矿工可能已经恢复到一个硬分叉前客户端,认为较长的区块链遇到了麻烦,并可能会恢复到硬分叉之前。不过,这仅仅是我们的猜测,而空块漏洞可能与链分裂无关,这可能只是由一个太慢而无法升级的矿工造成的。

BCH在1小时内跌幅超过3.00%:据火币全球站数据显示,BCH/USDT在1小时内出现剧烈波动,跌超3.00%,达到-3.02%。当前报价为 172.99 美元,行情波动较大,请注意风险控制。[2020/3/16]

比特币现金共识链分裂,资料来源:BitMEX研究

对于硬分叉的结构,链分裂确实向我们强调了一个问题。我们测试了我们的硬分叉后客户端ABC0.19.0是否会将分裂的非硬分叉侧视为有效。为了使分裂「干净」,分裂的每一侧都应该认为另一侧是无效的。

为了测试较短的硬分叉前区块链的有效性,从BitcoinABC0.19.0节点的角度来看,我们不得不使自分裂以来的第一个硬分叉区块无效。然后,我们观察该节点是否会跟随链分裂或仍然卡在硬分叉点。出乎我们意料的是,如下面的屏幕截图所示,该节点跟随分裂的另一侧。因此,分裂并不完全,这种不对称,可能为攻击者提供更多机会。

我们的BitcoinABC0.19.0节点的命令行截图,资料来源:BitMEX研究

协调的两个区块重组

在硬分叉之后的几个区块,在分裂的硬分叉侧,有一个长度为2的区块链重组。当时,我们认为这是由正常的区块传播问题引起的,并没有考虑太多。例如,BitcoinSV在此之前几周经历了该长度的6个区块的重组,根据我们的分析,当BitcoinSV重组时,孤链中的所有交易最终都进入主要的获胜链。不过,在这种比特币现金重组中,我们发现事实并非如此。

动态 | 国际在线外汇交易商FXCM在平台添加BCH和XRP差价合约交易等服务:据globenewswire报道,国际在线外汇交易商FXCM在平台添加BCH和XRP差价合约交易等服务,此前该平台提供比特币差价合约等相关服务。[2019/5/17]

孤立区块,582,698,包含137笔交易,其中只有111笔交易进入获胜链。因此,就25笔交易而言,似乎发生了一次成功的2个区块双重花费。如下表所示,这25笔交易的输出值总计超过3,300个BCH。孤立区块中没有进入主链的交易列表,资料来源:BitMEX研究

如上表所示,这25笔双重花费交易的总输出值为3,391.7BCH,从经济角度来看,这是一笔重大数额。因此,可以得出结论,重组是一个精心策划的事件,而不是偶然发生的。如果这是偶然发生的事件,则分裂的每一侧的交易可能不会出现不匹配。不过,假设协调和故意重组是我们的猜测。

我们提供了以下两个双重花费的输出示例:其中一个双重花费UTXO示例——「0014」,资料来源:BitMEX研究

上表说明了重组期间5个BCH输出发生的情况。这5个BCH首先被发送到区块582,698中的地址qzyj4lzdjjq0unuka59776tv4e6up23uhyk4tr2anm。该链是孤立链,而相同的输出最终被发送到不同的地址,qq4whmrz4xm6ey6sgsj4umvptrpfkmd2rvk36dw97y,在7个区块之后。

第二个双重花费UTXO示例——「0020」,资料来源:BitMEX研究

上述输出的情况与25笔双重花费交易中的几乎所有资金有共同的特征。大多数输出似乎已经在主链上的区块582,705附近进行双重花费,在孤立区块后大约7个区块。

用于赎回交易输入的SigScript以「0020」或「0014」开头,在上面的示例中突出显示。这些可能与SegregatedWitness有关。根据SegregatedWitness中的规范,「0014」被推送到P2WPKH,和「0020」被推送到P2WSH。因此,这些输入的赎回可能与比特币升级的隔离见证有关,其中只有一部分是在比特币现金上采用的。

实际上,基于我们的分析,孤立区块582,698中的25笔交易中的每个单个输入都用「0014」或「0020」开头的Sigscript来赎回。因此,除了赎回这些SegWit输出的「攻击者」或「小偷」之外,有可能没有人丢失与此链重组相关的资金,而这些资金可能首先被偶然地发送到这些输出。

作为比特币现金2019年5月硬分叉一部分,有一个变化,就是允许复原被意外发送到SegWit地址的比特币。因此,这可能发生在这次事件中。

允许隔离见证复原

在上次升级中,意外发送到SegwitP2SH地址的比特币因CLEANSTACK规则而变为不可花费。这次升级将对这些比特币进行豁免,并将它们恢复到之前可以花费的情况。这意味着一旦P2SH赎回脚本预映射被透露,任何矿工都可以拿走硬币,资料来源。

这个2个区块重组可能与空块漏洞无关。不过,分裂似乎就在在解决漏洞之后一个区块发生,因此它可能是相关的。也许「诚实」的矿工们试图在分裂后直接协调这些输出的花费,又或许要将它们归还到原来的所有者那里,而空块漏洞搞砸了他们的时间,让攻击者得益并卷走资金。

另一方面,该攻击非常复杂,因此攻击者可能非常老练,并需要进行广泛的规划。因此,即使没有空块漏洞,这种攻击也可能是有效的。

结论

我们从有关比特币现金硬分叉升级的事件中吸取到许多教训。硬分叉似乎为恶意行为者提供了攻击和制造不确定性的机会,因此对硬分叉的精心规划和协调非常重要。另一方面,这个空块漏洞可能是其他两个事件的根本原因,其可能在任何时候发生,而无论是否正在试图硬分叉,尝试防止这样的漏洞才是重中之重。

这些事件的另一个重要教训是需要透明度。在事件发生期间,很难知道开发人员的计划、漏洞的性质或矿工支持的链。在公共渠道中就这些问题进行公开交流可能会更有帮助。特别是,很多人都不能清晰知道开发人员和矿工的计划,以协调和复原发送给SegWit地址的资金。如果这个计划事先在社区中,以及在明显的经过深思熟虑和协调的重组期间进行辩论和讨论,可能会有所帮助。当然,假设有时间披露后者。如果参与者在事后披露有关这些事件的详细信息,也可能会有所帮助。

我们认为,所有这一切中令人最担忧的是经过深思熟虑和协调的重组。从论证的一方来看,资金被盗,因此将资金归还给其「合法所有者」的行为是合理的,即使这造成了一些短期中断。不过,许多人或者某些人认为交易最终确认等现金是这些区块链系统的唯一独特特征。如果能够逆转交易,和在本情况下的经济上重大交易,这将否定这个系统的整个前提条件。这种行为可能消除适当保障资金的动机,开创先例或改变预期,更有可能产生进一步逆转。

对于比特币社区中所有不喜欢比特币现金的人来说,这可能成为嘲笑这种币的机会。不过,虽然比特币现金的哈希值比比特币低得多,使得这种逆转更容易,但我们认为,成功对比特币现金进行经济上重大的精心策划交易逆转对比特币而言并不是好消息。从某些方面来看,这些事件有助于树立一个危险的先例。这表明这些事件可能会发生在比特币身上。或者,这可以说明比特币现金在成为少数链的同时所面临的风险。

本文由BitMEX研究团队提供

标签:比特币BITTMEBitMEX比特币走势图最新今日价格bitGet交易所BITMETA价格BitMEX Token

火必热门资讯
BTC:Bitget合约体验金活动公告

一、活动时间即日起至7月31日二、奖励规则:1、开户体验金新用户成功注册并开通合约交易,即赠送10USDT等值BTC合约体验金;老用户未开通合约的.

1900/1/1 0:00:00
BTC:ETH回落至通道下边线附近 站稳有望开启反弹

周线走势,ETH从18年8月至前期整体形成一个大的圆弧底形态结构,上两周尝试向上突破长期圆弧颈线位压制,不过未能站稳币价再次跌落下来,周线收出一根超长上影阴线,上方遭遇强抛压.

1900/1/1 0:00:00
比特币:CME比特币期货创新高,机构涌入比特币山寨币终将失宠?

据CMEGroup官方推特,6月26日,CME比特币期货交易的名义价值达到17亿美元,比上一个纪录高点高出30%以上。此外,CME的比特币未平仓合约总数6069份,续刷历史新高.

1900/1/1 0:00:00
非小号:新版币种内页,重磅上线啦~

NICE的日子,从非小号币种详情页升级开始。7月3日非小号详情页将迎来自史上最大的改版升级!币种数据新增24H、7D最高最低价,历史最高、最低价等11项数据.

1900/1/1 0:00:00
抹茶交易所:抹茶MXC,一个神奇的交易所

加密货币每一轮牛熊更迭,都伴随着交易所格局的洗牌,抹茶交易所MXC俨然是新兴交易所中最强势的黑马.

1900/1/1 0:00:00
比特币:别看小币都在地板上摩擦 实则已经开始暗流涌动

本着负责,专注,诚恳的态度用心写每一篇分析文章,特点鲜明,不做作,不浮夸!狂人说习惯了每天飞舞的各类新闻,过去的24小时倒是静悄悄,让人很不习惯,虽然场内一片祥和,但赚钱效应仍然不足.

1900/1/1 0:00:00