自数字货币诞生第一天起,51%攻击就成了悬在加密货币体系头上的“达摩克利斯之剑”。上周,悬在ETC(以太坊经典)头上的剑终于落下。
还原事件
1 月 6 日,慢雾科技安全团队收到“ETC区块回滚异常”的情报,不过因为缺少更多证据支撑,所以不敢确定。
次日10 点 33 分,慢雾科技首先发布了预警:“(ETC)疑似发生51%攻击,有不少区块发生回滚。”
1月8日,加密交易所Gate.io发布报告,确认了在ETC区块链上成功发生了51%的攻击,并定位到攻击者的ETC地址。报告声称已经检测到七次回滚交易,且其中四次是由攻击者进行的,总共转移了54,200笔ETC,价值27.1万美元。

攻击从UTC 1月7日0:40开始,至4:20结束,持续约4小时。在这期间,攻击者的算力占据ETC全网51%以上,所有交易都真实有效。成功后,攻击者使用算力对ETC区块链进行了回滚,强制使得之前已经确认的转账记录变为无效。
1月5日至8日间,ETC上至少出现了15次疑似双花交易,Coinbase的报告指出,共有219,500个ETC被攻击,约合110万美元。
而让人倍感意外的是,受害交易所之一Gate.io发布公告称,它们在1月10日收到了ETC网络51%攻击者返还的价值10万美元的ETC,而跟踪发现,还有更多资金返回到其他平台。
至此,大家纷纷猜测,攻击者发起此次攻击的意图究竟为何?如果不是为了从中获利,难道正如Gate.io所言,“有可能是为了引起行业对于区块链共识算法和算力保护的重视”。

ETC受此事件影响价格发生了下跌,截至发稿时,其交易价格为4.2美元,日内跌幅超2%。
2.什么是51%攻击
51%攻击,又被称为大多数攻击(Majority attack)。
如果攻击者控制了网络中50%以上的算力,那么攻击者构造一个有效区块的平均时间会少于其他所有的矿工,从而在相同的时间内该攻击者可以构造出更多的区块,并以最长的分支被网络接受为最终确认区块,这样整个区块链就处于它们的控制之下。
概括来讲,这种攻击是通过控制一半以上的网络算力来实现“双花”。那么,拥有50%以上的算力是怎样劫持区块链数据的呢?
如下图所示,正常的矿工在区块链上挖矿,攻击者把自己的币花掉,这笔花费会记录在区块链的数据中,假定交易记录在区块4中。攻击者这时在暗中伪造另一条区块链的数据,将自己地址上的币重新转账到其他地址,记录在自己伪造的区块4a中。

由于算力上的优势,攻击者比网络中其余的矿工计算得更快,从而得到一条更长的区块链数据,如下图中,区块4a到区块7a为攻击者的链,比其余矿工的链(区块4到区块6)更长。
虽然这两条链都可以对外申明自己是正确的,但是在区块链的设计理念中有一个最长有效原理:“不论在什么时候,最长的链会被认为是拥有最多工作的主链。”
这时,攻击者只要把自己较长的区块数据发布到网上,其余矿工就会认同攻击者的数据,从而达成共识,接受区块4a到7a的数据,而原来区块4中的交易则被推翻和抹去,这样就达到了同一货币双重花费的目的。
3.造成此次攻击的原因
ETC团队成员Donald McIntyre在博文中表示,他们尚未最终解决51%的网络攻击问题,但可以肯定,攻击并非源自内部错误,而是由于萎缩的网络规模。
而Gate.io研究院在公告中则表明,此次ETC网络的51%攻击造成的本质原因是ETC市值下降,网络算力下降,攻击者极易通过租赁ETH算力的方式对ETC进行算力攻击。
4.如何有效避免51%攻击?
通过分析此次攻击事件,我们得知,它是由于ETC底层的共识机制(PoW)所影响,导致当总算力过小时,容易导致攻击者拥有51%的算力。基于其共识特性,不可避免的在底层产生分叉,甚至是整条链被攻击者所控制。
当前区块链抵御攻击的手段,采用的是以量取胜提高攻击者成本的策略,这种方式无法完全避免51%攻击。
而Trias在共识节点间用小世界网络算法构建基于TEE可信验证关系的信任网络,该网络上任意一个节点的“撒谎”代价,近乎是需要全网90%以上的节点同时配合撒谎。
因此,与传统区块链网络无法对抗51%攻击相比,Trias能够对抗接近90%的恶意算力攻击。
网友评论