1月7日,ETC遭遇51%攻击。根据安全公司PeckShield最新数据显示,在1月5日到1月8之间,ETC链上至少有15次疑似双花交易,共计损失 ETC 219500枚,价值约110万美元。
该事件已经被各个媒体多次报道(推荐阅读:《最全解析:关于ETC 51%算力攻击的分析》),在此不做赘述,随后社区舆论聚焦的几个重点问题也许更具探讨价值:
- 在算力租借的自由市场,且同种算法可以挖多种币的情况下,算力支撑不够的小币种将如何面对随时可能发生的51%攻击?
- 下一个被攻击者可能是谁?51%攻击一旦发生,该如何应对?
- 更改共识机制,添加重组保护是抵御算力攻击的有效手段吗?
- 对区块链项目在共识机制、治理模式的选择和设计上,又有哪些启发?
就以上问题,我们咨询了相关技术专家和安全人士,希望此次51%攻击事件能够引起更多警示和思考。
下一个被攻击者可能是谁?
对于ETC的成功攻击已成事实,而攻击者们或许正对其他小算力币种虎视眈眈。慢雾科技联合创始人余弦昨日提醒,51%攻击一旦成为真实场景下的成熟攻击手法,各个非大型公链及对接了一堆小公链币种的都需要小心。猎豹区块链安全中心也发出预警,从市值和算力方面检查了其他PoW的加密货币,DASH存在着与ETC同样的被攻击风险。
具体如何从市值和算力上推测哪种币易受攻击?猎豹区块链安全中心向解释,假设一个PoW币种A与其他多个币种使用同一种挖矿算法,该算法全网算力为100%,而其中A币种占10%。此刻如果有人出资从其他占90%算力的币种上借调或购买11%的算力用在币种A上,就可以成功实现算力碾压攻击。
但由于攻击需要花费成本,如果攻击者是为了获利,那么还需要另一个条件,攻击成功后的收益要大于之前购买算力等所花费的成本。因此可以简单总结为,
“任意时间,要对一个币发起算力攻击,其投入成本是一定的,收益也是一定的,收益减去成本后的纯利润越高,这个币种当前面临的攻击风险就越高。”
51%攻击如何防范?
只要51%攻击有利可图,就一定还会发生,那么是否存在抵御51%攻击的有效方式?在面临主流公链集中相对大量的算力,且有算力租赁市场的前提下,许多缺乏算力支撑的小币种应如何应对?
猎豹区块链安全中心向表示,
“有几个办法,但实现起来难度都不小。1.小币种的项目方出资提供大量的算力,将算力维持在一个较高的水平,攻击者难以超越这个水平的话,就很难攻击成功。2.修改共识规则,不再用PoW类型的共识算法。”
北京大学经济学博士、区块链社区意见领袖刘昌用认为,重组保护就是抵御重组攻击的有效措施,但曾遭到PoW生态的普遍反对。
而当初PoW生态反对重组保护的原因是,“按照以往对POW的理解:算力攻击是去中心化的行为,在软件里加重组保护是开发者中心化的行为,所以就是错的,甚至比算力攻击更坏,因为它严重违背了密码货币的去中心化精神。”
但昌用强调,其实,“去中心化”为的是什么呢?为的是系统的安全。安全是目的,去中心化是手段,不能单纯为了去中心化而去中心化。
昌用认为,在BCH分叉这个案例中,
“正是重组保护真真切切地阻止了CSW和Calvin的51%攻击威胁,这是历史上最严重的一次公开的、持久的51%攻击威胁。攻击者宣称绝不分叉,宁可BCH两年不能用,也要持续算力攻击消灭ABC一方。但ABC加入重组保护后,Calvin和CSW立刻宣布放弃对BCH的争夺,分叉出了BSV。一个真刀实枪的战争结果,胜过一百个纸上谈兵的花样逻辑。重组保护在极端的情况下可能会产生意外分叉,或者有新的攻击方法。但没有一劳永逸的方案,只能是不断发现问题、解决问题。”
安全公司北京链安团队也给出了类似建议:
“与原始币采用相同PoW算法的分叉币、与主流币种采用相同PoW算法的山寨币,对于这两类币种,投资者和交易所应格外当心。对于这两类币种的开发团队,应尽快在PoW共识机制之上引入其他的协议共识机制来约束纯PoW共识算法的最长链规则,以此防范算力租借发起的双花攻击。”
区块链共识机制该往何处去?
记者观察到,事后发生的围绕区块链生态安全,PoW共识机制利弊,ASIC芯片普及与挖矿中心化等话题展开的讨论十分有趣。最终,讨论又汇聚到了共识算法,社区治理这些从区块链诞生之初就争论不断的话题。
慢雾科技联合创始人余弦发表朋友圈称,
“无论采用算力还是权益、委托权益证明,只要你在解决拜占庭将军问题,只要这是共识问题,都无法避免出现 51% 攻击情况。51% 不一定要求严格超越这个比例,看你的共识实现机制。在熊市,算力大跌,币价大跌,主网都是相对脆弱的,没有哪条公链可以独善其身。”
昌用认为,PoW币种需要认真考虑新的经济模型。他解释说,
“以前的POW经济模型中有两个基本判断:1)PoW链的安全完全取决于算力,因此算力具有最终的决策权;2)矿工最关心链的长期安全,会理性负责地作出决策。这是早期比特币支持者信心的重要支撑,我以前也这么认为。
现在这两个判断发生重大变化:1)一个链可以通过修改算法(如门罗)或增加重组保护(如BCH)否定算力的最终决策权;2)一个算法存在多个链导致矿工利益不再绑定在一个链上,所以不必保护一个链,可以出租算力,甚至可以发起攻击。”
而新的经济模型可能是怎样的?昌用表示,还没有完整结论,不过目前有几个判断:
“1)POW挖矿有成本使它成为相对更加安全的共识机制,这一点没有变;2)去中心化社区治理模式仍需探索,不是算力决定就能解决的,算力、代码、资本、舆论、知识都会参与决策;3)累积难度和最长链原则只适用于维持一个链内的一致性,不适用于多链竞争。”
的确,区块链的社区治理方式和共识机制设计原本就在不断进化,正如昌用所说,
“人人都希望能有一个不变的规则解决所有社会经济问题,不幸的是社会经济实践的发展总是不断出现新问题,打破旧规则。我们必须发现、尝试和适应新规则。指责“改算法”、“加重组保护”违背规则,跟前朝遗老痛斥礼崩乐坏一样无力。适应实践变化,活着、发展才是硬道理。”