作者|JimmySong
编译|Jhonny
2019年5月7日,币安(Binance)遭遇黑客攻击并损失了7,000枚BTC。之后我们很快看到了JeremyRubin(比特币核心开发者)发布推文建议币安CEO赵长鹏采用区块重组的方式来“撤销此次盗窃”:
推文译文:@cz_binance(赵长鹏):如果你公开那些被攻击的币的私钥(或者这些密钥的一部分),你就可零成本去中心化地协调一次区块重组(reorg)来撤销盗窃行为。
这显然使币安考虑进行区块重组,据币安CEO赵长鹏所说,在与一些人进行了协商之后,重组计划流产了:
推文译文:@cz_binance(赵长鹏):如果你公开那些被攻击的币的私钥(或者这些密钥的一部分),你就可零成本去中心化地协调一次区块重组(reorg)来撤销盗窃行为。
在本文中,本文作者(JimmySong)将详细介绍可能的链重组背后的激励因素。在某种意义上,JimmySong已经通过之前的推文计算过币安如果进行区块重组将需要花费多少成本:
1/通过数学计算对58个区块进行重组的成本(根据目前已经得到的有关币安被盗交易的确认哈希值):
最低成本:58*12.5BTC=725BTC(假设每名矿工在重组的新链上获得大致相同的交易费用,并且100%的矿工都同意重组,备注:当前比特币区块挖矿奖励是12.5BTC)
美国歌手Akon将参加在线区块链会议讨论其加密项目Akoin:美国著名歌手、加密企业家Akon将于4月中旬参加虚拟区块链会议BlockDown,讨论其加密项目Akoin。土耳其加密公关机构EAK Digital创始人Erhan Korhaliller表示,由于新型冠状病疫情,该公司不得不推迟自己的会议伊斯坦布尔区块链周,因此创建BlockDown。Akon将通过现场直播参与小组讨论和新闻发布会。其他发言人包括Bitcoin.com执行主席Roger Ver和比特币布道者Jimmy Song。两人原本都将参加伊斯坦布尔区块链周。Akon将谈论其加密网络Akoin,根据Akoin的网站,它将被用作非洲54个国家之间的通用传输媒介。他还将发起DApp竞赛,为Akoin DApp生态系统的项目进行宣传。Akoin的第一个集成是为手机标记通话时间的公司BitMinutes。Akoin将为Akon City提供动力,目前正在建设中。Korhaliller表示,这次会议“弥补了未来几个月里取消的会议空缺,包括巴黎区块链周、伊斯坦布尔区块链周和韩国区块链周。”(Decrypt)[2020/3/20]
2/但是如果只有75%的矿工同意重组,这将平均需要116个区块(相当于币安需要补偿给这些75%的矿工的挖矿奖励大约是1,450BTC,即116*12.5=1,450)以此来赶超当前的主链。同理,如果60%的矿工同意重组,则平均需要290个区块(需要补偿给这些矿工的挖矿奖励为3,625BTC)来赶超当前的主链;如果55%矿工同意,则需要580个区块(需要补偿给这些矿工的挖矿奖励为7,250BTC)。
动态 | 国资入主后涉区块链、高比例质押,金冠股份再答监管质疑:12月10日,上市公司吉林省金冠电气股份有限公司(证券简称:金冠股份 300510)披露对深交所关注函的回复。此前,金冠股份曾于12月2日披露公司与人民日报社旗下人民数据管理(中卫市)有限公司(下称“人民数据”)在大数据、区块链、新能源等领域的《框架合作协议》内容。金冠股份在此次回函中表示,公司管理层自愿性披露相关框架协议,主要原因是区块链最近一直是市场关注的热点话题,可能对公司股价产生影响,并且公司和人民数据合作目标长远,对公司盈利的长期性会有重大影响。因此,公司认为本次签订框架合作协议对投资者的市场判断有重大影响,决定披露相关框架协议的公告。本次信息披露完整、准确,不存在迎合市场热点炒作的情形。(新京报)[2019/12/10]
3/由于7,250BTC>7,000BTC,因此至少需要55%的算力(矿工)同意链重组。如果重组的区块数超过58个,则需要的算力至少为60%;如果重组的区块数为116个,则需要至少65%的算力;相应地,174个区块需要至少70%的算力,232个区块需要至少75%的算力。假设所有矿工都同意重组,那这个成本就会迅速增加。
4/但对于任何选择重组而放弃原始主链的矿工来说,也存在很大的风险,因为这大大增加浪费算力的风险,而这些算力本可以有效地用于开采原先那条更长的主链。
5/而跟据矿工对这一风险收取的额外费用,意味着作出重组的决定的时间要比232个区块产生时间短的多。如果重组,将最终从黑客手里拿钱付费给矿工。币安并未从中受益太多。
声音 | 比特币专家William Mougayar:监管机构要为区块链构建一个全新的监管框架:近日,比特币专家William Mougayar发表了一篇关于区块链行业的发展建议的文章。针对监管机构,他认为不要在行情遇冷或没有翻身机会之际,进一步加深他们的伤痛。区块链、通证、加密货币和分布式信任p2p网络,它们都是一些与早已建立的行业规范不太相符的新兴事物。它们更加具有革命性,本质上更加不同,因此更需要一个全新的监管框架。[2019/1/3]
6/损失最小仍为725BTC,这仍是一个不小的变化。
7/币安受到时间和风险的双重挤压。每一个新的区块都是另一个需要被赶超的区块,最低成本为12.5BTC。要与现有的挖矿池迅速协调起来(进行重组)可能并不容易。单是达成协议可能就需要超过一天(144个区块)。(备注:当前比特币区块链平均每10分钟产生1个区块,24小时则是144个区块)。
下文中,作者将继续对重组后果进行更全面的讨论。
分歧
在下方的推文中,可以看到AriPaul(区块链投资公司BlockTowerCapital的投资总监)和AdamBack(密码朋克,区块链初创公司Blockstream联合创始人)就是否进行重组存在分歧:
AdamBlack(下)推文译文:比特币重组是不会发生的。我对任何比特币领域、矿工或者是开发者会考虑重组表示怀疑。想想2014年(Mt.Gox)遭遇的4.73亿美元损失,2016年Bitfinex被攻击导致7,200万美元损失,还有2019年币安的4,000万美元损失等等,(重组)#都没有发生
动态 | 江北新区与中科院计算所签署包括区块链项目在内的合作协议:今天上午,江北新区与中科院计算所在江北新区研创园签署了战略合作协议,“基于区块链技术的软件安全检测”等六个项目也同步签约落户研创园。[2018/7/21]
AriPaul(上)推文译文:最后一个想法的灵感来自于AdamBack(但我不同意他的观点)。过去的数据在这里是没有用的。激励重组是一个很难协调的问题,而相当简单的新技术也许就能解决这个问题。
本质上,Adam认为这样的重组不会发生,Ari则认为激励措施可以使重组成为可能。那谁是对的呢?这就是我们需要进行一些博弈论分析。让我们从最基本的场景开始:
一个简单的模型
让我们假设一个非常简单的模型,其中100%的算力(矿工)都愿意帮助币安进行区块重组。
这是最容易分析的场景。我们假设币安与每一个矿池取得了联系(虽然这不太可能),并就每一个矿工的赔偿金额达成协议(虽然一些矿工可能同意,但另一些矿工不太可能同意),并达成共识。我们假设目前没有人不同意(虽然这极不可能),也没有人会建立一个备用矿池来继续开采当前这条更长的主链。
首先,让我们看看补偿矿工的合理金额是多少。假设一个矿工拥有10%的网络算力,并且此次攻击之后要对100个区块进行重组,这就意味着该矿工将要放弃自己已经在原始链上挖出的那10个区块的奖励(即100*10%=10)和相应的交易费用,也即放弃125枚BTC(即10*12.5=125)以及相应的区块交易费用。
A股区块链概念股收盘上涨1.53%:今日A股区块链概念股板块收盘上涨1.53%,盘中主力资金净流入5.36亿元。个股方面上涨家数32家,下跌家数17家,涨幅排名前三的是紫光股份(10.01%)、航天信息(7.28%)、中国长城(7.20%)。[2018/4/2]
(备注:区块重组(reorg)也即交易回滚,只要有超过51%算力,在盗币交易区块前,重新开始挖一个分叉,并且只剔除掉那笔被盗交易(和后续的交易),正常打包原链上的其它交易,那在新分叉长度超过原来被盗链后,就会发生区块重组。重组可以简单理解为:新分叉覆盖了原被盗链,效果是:在不影响其它交易的情况下,单独回滚那一笔盗币交易。)
你也许会认为,该矿工将能够在那条重组的链上挖矿并获得大约10%的区块奖励,这样就可以抵消了,但事实并非如此。因为该矿工如果在区块重组的这段时间内,他本来就可以通过自己的算力在原始的那条主链上继续挖矿并获得10%的区块奖励(以及交易费用),同时不用放弃之前在原始链上已经挖出的那10个区块的奖励(以及交易费用),这就意味着该矿工会因为帮助币安进行区块重组而损失至少125枚BTC。
因此,帮助币安重组的矿工会要求币安将这些矿工在原始链上已经挖出的区块的奖励(以及交易费用)补偿给他们。在这个场景中,假设每个区块有0.5个BTC费用,也即总共需要补偿给这位拥有10%算力的矿工130枚BTC(即1250.5*10=130)。
这还不是全部!此外还存在风险溢价(riskpremium),以防出现问题。如果除了这个拥有10%算力的矿工之外,没有其他人愿意使用币安的那条新的重组链,那就浪费了这名矿工本来可以用于对原始链进行挖矿的算力。
如果重组的努力没有成功,币安将不得不同意要么补偿这种溢价风险,要么承担被浪费的算力带来的损失。这将是补偿的一个重要部分,但是为了让本文简短易懂,我们暂时忽略这方面的因素。
因此,如果币安在盗窃后开始试图重组100个区块,他们将不得不支付1,300BTC的成本(即100*12.5100*0.5=1,300,其中12.5是比特币链的区块奖励,0.5是矿工每挖出1个区块之后能获得的交易费用),以此来回收被盗的7,000BTC,也即币安能挽回5700BTC。从币安的角度来看,你可以认为这是一个理想的场景,因为他们可以挽回一大笔钱。
这种情况的后果是什么?最明显的是,这样的事情将证明比特币是中心化的,因为如果币安可以强制对这100个区块进行重组,任何其他足够强大的实体也都可以做同样的事情。
这将会导致许多双花(doublespending)的尝试,而且任何在这100个区块中进行了交易的人,都将不得不为了弄清楚到底发生了什么事情而劳心费神。事实上,通过重组有可能会导致出现比当前损失的7,000BTC更大规模的双花问题!对于在比特币网络上进行交易的所有人来说,这都将造成重大的干扰,因为考虑到币安本来能够做到的事情,没有人会接受3-6次的交易确认次数。
换句话说,交易所、商家、用户都至少要承受很大的头疼,更糟的是,要处理更多的痛苦来应对可能的双花问题。
等等,我们还没讲到小偷(黑客)会做什么呢!
因此,重组的情况是非常不可能的,因为所有在这种情况下会经历痛苦的人都会加以抵抗。
一个更有争议的选择
重组将会带来一次受争议的分叉和一场争夺成为更长链的竞争。拥有55%的算力对这100个区块进行重组,并赶超当前的主链,这意味着需要大约在新链上挖出1,000个区块(这种情况下需要2周时间)。这个数字的变化幅度也相当大,在这个场景中,不管是需要挖出500个区块还是1,500个区块都不足为奇。
即便是拥有99%的算力,也需要在新链上挖出101个区块(约需要20个小时)。(备注:当前比特币链平均约每10分钟挖出一个区块,因此101个区块所需时间约为20小时)
在这种情况下,原始主链和重组的新链都希望吸引对方的矿工。原始的那条主链更具优势,因为这条链在开始竞争的时候就领先了100个区块。
支持原始的那条主链的是诸多不想要对这100个区块进行重组的交易所、商家、用户。他们都有可能会补偿原始主链上的矿工。他们可以轻易地补偿矿工:在原始主链上以一笔高手续费花费一个UTXO(未使用交易输出),而这个UTXO只在原始主链上有效。如果这笔手续费足够高,那很多矿工都会被诱惑转而在原始主链上挖矿。
这里需要指出在原始主链上还有一个特殊的用户——就是发起攻击的黑客。他可能也会发起类似的交易(涉及被盗交易的UTXO就可以),以此在原始的主链上通过更高的手续费来补偿矿工。
另一方面是币安。币安必须与所有这些交易所、商家以及用户进行斗争,更不用说还要与发起攻击的黑客进行斗争了。
黑客已经从币安盗取了7,000BTC,因此黑客可以将这个金额全部用于激励矿工继续在原始主链上挖矿,组织区块重组。
相比之下,币安必须花费1,300BTC黑客为了阻止重组而愿意花费的金额其他交易所/商家/用户用于阻止重组而愿意花费的金额。这显然是一场失败的斗争。除非币安认为值得花费1,300BTC来惩罚这个黑客(或者13BTC*被盗交易的确认次数),否则重组并不对币安有利。
总结
还存在更复杂的情况,尤其是还有很多离线采矿设备,但所有这些都很容易分析。黑客可以激励矿工,因此所以对币安来说,这是一场失败的战斗,币安必须承担重组每一个区块以及在此次盗窃中损失的资金。
就像一场旷日持久的诉讼实际上只对律师有利一样,在区块重组方案中唯一受益的人就是矿工。这些钱通过有争议的交易(来自币安或者黑客)流向矿工。从深层次上讲,这就是比特币协议的设计初衷,改变它的成本非常高昂。
人们不去尝试重组是有原因的,即使是在大规模盗窃之后也是如此。重组不仅伤害了盗币者,也伤害了其他人。存在一个巨大的集体动机不去改变比特币的交易历史。
参考链接:
https://medium.com/@jimmysong/reorg-scenarios-binance-hack-edition-849fc7e7df07
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。