“中本聪炸弹”:为什么说奖励机制可能导致比特币的失败

前情提要

本文,我们继续讨论比特币相关的话题:

如何定义比特币挖掘的盈利能力?

最初设计时考虑的采矿速度应适应什么原则?

为什么从长远看这些原则会造成虚拟货币的失败等。

假设读者已经了解了比特币的基本机制,熟悉区块链、挖矿、采矿池、区块奖励等概念。

注意:在这篇文章中,仅提出了一个理论上的推测,即在考虑比特币现有机制和各类算法规则的基础上,探讨一下未来比特币网络可能演化的情景。我们并没有深入考虑并分析矿工的支出、世界不同地区的电价、银行利率或设备回收期等因素。

51%攻击

比特币社区的成员很清楚“51%攻击”,即如果一个矿工控制了超过一半的挖掘算力(mining hashrate,即采矿哈希值),那么他就能够做到:

  1. 把他的比特币转移到交易所、某个机构或个人,卖出所有的比特币,用于支付商品、服务或者交换传统货币、提现;
  2. 因为拥有51%的算力,能够重新生成从还没向交易所转币的区块,但不将这些新生成的块显示给其他矿工;
  3. 等待区块交付;
  4. 发布生成的块链(只要攻击块链的长度超过原块链2个区块,其他所有的矿工都会将丢弃原块链,接受新块链)。

同时,对于其他矿工而言,将发生下列情况:

  • 其他的矿工将不得不接受欺诈的区块链版本,并认为它是唯一的、真实的块链,因为它更长,比其他所有矿工的挖掘算力总和相比更强大;
  • 只要欺骗者没有花费其拥有的比特币,就将继续保持算力,能够收到商品并保持他的比特币;
  • 欺骗者接收所产生的所有区块的奖励,而不是一个半块的,半块的比特币只有在公平挖矿并将其添加到公共链时才会产生;
  • 在51%攻击中,欺骗者最有可能使用比特币购买另一种加密货币,因为这样做更快速、更安全且不可逆转;

比特币社区也认为,如果发生“51%攻击”的话,将关乎与比特币的存亡问题。

重要的是要注意,无需51%或更高的算力就可以发送一个成功的“51%攻击”,的确,有可能利用较小的算力就可以完成这类攻击。例如,拥有30%的算力就有18%的机会能够在一行中生成五个块的链,这将比共享的更长。在这种情况下,攻击者将获得与“51%攻击”相同的权限。万一失败了,攻击者还可以再试一次。接受比特币付款的大多数服务只需要五个“确认”,这意味着存在满足这一假设的可能。

挖矿难度调整

每产生一组2016个区块后,比特币网络就会调整挖矿的困难。困难的标准是:挖到一个区块的时间的理想时间是10分钟,因此,开采2016个区块一般需要两周时间。如果仅用一个星期就产生了2016个区块,那么下一组挖矿的难度大概会增加了一倍,这样做是为了保证需要花两周时间才能在同一网络的算力产生下一组的2016个区块;反之,则减少挖矿的难度。

值得一提的是,比特币网络使用软件对挖矿难度的调整范围进行了限制,禁止在一次调整中改变开采的难度超过四倍。

这些规则会对比特网网络产生直接的影响。如果在某一组2016个区块开采期间,挖掘算力增加或减少,会发生以下情况:

  • 不会影响其余矿工以任何方式得到的报酬。奖励是由矿工的算力决定的而不是他们分享的共同算力。例如,如果一半的算力已经停工了,其余的矿工将开采两倍的区块,但这需要加倍的时间,而收入会保留。
  • 会直接影响产出率。如果99%的矿工停止采矿了,那么下一次采矿难度重新评估的时间将延长到4年,生成一个块将需要大约16小时。

比特币的作者设想上述算法可以通过推出低功率的设备、恢复其余设备的合理的边际来平滑的调整比特币网络的性能。然而,这种独特的挖矿困难重新评估机制却为矿工们打开了另一个策略的大门:他们可能会通过人为地降低网络性能来欺骗算法。毕竟,当挖矿设备突然断电时,当天产生的收入保持在同一水平;当挖矿设备突然启动时,成本就会降低。

挖矿激励与矿工的自由意志

除了收获一个区块(一个已发行的货币)作为奖励外,矿工处理交易数据也会获得奖励,目前的费用大约是块奖金的10%。采矿盈利能力取决于区块奖励(新开采的区块+交易费)和采矿的难度。如果区块奖励的价值高、难度低,那么矿工能够赚更多的钱。本文中我们对这个问题不做深入讨论。

另一个需要说明的问题是,采矿池通常并不能直接控制矿池里的采矿设备。每个参与者和挖矿设备的拥有者都可以自由选择他们想要参加的矿池。从一个矿池跳转到另一个矿池通常是基于利益考虑。

然而,矿池的主人能够统筹安排矿池中的算力,经研究我们认为,所描述的行为策略应该只由20名矿池主来调整和实施:矿工在这里没有丝毫作用,即使他们拥有自己的“自由意志”。

比特币网络的算力稳定情况下,矿工的行为模式

为了简单起见,现在假设你控制了比特币网络的一半算力,你可以保持挖矿机器一直运行,并获得一半的奖励(约为1008块)。

您还可以执行以下操作:

  1. 持续现状,直到下一个挖矿难度调整的阶段;
  2. 关闭你所有的采矿设备;
  3. 等到剩下的矿工花费4个星期的时间得到2016个区块;
  4. 在此之后,比特币网络将减少下一阶段的开采困难;
  5. 打开所有的采矿设备,整个网络将在一周内挖掘出2016个区块。

只需花费一个星期的时间,你将得到约1008个区块的奖励。

第一种情景假设是:五周(上图中最后的4+1周)的时间内,如果挖矿设备正常运行将产生5/2×1008 = 2520区块的奖励,但你需要缴纳五周的电费。第二种情景假设是:挖矿设备仅在第五个星期运行,将得到1008个区块的奖励,只需支付一周的电费。

不妨假设电费只占奖励的90%左右。那么,上述第一种情景下,五周的利润相当于收获了2520×0.1 = 252区块的奖励,而第二种情景下,奖励−成本= 1008−0.9×1008 / 2 = 554.4,即收获了554.4区块的奖励。这意味着第二种情景收获的利润是第一种情景下的两倍。

具有不同参数的经济利润的矿工行为

下面,我们假设:

  • 一个聪明的矿工,控制了整个网络的算力的份额是x;
  • 比特币奖励的所有的2016个区块是A;
  • 两周时间内挖矿设备运行的电费和维护费用等于C。假定房屋租金和停工费用是微不足道的。为了简化计算,故意忽视了设备的折旧费用。

因此,将发生以下情况:

  1. 两周时间,正常运行,矿工的报酬是Ax –Cx;
  2. 如果一个聪明的矿工关闭他的采矿设备,比特币网络产生2016块需要花费1/(1-x)​的时间。(例如,如果x=1/3,那么完成任务需要花费5倍的时间。)
  3. 当挖矿困难调整后,聪明的矿工打开挖矿设备,此时网络将花费(1−x)倍的时间完成挖矿任务。(例如,如果x = 1/3,那么它将需要2 /3的时间,大约10天。)
  4. 这两个时期的总时间将(1/(1-x)+1-x​)×(2周);
  5. 因此,在正常情况下(没有停机时间),在这两个时期内正常工作,可以让矿工获得的收入是:

这意味着所有矿工的利润都比常规时期延长了一倍多。

  1. 一个聪明的矿工(中间有停机时间)在第一个阶段将一无所获,但在第二阶段,会花费较短的获得奖励:

这意味着聪明的矿工获得了一个独特的净利润,另外还节省了x的成本。

  1. 缓慢期内,所有的非断开的矿工将获得Pslow period= A − C,

快速期内:Pfast period= A − C (1 − x),此时奖励是一样的,矿工的工作速度更快。

综上所述,很容易可以看出:

  • 如果矿工的支出正是等于他们的奖励(净利润为零),那聪明的做法会让他们获得A乘以x二次方的净利润。
  • 如果矿工不需要支付电费(100%的盈余),那么他们正常工作比停工,将会获得两倍以上的收入。
  • 让我们找到了功率X为多少的矿工应该关闭设备,以便于最大限度地提高所有矿工的利润率:M = (A − C)/A:

由此可知,关键值是:

时,方程式达到最大值。简单举例说明其含义,当M=4%时,聪明的矿工应该暂时禁用80%的算力。

为什么矿工不使用描述的最优策略?

比特币网络总算力示意图,一年内增加了4倍

比特币网络在整个时间段内挖矿难度的增加。从2016年1月开始,难度增加了8倍,就像比特币的价值一样。

上一小节中所描述的最优策略只有在整体网络挖矿困难不随时间增长的情况下才有意义。否则,关闭设备并会不会导致挖矿难度的降低。

直到现在,挖掘算力一直都在快速增加;这是比特币汇率增长的后果之一。矿工的收入以比特币评估,但他们用传统货币支付费用。

比特币价值的增长

然而,如果比特币的价格一直持续不断的增长,然后在未来的某一个时间内,矿工的投入和获得的奖励将趋于相等,这是一个合理的假设。

挖掘算力停止增长的危险

当比特币网络不再引入新的挖掘算力,矿工将可能采取上述策略。

评估最大挖矿池中挖掘算力的分布

如果采矿池想要实现自身利益的最大化,那么禁用75% 的算力,将达到6.25%的边缘值,关掉更多的挖矿机是没有意义的,因为网络不会减少4倍以上的挖矿困难度。

这之后,为了进行51%攻击,骗子必须控制超过一半的剩余算力或突然打开比之前更多的挖矿机投入采矿工作(考虑到最大的份额,目前看是不可行的)。

现在的问题是,对于一个为了提高挖掘算力已经投入了大量资金的人而言,发动网络攻击是否是有利可图的?

答案是肯定的。

在低挖掘边缘的情况下,对现有的挖矿机的价值在下降。换句话说,如果挖矿不能带来收入,那么矿工们就不愿意老老实实地玩下去了。除此之外,攻击方可能会保持匿名,猜测比特币价格会下跌。

核心技术危机:硬分叉的Bitcoin Cash

我们有意地不去考虑电价迅速上升或者比特币价格迅速、显著下降的情况,但这些很可能发生。如果发生这种情况,那么矿工们的策略相当明显的:当发生剧烈的价格变动时,所有矿工都会关闭他们的挖矿机。或许,只有那些利用免费的电力的矿工还在维持着。在这种情况下,网络操作将停止:正常开采2016个区块需要“两周”时间,现在可能会无限期的延长,与此同时交易停滞会使比特币地价格降的更低。

2017年8月1日,从比特币中新分裂出来一种新货币:Bitcoin Cash(Bcash或 BCH),其中文译名为“比特币现金”,内置了一种叫做紧急困难调整(Emergency Difficulty Adjustment,EDA)的机制。EDA允许更频繁地调整比特币网络上的挖矿困难,即在12小时内开采少于6个区块,难度就会降低20%。针对比特币现金,一些研究人员得出了与本文相似的结论,称已经观察到了聪明矿工的操作。将导致比特币现金网络的不稳定,希望开发人员迅速解决这些问题。

结论

本文分析了在比特币网络的算力停止增长的情况下,一个诚实的矿工可能采取的一种策略,并计算了该策略的一些关键值,除此之外,我们还推断出,使用这种策略将使得每个参与者都受益,但这么做也大大增加了潜在的51%攻击和比特币网络整体崩溃的风险。

如果所有的矿工都能达成并遵守一个坚固的协议,同一时间关闭其他所有的挖矿机,只保留一个正常运作,可以实现利益的最大化,但这从网络安全的角度来看,却是致命的。

为了更好的保证安全性,矿工们应采取哪些行动呢?这里使用相似的案例加以说明。第一个是生产力过剩危机。当这种情况发生时,制造商达成协议公开淘汰他们的一些产品(在中世纪,人类曾经这样做过)。第二个是核裁军,拥有核武库的国家按其比例削减。

理想的情况是,所有的矿工都同意停掉甚至关闭他们的一些挖矿机,不仅要系统地停掉一些挖矿机,而且还要严格限制他们的生产。

然而,现实情况是,人们不会依赖这种“和平的”解决办法。最近比特币链硬分叉成两个链,比特币现金的的形成和发展就充分表明了这一点。矿工们并不总是能够共同解决问题的,甚至可以说,矿工们或许并没有共同解决这些共性问题的愿望。未来,合作能力可能会成为决定性的因素。

只有时间能够验证一切。

原创文章,作者:鹰小编,如若转载,请注明出处:http://www.mottoin.com/105517.html

发表评论

登录后才能评论

评论列表(3条)

  • F1a Ming0
    F1a Ming0 2017年9月10日 下午7:04

    有消息说,天朝已掌握51%

  • F1a Ming0
    F1a Ming0 2017年9月10日 下午7:04

    有消息说,天朝已掌握51%,真的假的?

    • M0tto1n
      M0tto1n 2017年9月10日 下午7:07

      是真的!

联系我们

021-62666911

在线咨询:点击这里给我发消息

邮件:root@mottoin.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code