最近有人在讨论矿工是否可能采用一个还不存在的、修改过的以太坊客户端,主要为了使矿工可以接受贿赂,对区块链进行短程的重组(创造这种贿赂的主要用例是攻击DeFi协议)。
在这篇文章里,我们将解释这个攻击向量为什么在以太坊2.0合并后更难执行。
什么是分叉选择规则,为什么重要
分叉选择规则是一个函数,由客户端来求值,该函数把区块集和见过的其他消息作为输入,然后把「权威链」的内容输出给客户端。之所以需要分叉选择规则,是因为可能有多条有效链可选(即如果同一个父区块有两个竞争子区块同时发布)。
重组(reorg)?是这样一种事件——本来属于权威链的区块变成不再是权威链的一部分了,因为有一个竞争区块把它击败了。最终确定性是这样一种情况——分叉选择规则强有力地支持某个区块,以至于该区块在数学上不可能被重组(或至少是经济行不通)。
在有些分叉选择规则里(例如Tendermint),重组是不可能发生的;分叉选择规则只通过添加任何已经通过BFT(拜占庭容错共识协议)共识、最终敲定的区块来扩展现有的链。在其他分叉选择规则里,重组是很常见的。
以太坊的现状如何
在以太坊这样的PoW区块链里,我们通常看到的是「最长链规则」(或更准确来说,是「最高总挖矿难度规则」)。这意味着,当客户端看到两条区块链时,它会选择总难度(即该链里所有区块的难度总和)最高的那条。
为了方便举例,假设区块难度可以是100或110,想象以下这样的场景:
1、我们从难度为100的区块1开始同步。
2、区块2a和3a都以难度100到达,我们把它们嵌入到我们的区块链里,构成总难度为300的分叉。
3、区块3b以难度110到达,并声称2a是它的父区块,构成总难度为310的分叉。分叉选择规则会发现目前「最重」的链是第二个分叉,然后转为选它。这种情况属于1个区块的重组,因为只有区块3a被改变了。请注意,区块不是直接被丢弃的,因为新到达的区块可能会导致分叉选择转为选择第一个分叉。
4、区块2b和3c都以难度110到达,构成总难度为320的新分叉。这意味着分叉选择规则现在将使用2b而不是2a,3c而不是3b,区块2a和3b都曾在上一条权威链里。这种属于2个区块的重组。
读者应该能看到逻辑是怎么发展下去的。如果一个新区块4a到达并声称3a是它的父区块,分叉选择规则会转为选第一个分叉,如此类推。
链重组的影响
由于延迟,短程的重组经常发生。矿工A和矿工B可能同时找到一个有效区块,但由于区块是在p2p网络里广播的,部分网络可能先看到矿工A的区块,而另一部分先看到矿工B的区块。如果两个区块的难度相同,就会出现平局,客户端端要么随机选择,要么选先看到的那个区块。通常,当第三个矿工C在矿工A或B构建的区块上构建了一个区块时,另一个区块就会被遗忘。偶尔运气不好还会导致2-5个区块重组。比那更长的重组几乎总是由于极端的网络故障、客户端漏洞、或恶意攻击。
短程重组并不致命,但对网络的确仍会带来一些严重的有害后果:
·节点开销:当一起重组发生时,因为需要转用新的分叉,可能需要重新执行交易或状态编辑,节点会有一些内存和磁盘开销。
·用户体验下降:可能重组意味着用户需要等待更长的时间,才能安全处理需要「被确认」的交易。这方面的一个重要子用例是交易平台等企业在接受存款前需要等待更长的时间。
·交易背景的不确定性:当一个用户发送一笔交易时,他们会更不确定该笔交易会在什么背景下执行(例如,最新的N个区块会被回滚吗)。显然,这会使DeFi交易更容易出现意外的失败、比预期更糟的交易结果、或有害的MEV提取。
·更容易受到51%攻击:在以最长链作为分叉选择规则的系统里,如果区块链从选择B1转为B2进行重组,那么B1的难度不再为链提供安全性。攻击者不再需要击败所有诚实矿工,他们只需击败没被重组的那部分诚实矿工。如果重组进行得频繁,这会使得攻击变容易很多。
可能出现的最坏情况
在最坏的情况里,频繁的重组会使区块链的结算保证完全失效,并阻止它继续进行。正常来说,对于出块者来说,「激励相容」的策略应该是延长最长的链。但如果某个区块执行后的状态异常有利可图呢(例如,交易费很高,或只有直接在该区块后构建新区块才能提取MEV)呢。这个问题在过去讨论「没有区块奖励的比特币」和自私挖矿问题上探讨过,而在今天「以太坊生态里DeFi相关的MEV"问题上也探讨过。
这些情况都存在很强的动机试图通过与其他区块竞争」窃取「费用,而不是延长权威链。在下面的例子里,区块1的执行后状态非常有利可图,且区块2a已经被挖了。然而,不是一个,而是三个出块者已经选了在区块1上继续挖,而不是区块2a(以获得区块1后显露出的MEV),这可以扩展到任意数量的出块者。
动态 | 智能投顾公司Wealthfront创始人解释为何其投资服务不包含加密货币:智能投顾公司Wealthfront创始人Andy Rachleff称,公司聚焦于千禧一代投资者,应用程序链接到Coinbase,用户可查看加密货币余额,但在Wealthfront的投资服务不包含加密货币。
其表示,公司曾发文解释关于比特币的立场。公司专注于经时间考验、学术验证的投资方法,这就是为何Wealthfront提供基于多元化和再平衡的低成本指数基金投资组合的投资服务。这项研究清楚表明,从长远来看,人们(甚至专业人士)不擅长超越市场,实际上远不如市场表现。Robinhood等公司为那些自己动手、试图挑战研究结论的人服务。我敢打,如果你评估Robinhood客户表现,那将特别糟糕。因此,我们正努力为客户做长期来看最好的事情,作为前专业投资者,我学到的一件事是,为了让某样东西成为投资,必须有现金流。如果没有现金流,那就是投机。比如贵金属是投机,而不是投资。你不会看到老练的投资公司会购买贵金属。那只是投机。这就是为何加密货币不是我们投资服务的一部分。我们告诉人们,“听着,如果你想用游戏费来做这件事,我们欢迎你这么做,但应该控制在净资产的10%以下。”(The Block)[2019/12/4]
很明显,这样的模式为恶意51%攻击打开了一扇大门。我们把矿工参与这种重组挖矿策略的情况称为」短视理性「,因为决定这样做在短期内可能是理性的。但是,他们都或显式地(质押者)、或隐式地(矿工)看涨ETH(因为交易费和区块奖励都是以ETH计价的),这意味着这种减少用户对以太坊信任的攻击是与他们的最佳利益有冲突的,因此在长期来说是不理性的。
动态 | 李启威连发数十条推文释疑:为何看起来Litecoin Core在GitHub没有更新:刚刚莱特币创始李启威连发数十条推文,介绍了莱特币的代码更新情况和开发进展。他表示在8年来,只有少于开发人员致力于Litecoin Core。Adrian Gallagher目前正在领导Litecoin Core的开发,并且已经进行了几年,大家可能不太了解Adrian,因为他不在推特上,但他很棒,他正在悄悄地做Litecoin Core开发的幕后工作。
最近有很多人质疑莱特币在2019年没有更新任何代码,从GitHub上看似乎这样,但这里有两个原因:第一个是莱特币的更新要比比特币滞后几个月,我们发布了几个月前在比特币中发布的代码,这些代码是在2018年编写的。GitHub的有趣之处在于,它使提交的时间保持不变,不管是谁写的,还是什么时候提交到代码库的。因此,比特币开发者因在莱特币代码库中的工作而受到好评。这就会让人看起来,尽管在2019年5月开发并发布了最新的Litecoin Core,但在GitHub你会发现大多数提交都是在2018年完成的。第二个原因是我们没有在主要项目的主分支上工作,将非发布代码签入主分支通常不是好的开发实践。事实上,Adrian一直在他的个人分支上积极地开发Litecoin核心版本0.18.1。
以上是Litecoin Core开发多年来的运作方式,我们去年甚至遇到了用户相同的担忧,有人去年看了我们的主分支工作并声称Litecoin在2018年停止了开发。我打即使在这个解释之后,我们也会在2020年让人感到困惑。
另外,李启威还表示Litecoin Foundation的目的有两个方面:致力于LTC的推广和开发。“在过去的几个月里,我认为一直认为推广比开发更重要,但从长远来看,这两者同样重要。我会努力与社区进行更好的沟通,并提供更频繁的消息同步。”[2019/8/11]
合并后的PoS以太坊
声音 | 亿万富翁Druckenmiller:不理解为何需要比特币:据华尔街见闻消息,亿万富翁Stanley Druckenmiller表示,并不理解美联储为何被困在2%这一通胀目标。目前并没有陷入衰退,但必须保持警惕。此外,Druckenmiller还称不理解为何需要比特币,他既不会沽空、也不会做多比特币。[2019/6/4]
在NakamotoPoW共识算法里,区块在分叉选择里是被」连续「敲定的。首先,当一个区块被挖,此时一个竞争区块有可能可以对其进行重组。如果一个区块成功被打包进权威链,(平均)13秒后会有其他矿工在该区块上构建第二个区块。此时,一条链要重组的话需要有两个竞争区块。随着构建了越来越多的区块,对链进行重组的难度会持续上升,但速度很慢。
以太坊信标链实现的是一个名为Gasper的权益证明协议,其分叉选择规则称为LMD-GHOST。不同于NakamotoPoW,在Gasper里,参与出块的有两个角色:
·提议者:负责提议区块的一名验证者
·证明者:由一组验证者构成,他们对应该成为权威链链头的区块进行投票。证明者的投票被称为」证明(attestation)",这是他们给区块的「权重」。控制了证明者意味着控制了分叉选择规则。
每12秒就有一个slot,这代表着提议一个区块的一次机会。在每个slot里会有一个混洗算法伪随机地选出一个委员会,这个委员会由所有验证者数的大约1/32组成,其中每个委员会里的一名验证者会作为提议者,其余的验证者作为证明者。证明者同时对他们认为应该被打包到权威链的区块进行投票。因为委员会是通过伪随机采样组成的,攻击者是没有办法把他们的验证者都集中到一个单一slot里的。
当前,信标链有大约19.6万名验证者,意味着每个slot里的委员会人数大约是6125。因此,即使是一个区块的重组也是极其困难的,因为一个只控制了一些验证者的攻击者是无法击败数千名诚实的多数验证者的。
为了更好理解为什么是这样,让我们看看以下这个例子:有2个slot和24名验证者,其中9名是恶意的。验证者被分成2个委员会,经过随机混洗,对手不太可能可以控制他们被分配到的委员会人数的50%,更不能实现重组。
更正式地说,拥有p%质押量的恶意行为者控制N名验证者大小委员会的50%以上的概率遵循二项式分布(其中k=N/2):
算出多个质押值的概率后,我们得出下表:
现在我们了解到,攻击者如果想直接进行重组的话需要控制总验证者数的50%。
如果控制证明者的25-49%(参阅此论文、或这里的概要),控制者还是可能发起一些更小型的攻击的。但是,对这些攻击已经有修复方法了,它们可以被悄悄执行,从而达到接近50%的无条件安全性。
最后,长程重组是不可能了,因为所有比过去两个epoch更深的区块都会被认为「最终确定了」,也就是说,对它们进行回滚是不可能的了。如果一个攻击者造成两个冲突区块被最终确定了(例如,控制了67%的质押量),系统需要倒回去,通过社会性干预来恢复。
采用重组策略的博弈论
现在我们了解了在不同的分叉选择规则下重组是如何发生的,不妨通过一个简单的博弈论例子来了解,对于矿工或验证者来说,什么时候运行软件来执行重组以获利是有意义的。
我们可以用收益矩阵非正式地描述每个场景,其中「叛变」意味着「下载并使用执行重组的软件」。收益是「短视的」,没有考虑长期后果。
NakamotoPoW
在最长链PoW里,即使是验证者集里的一小部分人,也有可能实现短程重组。执行后状态是异常有利可图的区块总会偶尔出现,即使是1-10%的成功几率也值得尝试,与该区块现有的子区块进行竞争。
矿工可以形成一个中型矿池,等待找到未来连续2-3个区块的机会,或把部分他们的收入发送到一个任何人都可以认领的合约,以贿赂其他矿工也运行相同的软件,以构建他们的区块链,帮助它击败现有的权威链。
因此,有些矿工可能会尝试运行重组客户端。
Gasper
在Gasper里,重组1-64个slot是可能的,但需要攻击者控制整个验证者集的大部分(由于他们不能把他们的押金集中在某个特定的slot,所以他们的质押量需要足够大才能在他们想要攻击的slot里被随机选中)。采用重组挖矿软件用处不大,除非有非常大量其他验证者也同时采用。
因此,如果51%的验证者都稍微有点利他主义精神或懒惰,那么没有人会运行重组挖矿软件这件事基本可以确定。
Tendermint
在Tendermint里,事情会更加简单:重组是完全不可能的,任何违反单个slot最终敲定规则的实现都需要超过三分之一的验证者被罚没。与Gasper的情况相似,这也意味着没有人会运行重组挖矿软件这件事基本可以确定。
从上面我们可以看出,尽管在三种情况里采用"reorggeth"都是可能的,基于并行证明这个理念的分叉选择规则比Nakamoto分叉选择规则带来更稳定的诚实平衡。
总结
在以太坊的语境里,最有效的预防措施是进一步加快合并的工作,特别是赶快发展出能实现可接受的「紧急合并」的能力,以把以太坊转化为PoS机制。仓促合并会带来很高风险,还会毁坏基础设施,但如果很多矿工开始对链进行重组攻击的话,还是需要一个可信的承诺来抵御这样的行为。
接近合并的时候就是风险最大的时候,因为矿工仍然主导着这个系统,但他们的时间不多了。然而,有两个因素会缓解这个风险:
·以太坊矿工经常同时是(i)其他区块链的矿工,和/或(ii)以太坊社区具有其他能力的成员,因此作出良好行为的动机会继续存在。
·随着合并临近,实现紧急合并的成本和风险都在降低。在预计合并日期的前几个月进行紧急合并是非常具有破坏性的。在预计合并日期的前两周进行紧急合并则能为验证者操作员已经下载好的客户端提供参数设置。
合并后,重组验证将成为一个更小的问题,因为单个验证者或小群体证明者无法独自重组一个区块。成功的重组攻击需要解决让大部分验证者都同时参与进来的协作难题。但是,还是存在一些小风险的。如果想要进一步提高安全性,那么以太坊可以要么进一步调整分叉选择规则,将重组攻击的要求提到到50%的理论最大值;要么转为直接单个slot实现最终敲定的共识。
近日,国内外巨头们纷纷宣布自己的元宇宙战略7月27日,Facebook宣布将成立元宇宙产品组,表示Metaverse为移动互联网的继承者.
据1ML数据,8月2日,当前比特币闪电网络节点数为23943个,过去30天内增加7.92%;通道数量为61293个,过去30天内增加17.1%;网络容量达到2107.55个BTC.
稳定币是加密货币行业一个快速增长的领域。目前稳定币市值超过1000亿美元,其中Tether占总市值一半以上。伴随着稳定币的爆炸式增长,美国政府一直在讨论怎么监管稳定币.
NFT意为非同质化通证/非同质化代币,是一种不可分割、独一无二的加密数字凭证。对于ETH、BTC等常见的加密货币而言,相同数量的代币之间没有区别,你的一个BTC和我的一个BTC作用和价值完全相同.
原文标题:5G融合应用要打“团体赛”最新数据显示,目前我国累计开通5G基站96.1万个,截至6月底已覆盖全国所有地级以上城市,5G终端连接数约3.65亿户.
前言 本文翻译整理来源于韩国新闻网Hankyungeconomy,Decenter,讨论了对于央行数字货币问世后,比特币市值是否会下降的问题,各方的不同观点.