扫码打开虎嗅APP
来源:区块律动BlockBeats
作者:0x22
当你看到这篇文章的时候,已经有币遭遇 51% 算力攻击了。
在最近币价暴跌的大背景下,最惨的人其实是矿工。整日紧盯着币价,昔日价格炒到天上去的矿机已经和锅碗瓢盆堆在一起按斤甩卖了。即便是在海对面的美国,顶级的矿机公司 Giga Watt 也在 11 月 20 日向法院提出了破产申请,欠下 7000 万美元的债务。
矿机关机、矿场破产……这意味着什么呢?
根据blockchain.com的数据,今年10月起,全网算力便开始持续下降。10月31日时全网算力大约还有 60EH/s,而到今天只剩下了 39EH/s,一个月里跌去了超过三分之一。而在此之前,包括今年一直持续的熊市在内,全网算力基本都是符合指数增长趋势的。
在进一步分析这背后的深层含义之前,我们需要先了解一下比特币挖矿的工作原理以及这背后的经济原理。
所谓比特币挖矿,简单来讲,就是把电力转化成钱。通过专业化的 ASIC 芯片来计算比特币的哈希函数 SHA-256,矿工拥有的算力越多,就越可能由他先算出正确的值,也就是挖出下一枚比特币。这一过程中会消耗大量的电力,电力成本是挖矿成本的主要部分。
正因如此,还产生了“比特币挖矿所需能源相当于 4 个切尔诺贝利核电站”的说法。当售出比特币所获得的收入跌到低于挖矿成本的时候,自然矿工就会停止这桩赔本的生意。
另外,比特币挖矿的一个机制是挖矿难度(也即解决哈希函数的难度)会每 2 周调整一次,为的是在算力过高的时候出块速度不至于太快,在算力过低的时候出块速度也不至于太慢,能够一直稳定在 10 分钟左右出一个块。
下图为bitcoinwisdom提供的数据,比特币的挖矿难度变化。可以看出与算力下降相对应的,从10月起挖矿难度便也开始下降了。在最近一次难度调整时,挖矿难度更是前所未有地降低了 15%。而在此之前,比特币算力只有 2 次降低,其他时间几乎都在增长,在不到一年时间内涨了接近 3 倍。
根据微观经济学的理论,在一个完全竞争的市场里,矿工的利润应该是趋近于零的。因为当比特币价格上升,有利可图的时候,短期内现有的矿工利润会增加,但很快便会有新的矿工加入。这意味着全网算力的增加,而全网算力的增加也进而提高了挖矿难度。
对于一个算力不变的矿工来说,他挖到下一枚比特币的几率就降低了。于是本来增加的利润,不久之后就被随之而来的竞争消磨掉了。
从数据上看,由于算力的增加和比特币价格的下降,矿工的利润今年一直就持续处在下滑状态,逐渐向零趋近。但是在这其中,矿主也应该分成两部分来看。
根据 Diar 的统计数据,9月、10月的时候,电价高的小矿工利润就已经基本为零了,而电价低的大矿主利润虽然持续下降,但在10月的时候利润还大约有 59%。也就是说,在大量小矿主离场的同时,仍然有相当一部分大矿主处在盈利状态,可以继续生产,币价仍然还有继续下跌的空间。
再跌下去,比特币世界会出现 51% 算力攻击吗?
那么,矿机关机、算力下降更深层的含义是什么呢?有人提出了这样的观点:比特币 51% 算力攻击的成本下降了,比特币的安全可能受到威胁。
乍一听,这样的观点惊出人一身冷汗。
可是实际上,现在来讲,成功对比特币进行 51% 算力攻击的可能性有多大呢?
根据 Cryptoslate 的估算,对比特币进行 51% 算力攻击需要 14 亿美金,需要 240 万台专业的 ASIC 矿机,一年耗电量约为 29.3TW,相当于摩洛哥整个国家一年的耗电量。其中为了储存这些矿机所需约 2.5 亿美金在基础设施上,包括矿场建造、通风设备等等;而如果要持续运行这些设备一天,一天的电费约为 200 万美金,人力和其他成本需要 24 万美金……
比特币攻击成本高的原因除了算力基数大之外,还有一个就是它的 checkpoint(检查点)机制。通过在代码中硬编码一组区块及其 hash,节点同步区块时会自动检查能否对得上之前的检查点,如果对不上节点就知道这条链是不诚实的,就会把它丢弃。
通常检查点会设置比较远,检查点之前的交易就是不可修改的。如果要进行攻击,就必须从较远的检查点开始分出一条链,对算力要求极高,大大提高了攻击成本。
比特币主要的特点就是可抵制恶意节点、反审查制度。为了实现这样的安全性,才需要进行挖矿。通过密码学和行为经济学巧妙的组合,矿工可以因为诚实的行为和维护网络安全而得到奖励。
这样的系统存在一个弱点,就是如果恶意的一方控制了 50% 以上的算力,就可以对整个系统进行攻击。然而对于比特币来说,这样的攻击是昂贵的。有人说比特币挖矿浪费了很多资源,但比特币就是有意被设计成这样的,这使得对比特币开展 51% 算力攻击成为了一个昂贵、不切实际的想法。
因此,很难想象会有个人或企业愿意付出如此成本来对比特币进行攻击。况且,就算有人愿意付出高昂的成本,这样的攻击也会使人失去对比特币系统的信心。而当作为共识的信心一旦失去,比特币也就变得一文不值了,那么攻击者又能得到什么好处呢?
除非他的唯一目的就是破坏。
比起比特币算力攻击,我们更担心的是其他区块链
比特币这样大规模的网络,暂时还不用担心 51% 算力攻击,但是对于规模小些的区块链网络来说,51% 攻击之前就曾多次出现(今年早些时候比特币黄金、Verge、ZenCash 就被攻击)。现在算力大幅下降,攻击者们更是蠢蠢欲动了。
据 PeckShield 态势感知平台数据显示,11 月 29 日至 12 月 2 日之间,加密货币 Vertcoin 遭到 51% 双花攻击。攻击发生在块高度 1043103 和 1044333 之间,攻击者所出的区块 1043110,1043619,1044432 均包含双花攻击交易。据了解,这已经是近两个月内 VTC 遭受的第四次遭受 51% 攻击,共计损失超过了 10 万美元。
当攻击者掌握大部分算力的时候,他们可以选择任意一个之前的区块,从这里开始延伸另外一条区块链,直到这条区块链长过原来“真实的”那条链,成为最长链。而原来的那条链上分叉点之后的区块就被覆盖掉,成为了无效的区块。
报道称 Vertcoin 最近遭受的这次攻击中,有 310 个区块被覆盖,远超过之前的几次攻击。
Crypto51 网站提供了各个区块链 51% 攻击的成本数据,上面显示,对 Vertcoin 进行一小时的算力攻击成本仅需 125 美元。
推特上有网友评论说:“只需要一百多美元每小时来租用算力就够了,Vertcoin 被攻击是必然呀!”那么其他的网络上 51% 算力攻击的成本是多少呢?根据 Crypto51 的数据,一小时攻击成本比 Vertcoin 小的链多到令人发指。
Crypto51上的攻击成本是如何计算的呢?
它是根据在 NiceHash 上租用算力的成本。NiceHash 是现今世界上最大的加密货币算力市场, 随时可为算力买家提供超过 20 种不同的算法算力。
攻击者只需要付出很少的租金,就可以在这样的平台上租用算力,来对众多区块链进行 51% 攻击了。完全不需要像 Cryptoslate 估计比特币攻击成本那样,付出矿场基础设施费用、人力费等等。
媒体还指出,交易所或许会成为主要攻击目标。因为交易所支持用户在短时间内进行资产的充值、交易和提现。攻击者可以在把资产 A 充值进交易所之后,迅速进行交易,换成另外一种资产 B 然后提现。之后对 A 发起 51% 攻击,使之前向交易所的充值无效。
只要交易所的资产充值可能会被无效化,攻击者就不会放弃这种攻击方法。因此,未来这样的攻击大概只会越来越多。
面对这样的情况,交易所能怎样应对呢?只要存在 51% 攻击风险的资产还存在一天,交易所就可能遭受损失。终有一天,交易所可能不得不下架这些资产,市场将会迎来一次新的洗牌。