原文标题:《详解以太坊合并后的重组攻击》(Ethereum Reorgs After The Merge) 最近,人们讨论了矿工采用假定被修改的以太坊客户端的可能性,该客户端允许他们接受贿赂,并在选定的区块中对交易进行排列。(进行这种贿赂的主要用例是攻击 DeFi 协议)。 在这篇文章中,我们将解释为什么这种攻击模式在以太坊 2.0 合并后将更难执行。 什么是分叉选择规则,为什么它很重要?分叉选择规则是一个由客户端评估的函数,它把已经看到的区块和其他消息的集合作为输入,并向客户端输出「典型链」是什么。分叉选择规则是必要的,因为可能有多个有效的链可以选择(例如,如果两个具有相同母本的竞争区块同时被发布)。 重组是一个特殊事件,在这个事件中,曾经是经典链的一部分的区块不再是经典链的一部分,因为一个竞争区块击败了它。最终性是指分叉选择规则对某一区块非常有利,以至于该区块在数学上不可能被重合(或至少在经济上不可行)的情况。 在一些分叉选择规则中(例如 Tendermint ),重组是不可能发生的;分叉选择规则只是通过添加任何已经通过 BFT (Byzantine Fault Tolerance :拜占庭容错) 共识并最终确定的区块来扩展现有的链。在其他分叉选择规则中,重组是非常频繁的。 以太坊的现状是什么?在以太坊这样的工作量证明 (PoW) 区块链中,我们通常会看到「最长链规则」(或者更准确地说,「最高总难度链规则」)。这意味着,当客户端发现 2 条区块链时,它会选择总难度最高的一条(即该链中所有区块的难度之和)。 举个例子,假设区块的难度可以是 100 或 110 ,想象一下下面的场景。
|