区块链的去中心化性质和加密算法使其几乎不可能受到攻击。然而,以太经典(Ethereum Classic)区块链沦为了51%攻击(51% attack)的受害者,估计因此损失110万美元。那么,51%攻击是如何发生的?它的影响怎样?
51%攻击是什么?
51%攻击,较常见的字面意思是:只要算力超过51%,就能对某个系统发动攻击,这个系统就存在中心化或者被攻破的可能性。它是一种区块链渗入,可能导致网络中断,最终导致挖矿垄断。一旦矿工(miner、是指尝试创建区块并添加到区块链上的人或者机器,同时也指代做这个事情的软件)。当一个新的有效的区块被创建时,比特币协议自动分发一定数量的比特币给相应的矿工,作为工作的奖赏)、组织或某个实体对区块链网络上的算力获得超过50%的控制权,就会发生这种攻击。
攻击的结果是,攻击者获得访问权,阻止矿工挖矿、取消交易,最终卷走根本不属于他们的被盗货币。如果区块链网络被劫持,攻击者将拥有足够的挖矿能力来篡改交易。这意味着他们可以篡改订购交易,可以停止所有挖矿活动。51%攻击者正是以这种方式撤销交易,从而导致区块链内的双重支付(double-spending)。假设攻击者花1BTC(Bitcoin,比特币)换取产品,那么实际上区块链会记录这笔交易。然而,51%攻击者可以通过撤销交易来触发退款,从而同时拥有BTC和产品。
51%攻击的机理是,宣布现有网络无效,接管设定的安全协议。这种影响可能严重,也可能不严重,但一切归结为攻击者拥有的算力。攻击者拥有的哈希算力百分比越高,越容易实施攻击,最终危害带来的影响越大。与使用Tangle共识算法、通过操纵区块链账本来批准或否决交易的34%攻击不同,51%攻击使攻击者可以完全控制区块链网络,从而可以停止任何挖矿或实际上重复使用货币。
51%攻击造成的影响
那么,攻击者如何针对区块链和比特币实施51%攻击?
当某个实体支配区块链上的算力时,可以发动51%攻击。当攻击渗透到比特币的哈希算力功能时,攻击者就可以延迟新交易,并最终多次操纵同一货币的使用。由于区块链使用工作量证明(PoW)共识机制来验证交易,这些中断延迟了矿工按时间顺序确认和安排区块的操作。
因此,假设一个矿工的计算能力降低了,那么在区块中安排的交易就会延迟,区块链网络遭到破坏,在这种情况下,它们允许攻击者可以比矿工更快地求解方程。最终,攻击者获得控制权,通过撤销未经确认的交易获得双重支付货币。除此之外,攻击者还获得了旨在补偿矿工更新区块链的矿工奖励。这正是51%攻击对以太经典(ETC)和比特币(BCH)实施攻击的过程。
区块链网络的中断证明了存在漏洞,51%攻击确实对矿工造成了危害,然而,专家们却认为,这种攻击可能有益。由于比特币算力来自目标相同的参与者贡献,这些人在做出决定时是合乎逻辑的。然而,当价格歧视发生时,仍然存在人为串通以改变算力分布的风险,这时,其他人可能会从算力转变中受益,或者至少可以摆脱重大损失。由于计划攻击比特币的实体需要大量资金来购买和维护挖矿设备,以生成足够的算力来挖比特币。因此,即使比特币受到51%攻击,操纵者也无利可图。
如何防止51%攻击?
尽管51%攻击可能很危险,但它也有一些缺陷,如51%攻击无法操纵按照矿工区块给予的奖励;攻击者无力创建交易;当反向交易发生时,攻击者完全可能危及他的私人或个人交易;攻击者不可能增加区块链网络上存在的代币或货币的上限。鉴于此,相关机构可以对区块链采取一些保护措施。
具体来说,51%攻击使用基于工作量证明(PoW)的共识算法,伺机攻击加密货币,而对付这种攻击的较佳防御是使用权益证明(PoS)共识,这正是以太坊2.0旨在规避的问题。
当验证者使用PoS算法时,可以通过维护网络的运营能力来降低渗入风险。PoS有助于限制质押加密货币的数量,在这种情况下,即使51%攻击有可能发生,但攻击者也需要投入一大笔资金来购买加密货币,以获得系统的控制权。仔细观察51%攻击,会发觉PoS加密货币成为目标的可能性不大,因为其盈利能力很小。
然而,鉴于区块链代码中存在错误,51%攻击确实有可能再次发生。此类事件发生时,攻击者可以破坏区块链,更快地生成新的区块以发起攻击。总的来说,这种攻击可能会再次发生,但比特币区块链极具弹性。
哪些区块链平台遭受过51%攻击?
从理论上讲,比特币和以太坊区块链比小型项目更能抵抗51%攻击。不过,许多项目仍然易受这种攻击。以下是遭受过这种攻击的一些平台。
•Grin(GRIN)
据消息称,注重隐私的加密网络GRIN曾被51%攻击渗入。2020年11月7日,一个匿名实体获得了58.1%的网络算力,导致其支付迅速停止。
•Vertcoin(VTC)
作为一种ASIC挖矿加密货币,VTC遭遇多次51%攻击颇令人意外。2018年10月和12月,由于一个从Nice Hash获得足够算力的实体获得双重支付,VTC损失了价值100000美元的VTC。结果,VTC重组了VTC网络上的300多个区块和另外600个区块硬分叉。
•比特币黄金(BTG)
2018年5月,BTG被要求双重支付共计12239 BTG(1800万美元)。2020年1月下旬,比特币黄金再次成为51%攻击的受害者,最终在两天内遭受了超过7000 BTG的双重支付。这次攻击是两次被删除的重要区块链重组造成的。
•以太经典(ETC)
ETC区块链在一个月内遭遇了三次51%攻击,这三次攻击都发生在2020年8月,包括发生在8月1日的攻击、8月6日的攻击以及8月29日的攻击。这起攻击甚至导致加密货币交易所Coinbase暂停了所有ETC存款和取款。
结 语
任何新兴技术(包括区块链和加密货币)都可能遇到各种风险和漏洞,这正是我们需要了解51%攻击的原因。虽然更多的技术有望规避这种攻击,但网络渗入仍不可避免。从好的方面来说,这类攻击给了行业和企业学习和改进的正当理由。因此,不妨看看这个不断变化的行业未来会怎样。
参考链接:
https://hackernoon.com/51percent-attack-explaining-the-network-disruption