历史数据观察:50%算力俱乐部及攻击事件
时间:2014-09-01 来源:巴比特 作者:粉色的哈尼长颈鹿
概要 ⎯ 由于针对个别挖矿者存在的潜在经济激励,使得50%事件成为比特币网络中的循环再发性事件。 ⎯ 拥有仅略低于50%算力的挖矿者,可以实现类似于50%算力矿池的攻击行为 ⎯ 区块处理过程的随机性本质,意味着矿池可以在短期里轻松拥有50%+的哈希算力,尽管从长远来说,这种可能性比较小。 介绍 在比特币网络中出现能够控制50%挖矿生产力的单个实体,可以称得上是比特币的败笔,这并不是因为其可以无所拘束地进行恶意攻击或是对比特币价格有负面影响,而是其使得比特币不再称得上是一个去中心化分布式的系统[1]。 比特币作为一个去中心化的系统,他的目的,是在不同实体之间建立信任,杜绝实体之间相互串通侵害用户利益的事儿发生。拥有接近50%算力矿池的出现毁坏了这一比特币的根基。 这份简报是针对过往比特币网络出现50%算力的单个实体情况的研究,并以Coinometrics的角度加以解释。我们(作者Jonathan Levin , Andrew Geyl)将对这类现象持续关注。 由于这个比特币社区需要解决的问题,50%算力俱乐部对吸收更多的会员加入比特币社区是一个威胁。这种问题反复出现的原因,是当下针对个人挖矿的经济激励。个人挖矿者可以随自己的意愿自由地选择矿池,而且转换矿池的费用几乎可以忽略不计。当然对于最大的矿池来说,还有另外两点激励措施。 1 矿池的出现,基于其可以降低回报的波动性。挖矿回报具有随机性,个人挖矿的回报时间尤其不确定。随着比特币挖矿难度增加导致矿工计算机硬件效率下降,矿工们希望在现有的哈希算力和挖矿难度下取得最大化价值。最大矿池将回报的不稳定性降低到最小。 2 对于一个更大的矿池来说,矿工们花费在冗长挖矿上的平均时间少了,一旦有某个矿工解决了一个区块后,所有的人力可以直接投放到下一个区块中。越大的矿池可以发现越多的区块,创造一个小小的优势。信息在比特币网络中传播需要一定的时间,这导致了一部分矿工要比同行花费更多的时间在旧区块上,而这些旧区块永远不能与区块链链接上。这就增加了在较大矿池中单位哈希计算力的预期回报。虽然这些种种经济激励措施都很难规避,我们仍可以基于概率结果,通过使高于特定规模的矿池运行成本高到令人望而却步,创造出与激励兼容的比特币系统。最近也有很多建议,要改变工作量证明。 比特币是基于概率产生的结果,创建新区块的难度基于找到加密难题的解决方法。因此,网络的安全性依赖于随机过程的输出结果,且具有不确定性。一个拥有48%计算力的矿工能够逆转10次确认的成功率有85%[2]。即使在已选择40%自我强加的计算力的情况下,矿池能够推翻6次确认(6次确认是交易中一个比较通用的数量)的成功率也有50%。大家应该认识到这是一个不受管制的市场,矿工决定最终的输出结果,比特币社区必须发声说明,在既定的安全的概率性质下,何种程度的市场集中度水平是可接受的。大家是否能够接受一个有着50%成功率推翻6次确认的实体存在 估算 对网络哈希率和矿池市场份额的估计几乎是不确切的。矿池哈希算力必须从其自身一段时间内解决区块的数目来推断[3]。 由于挖矿市场的目的在于,通过激烈的竞争来保证比特币网络的安全性和去中心化性,应鼓励矿池公开他们的哈希算力。 从 Coinometrics 角度来说,我们将不同观测期的数据与矿池上传的数据相结合,提出针对网络哈希算力和比特币矿业市场中心化的精确计量。 分析 从来没有任何一个矿池或身份可确认的个人挖矿工,在任意时间段里可以解决超过50%的网络区块(周一至周日)。过去常有传闻某个矿池可以在一天之内解决一半以上的区块,然而Ghash.io从未能在一日之内解决超过一半的区块。 过去,各种测量方法用于确保单个矿池不能够主导市场。BTC Guild 的Michael Marsee对其协议进行更改,致使2013年5月其网络哈希率急剧下降(参见图1)。矿池的自主行为可较容易地减少矿池进入50%俱乐部的风险。图1显示最接近50%标记线的三个矿池。曲线图显示了可解决掉的区块数的周估算,单个的点则显示了实际观测到的结果。图中亦显示了50%标记线周围的单独点——代表每日解决区块的百分比。如图所示,矿池可轻易超过25%的区块解决率,在某些特殊的时间段内甚至可以达到33%,这对于网络安全和竞争也存在危害。 Source: Coinometrics, Organ of Corti 比特币网络没有时间的内部概念。由于对有效的时间戳的标准相当宽泛,很多时候将时间戳放入区块都是不精确的。比特币时间概念是通过新区块在网络上的发布来定义的。因此,我们可以将计算单位收益的方式从时间上转移到计算区块数目上。这使我们能够不再依赖天数或是周数来考虑收益。转而使用1000个区块(约6-7天),150个区块(约一天)。对于1000个区块来说,达到50%网络解决区块率几乎不可能,但对于150个区块来说,这种几率则大了很多。 Source: Coinometrics, Organ of Corti 在图2中可以清楚地看出,相比较早前的天数窗口统计方法,150个区块滚动窗口,对于矿池来说,明显有更多超过50%解决区块率的情况。由此可见,这个方法比依赖于UTC(世界调整时间)时间戳更准确。在某一特定的日子,根据UTC时间戳计,Ghash.io解决了31个区块,但150个区块中值比率却占到网络的50%以上。 使用滚动窗口的方法来看DeepBit,它也属于超标一族。 评价及总结性要点 即使当强度函数的估计(图2中的平滑线)是一个只接近占45%网络的函数,区块求解过程的随机性质意味着一个区块解可以较容易地在一段短时间内具有50%以上哈希率。这就需要在决定市场集中度的承受能力时考虑,在过去,50%俱乐部的三位成员有足够比例的网络占有可以成功地自私挖矿,或为重要时期成功执行双重支付,有很大可能性。 尽管越来越多的复杂的和有价值的服务建立在区块链接里,计算这些事件发生的风险仍然处于起步阶段。必须采取行动, BTC Guild,曾经一度是50%俱乐部中唯一的成员,通过实行协议变更,成功地降低了他们在算力网络中的占比。我们赞赏Ghash.io近期限制自身算力的行为,但在一致围绕不同技术解决方案构建的同时,必须采取更强有力的措施。在 Coinometrics 的角度,我们致力于发布对挖矿产业的结构精确的测量和分析。 标注: 1 恶意行为包括逆转交易,无视其余矿工的区块,封堵某一交易,私自挖矿。“分布式骇客”(Hacking Distributed)这篇文章对此作了很好的总结。 2 洛森菲尔分析法——基于哈希速率的双重支付 https://bitcoil.co.il/doublespend.pdf 3.使用较短的时间内产生更多的措施,需要更大的置信区间。这里有一个使用7日平均引入了一个对目前哈希率估计显著滞后的权衡。 4 在此有解释:哈希能力的集中是怎么引入激励来违抗比特币协议的。垄断的计算力可能会提高长期均衡的交易费用。 |