最近有人在讨论矿工是否可能采用一个还不存在的、修改过的以太坊客户端,主要为了使矿工可以接受贿赂,对区块链进行短程的重组 (创造这种贿赂的主要用例是攻击 DeFi 协议)。
在这篇文章里,我们将解释这个攻击向量为什么在以太坊 2.0 合并后更难执行。
分叉选择规则是一个函数,由客户端来求值,该函数把区块集和见过的其他消息作为输入,然后把「权威链」的内容输出给客户端。之所以需要分叉选择规则,是因为可能有多条有效链可选 (即如果同一个父区块有两个竞争子区块同时发布)。
重组 (reorg)?是这样一种事件——本来属于权威链的区块变成不再是权威链的一部分了,因为有一个竞争区块把它击败了。最终确定性是这样一种情况——分叉选择规则强有力地支持某个区块,以至于该区块在数学上不可能被重组 (或至少是经济行不通)。
在有些分叉选择规则里 (例如 Tendermint),重组是不可能发生的;分叉选择规则只通过添加任何已经通过 BFT (拜占庭容错共识协议) 共识、最终敲定的区块来扩展现有的链。在其他分叉选择规则里,重组是很常见的。
在以太坊这样的 PoW 区块链里,我们通常看到的是「最长链规则」(或更准确来说,是「最高总挖矿难度规则」)。这意味着,当客户端看到两条区块链时,它会选择总难度 (即该链里所有区块的难度总和) 最高的那条。
为了方便举例,假设区块难度可以是 100 或 110,想象以下这样的场景:
美SEC专员:不明白为何比特币现货ETF申请决定需要花费这么长时间:1月5日消息,在周二发布的一份通知中,SEC指出,“指定一个较长的期限来发布批准或不批准该ETF的指令是合适的”。消息传出后,比特币的价格并未受到影响,仍在4.7万美元以下的盘整区间内徘徊。
虽然加密货币爱好者已经习惯了比特币现货ETF申请被拒绝和延迟,但SEC专员Hester Peirce也想知道为什么要花这么长时间。在接受行业媒体采访时,Peirce表示:“我不敢相信我们还在谈论这件事,就好像我们在等待一件事发生一样……甚至在最近,我们还否决了一系列的此类ETF申请,而那些声明仍在使用我认为在现下已经过时的论证方法。”(Cointelegraph)
此前消息,美国SEC已将有关NYDIG比特币ETF的决定推迟至3月16日。[2022/1/5 8:27:29]
1、我们从难度为 100 的区块 1 开始同步。
2、区块 2a 和 3a 都以难度 100 到达,我们把它们嵌入到我们的区块链里,构成总难度为 300 的分叉。
3、区块 3b 以难度 110 到达,并声称 2a 是它的父区块,构成总难度为 310 的分叉。分叉选择规则会发现目前「最重」的链是第二个分叉,然后转为选它。这种情况属于 1 个区块的重组,因为只有区块 3a 被改变了。请注意,区块不是直接被丢弃的,因为新到达的区块可能会导致分叉选择转为选择第一个分叉。
动态 | 澳本聪回应江卓尔“为何不了解Base58 编码”:我想通过 Base58 来误导听众:江卓尔和澳本聪在昨日辩论上,江卓尔问澳本聪名:为什么在销毁(burn)地址中使用 X 而不是 0。中本聪发明了用于这些地址的 Base58 编码模式,中本聪有意地排除了看起来相似的数字和字母,比如零和字母 O。为什么您会不了解中本聪发明的Base58 编码?
澳本聪(CSW)回应称,这是我的代码。我想通过 Base58 来误导听众,想让人们以为我不了解比特币。实际上 Base58 和交易无关,它只是钱包的实现方式,checksum 是钱包层面的东西,它是钱包交易时用来验证的东西,它并不存在比特币网络上。[2019/7/24]
4、区块 2b 和 3c 都以难度 110 到达,构成总难度为 320 的新分叉。这意味着分叉选择规则现在将使用 2b 而不是 2a,3c 而不是 3b,区块 2a 和 3b 都曾在上一条权威链里。这种属于 2 个区块的重组。
读者应该能看到逻辑是怎么发展下去的。如果一个新区块 4a 到达并声称 3a 是它的父区块,分叉选择规则会转为选第一个分叉,如此类推。
由于延迟,短程的重组经常发生。矿工 A 和矿工 B 可能同时找到一个有效区块,但由于区块是在 p2p 网络里广播的,部分网络可能先看到矿工 A 的区块,而另一部分先看到矿工 B 的区块。如果两个区块的难度相同,就会出现平局,客户端端要么随机选择,要么选先看到的那个区块。通常,当第三个矿工 C 在矿工 A 或 B 构建的区块上构建了一个区块时,另一个区块就会被遗忘。偶尔运气不好还会导致 2-5 个区块重组。比那更长的重组几乎总是由于极端的网络故障、客户端漏洞、或恶意攻击。
声音 | 亿万富翁Druckenmiller:不理解为何需要比特币:据华尔街见闻消息,亿万富翁Stanley Druckenmiller表示,并不理解美联储为何被困在2%这一通胀目标。目前并没有陷入衰退,但必须保持警惕。此外,Druckenmiller还称不理解为何需要比特币,他既不会沽空、也不会做多比特币。[2019/6/4]
短程重组并不致命,但对网络的确仍会带来一些严重的有害后果:
· 节点开销:当一起重组发生时,因为需要转用新的分叉,可能需要重新执行交易或状态编辑,节点会有一些内存和磁盘开销。
· 用户体验下降:可能重组意味着用户需要等待更长的时间,才能安全处理需要「被确认」的交易。这方面的一个重要子用例是交易平台等企业在接受存款前需要等待更长的时间。
· 交易背景的不确定性:当一个用户发送一笔交易时,他们会更不确定该笔交易会在什么背景下执行 (例如,最新的 N 个区块会被回滚吗)。显然,这会使 DeFi 交易更容易出现意外的失败、比预期更糟的交易结果、或有害的 MEV 提取。
· 更容易受到 51% 攻击:在以最长链作为分叉选择规则的系统里,如果区块链从选择 B1 转为 B2 进行重组,那么 B1 的难度不再为链提供安全性。攻击者不再需要击败所有诚实矿工,他们只需击败没被重组的那部分诚实矿工。如果重组进行得频繁,这会使得攻击变容易很多。
在最坏的情况里,频繁的重组会使区块链的结算保证完全失效,并阻止它继续进行。正常来说,对于出块者来说,「激励相容」的策略应该是延长最长的链。但如果某个区块执行后的状态异常有利可图呢 (例如,交易费很高,或只有直接在该区块后构建新区块才能提取 MEV) 呢。这个问题在过去讨论「没有区块奖励的比特币」和自私挖矿问题上探讨过,而在今天「以太坊生态里 DeFi 相关的 MEV" 问题上也探讨过。
Facebook Messenger负责人解释为何禁止数字货币广告:Facebook Messenger副总裁David Marcus本周表示,数字货币在他的平台上不会有任何作用。“现在使用加密技术的支付非常昂贵,超级慢,当这一问题解决了,也许我们会做点什么。”本周早些时候,Facebook禁止所有数字货币相关的广告。马库斯解释到:“我们希望保护社区,这最重要,大部分广告都是,我们不能让平台存在。[2018/2/3]
这些情况都存在很强的动机试图通过与其他区块竞争」窃取「费用,而不是延长权威链。在下面的例子里,区块 1 的执行后状态非常有利可图,且区块 2a 已经被挖了。然而,不是一个,而是三个出块者已经选了在区块 1 上继续挖,而不是区块 2a (以获得区块 1 后显露出的 MEV),这可以扩展到任意数量的出块者。
很明显,这样的模式为恶意 51% 攻击打开了一扇大门。我们把矿工参与这种重组挖矿策略的情况称为」短视理性「,因为决定这样做在短期内可能是理性的。但是,他们都或显式地 (质押者) 、或隐式地 (矿工) 看涨 ETH (因为交易费和区块奖励都是以 ETH 计价的),这意味着这种减少用户对以太坊信任的攻击是与他们的最佳利益有冲突的,因此在长期来说是不理性的。
在 Nakamoto PoW 共识算法里,区块在分叉选择里是被」连续「敲定的。首先,当一个区块被挖,此时一个竞争区块有可能可以对其进行重组。如果一个区块成功被打包进权威链,(平均) 13 秒后会有其他矿工在该区块上构建第二个区块。此时,一条链要重组的话需要有两个竞争区块。随着构建了越来越多的区块,对链进行重组的难度会持续上升,但速度很慢。
比特币为何如此疯狂:答案也许在这1000多个账户里:就在上周四晚到今天,几天时间里比特币的疯狂再次呈现:先是价格突破1.5万美元,就也就是突破10万元人民币!紧接着,比特币的价格又跌破13000美元关口。新进的比特币投资者必须警惕:这1000多人或许具有影响比特币整体的定价能力。芝加哥大学基金会前任投资组合经理Ari Paul认为,和任何资产类别一样,大型个人持有者和大型机构持有人可以合谋操纵价格。还有一种可能,这些早期比特币投资者已经彼此认识,因为他们是在早期挖掘加密货币比较容易时进入这个市场,当时“挖矿”行业和币圈的圈子很小。[2017/12/11]
以太坊信标链实现的是一个名为 Gasper 的权益证明协议,其分叉选择规则称为 LMD-GHOST。不同于 Nakamoto PoW,在 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% 的质押量),系统需要倒回去,通过社会性干预来恢复。
现在我们了解了在不同的分叉选择规则下重组是如何发生的,不妨通过一个简单的博弈论例子来了解,对于矿工或验证者来说,什么时候运行软件来执行重组以获利是有意义的。
我们可以用收益矩阵非正式地描述每个场景,其中「叛变」意味着「下载并使用执行重组的软件」。收益是「短视的」,没有考虑长期后果。
在最长链 PoW 里,即使是验证者集里的一小部分人,也有可能实现短程重组。执行后状态是异常有利可图的区块总会偶尔出现,即使是 1-10% 的成功几率也值得尝试,与该区块现有的子区块进行竞争。
矿工可以形成一个中型矿池,等待找到未来连续 2-3 个区块的机会,或把部分他们的收入发送到一个任何人都可以认领的合约,以贿赂其他矿工也运行相同的软件,以构建他们的区块链,帮助它击败现有的权威链。
因此,有些矿工可能会尝试运行重组客户端。
在 Gasper 里,重组 1-64 个 slot 是可能的,但需要攻击者控制整个验证者集的大部分 (由于他们不能把他们的押金集中在某个特定的 slot,所以他们的质押量需要足够大才能在他们想要攻击的 slot 里被随机选中)。采用重组挖矿软件用处不大,除非有非常大量其他验证者也同时采用。
因此,如果 51% 的验证者都稍微有点利他主义精神或懒惰,那么没有人会运行重组挖矿软件这件事基本可以确定。
在 Tendermint 里,事情会更加简单:重组是完全不可能的,任何违反单个 slot 最终敲定规则的实现都需要超过三分之一的验证者被罚没。与 Gasper 的情况相似,这也意味着没有人会运行重组挖矿软件这件事基本可以确定。
从上面我们可以看出,尽管在三种情况里采用 "reorg geth" 都是可能的,基于并行证明这个理念的分叉选择规则比 Nakamoto 分叉选择规则带来更稳定的诚实平衡。
在以太坊的语境里,最有效的预防措施是进一步加快合并的工作,特别是赶快发展出能实现可接受的「紧急合并」的能力,以把以太坊转化为 PoS 机制。仓促合并会带来很高风险,还会毁坏基础设施,但如果很多矿工开始对链进行重组攻击的话,还是需要一个可信的承诺来抵御这样的行为。
接近合并的时候就是风险最大的时候,因为矿工仍然主导着这个系统,但他们的时间不多了。然而,有两个因素会缓解这个风险:
· 以太坊矿工经常同时是 (i) 其他区块链的矿工,和/ 或 (ii) 以太坊社区具有其他能力的成员,因此作出良好行为的动机会继续存在。
· 随着合并临近,实现紧急合并的成本和风险都在降低。在预计合并日期的前几个月进行紧急合并是非常具有破坏性的。在预计合并日期的前两周进行紧急合并则能为验证者操作员已经下载好的客户端提供参数设置。
合并后,重组验证将成为一个更小的问题,因为单个验证者或小群体证明者无法独自重组一个区块。成功的重组攻击需要解决让大部分验证者都同时参与进来的协作难题。但是,还是存在一些小风险的。如果想要进一步提高安全性,那么以太坊可以要么进一步调整分叉选择规则,将重组攻击的要求提到到 50% 的理论最大值;要么转为直接单个 slot 实现最终敲定的共识。
早在Vitalik Buterin最初的以太坊论文中,去中心化游戏就被吹捧为智能合约技术最具潜在用例之一.
1900/1/1 0:00:00最近,微博上有这样一条热门。我觉得人这辈子还是要去北京待几年,最好是上大学在北京读书,当然不只是因为它深厚的文化底蕴和教育资源,还因为这是个能提升生活幸福感的城市.
1900/1/1 0:00:00区块链与其它技术进行融合,以打造完整的解决方案,已成为行业共识。其中,物联网可以大规模低成本地采集数据,而区块链可以大规模低成本地信任数据,因此区块链与物联网的融合被认为具有较大的想象空间.
1900/1/1 0:00:00DeFi数据1.DeFi总市值:722.63亿美元 市值前十币种排名数据来源DeFiboxDeFi总市值数据来源:Coingecko2.过去24小时去中心化交易所的交易量:36.
1900/1/1 0:00:00韩国区块链产业市场现状随着韩国国内经济增速的放缓,经济发展势头已不如上世纪 90 年代那样强劲,韩国普通年轻人失业率逐年攀升,就业压力巨大.
1900/1/1 0:00:00在区块链蓬勃发展的今天,“mining”已成为了区块链世界中举足轻重的一环。无论是pos还是pow,或者是最近大火的DeFi mining、存储mining等,都具有着旺盛的生命力.
1900/1/1 0:00:00