升级以太坊:激励层(一)

Connor 抹茶中国 2024-08-14 27 0

原文标题:Public Goods Series: “Upgrading Ethereum”: Incentive Layer (Part One)

原文作者:Ben Edgington

原文来源: LXDAO

编译:tiao

下面是作者 Ben Edgington 在个人网站上的自我介绍:

自 2024 年 2 月以来,我一直在 OP 实验室工作,扩展世界计算机。我是 Consensys Teku 以太坊共识客户端的创始人和前产品负责人。我于 2017 年 10 月加入 Consensys,头两年建立了出色的 PegaSys 研发团队,之后转到产品方面,降生 Teku。我正在撰写一本关于以太坊权益证明协议的权威技术书籍。这本书叫《升级以太坊》,有时也叫 「Eth2 Book」。据统计,我自己写了大约 135000 字,PDF 版本有 367 页。在以太坊合并前的四年中,我写了 100 期双周刊《Eth2 有什么新消息?》。我最好的推特,我最配不上的推特。

本文是全书第二章「技术概述」第三节「共识」的第二小节概述。

胡萝卜加大棒与突然死亡

无需许可的区块链是加密经济系统:在可能的情况下,密码学强制执行正确的行为;在无法强制执行的情况下,经济学激励正确的行为。我们所追求的正确行为大致与可用性和安全性相对应。我们希望链持续前进,并在所有合理的情况下提供可靠的、无矛盾的结果。

本章将介绍信标链中用于激励参与者的经济工具;密码学方面的内容将在其他章节涉及。概括地说,帮助我们实现这些目标的工具有:(1)奖励有助于协议的行为;(2)惩罚阻碍协议的行为;(3)惩罚看似是攻击协议的行为。

工作量证明少数吸引人的方面之一是其经济模型的简单性。矿工们通过创建被链所接受的区块以获得区块奖励,并通过在其区块中包含人们的交易以获得费用。区块奖励来自新创建(发行)的币,交易费用来自之前发行的币。协议中没有明确的处罚或惩罚。结合「最重链」的分叉选择规则,这种简单的模式被证明是非常稳健的。以太坊 1 通过对矿工的数块奖励和 EIP-1559 费用燃烧机制增加了一点复杂性,但它基本上还是很简单,相当容易推理。

相比之下,以太坊 2.0 权益证明协议采用了一系列不同的经济激励措施。在接下来的章节中,我们会将其细分为以下内容。

1. 最基本的经济要素是质押本身。

2. 在协议中,质押以验证者余额的形式表示,特别是一个被称为「有效余额」的数量,它是衡量特定验证者对协议影响的实际尺度。

3. 与工作量证明类似,协议发行新硬币以提供我们正在讨论的激励。我们将在「发行」部分探讨这一点。

4. 一系列奖励被用于激励诸如发布信标区块和及时进行认证等理想行为。

5. 惩罚则用来抑制不可取的行为,如未能进行认证,延迟作出认证或作出不正确的认证。

6. 怠惰惩罚是信标链可能采用的一种特殊机制,在这种机制中,奖惩措施会被修改,以更严厉地惩罚不参与的行为。

7. 罚没是对以非常具体的类似攻击的方式违反协议规则的惩罚。

展开全文

8. 最后,我们以此结束:这些激励措施如何结合在一起,使信标链基础设施的多样化部署成为最安全的策略。

请注意,这些部分的讨论在孤立地考虑共识层。现在是后合并时期,这已不再是全部情况。除了协议生成的奖励,以太坊质押者现在还可以从交易费用的小费和 MEV(最大可提取价值)中获利。将来,他们可能还能从再质押中获利。所有这些都会改动协议的激励机制。例如,一个验证者为了获得约 2000 万美元的 MEV 收入,付出被罚没 1 个以太币的代价,尽管根据协议规则,这样做是不诚实的,但这也是经济理性的行为。这些事情的影响是许多讨论、发展和辩论的主题,值得专门去写一本书。然而,出于本书的目的,我只关注共识层的加密经济堆栈。

另见

Vlad Zamfir 关于 Casper 协议开发的回忆录不仅是一本很棒的读物,也是对设计权益证明协议所面临挑战的很好介绍。他们讨论了许多设计决策的背景,这些决策最终导致了我们今天看到的协议。

Chorus One 的 Umberto Natale 最近发表的报告《以太坊加密经济学分析:验证者的视角》(Analysing Ethereum Cryptoeconomics: the validator's perspective)也涵盖了下文的大部分信息。

质押

在权益证明中,质押提供三个功能:反女巫机制、问责机制和激励机制。

32 个以太币的质押数量是在网络开销、验证者数量和最终确定时间之间的权衡。

结合 Casper FFG 规则,质押提供了经济上的最终确定性:这是链安全性的可量化的衡量标准。

质押是以太坊 2 协议的完整参与者必须锁定的存款。质押永久存放在以太坊链上的存款合约中,并反映在验证者在信标链上的记录余额中。质押使验证者有权提议区块、对区块和检查点进行认证,并参与同步委员会,以换取积累到其信标链余额中的奖励。

在以太坊 2 中,质押有三个关键作用。

首先,质押是一个反女巫机制。以太坊 2 是一个任何人都可参与的无需许可的系统。无需许可的系统必须找到一种在其参与者之间分配影响力的方法。在协议中创建身份必须付出一定的代价,否则个人可以廉价地创建大量重复身份,使链不堪重负。在工作量证明链中,参与者的影响力与其哈希能力——一种有限资源 [1]——成正比。在权益证明链中,参与者必须质押一些该链的原生货币,这也是一种有限资源。每个质押者在协议中的影响力与他们锁定的质押成正比。

其次,质押提供了问责性。在以太坊 2 中,有害的行为是有直接成本的。特定类型的有害行为可被唯一地归因于实施这些行为的质押者,他们的质押可以通过一个叫做「罚没」的过程被减少或完全取消。这样,我们就可以根据攻击者做出有害行为的成本来量化协议的经济安全性。

第三,质押使激励一致。质押者必然拥有他们所守护的事物的一部分,并受到激励去做好守护。

质押大小

在以太坊 2 中,每个验证者的质押大小为 32 个以太币。

这是一个折中值。它既要尽可能小,以允许广泛参与,又要足够大,以避免验证者过多。简而言之,如果我们减少质押,就有可能迫使质押者在带宽更高的网络上运行更昂贵的硬件,从而增加中心化的力量。

对单体化的 L1 区块链中,验证者数量的主要实际限制因素是实现最终确定性所需的消息传递开销。与其他 PBFT 风格的共识算法一样,Casper FFG 需要两轮全体对全体的通信才能实现最终确定性。也就是说,所有节点要就一个永远不会被回滚的区块达成一致。

按照 Vitalik 的记法,如果我们可以承受每秒 ω 条消息的网络开销,希望到达最终确定性的时间为 f ,那么最多可以有 n 个验证者的参与,其中

我们希望 ω 的值是小的,以便让验证者尽可能广泛地参与,包括那些速度较慢的网络中的验证者。我们希望 f 尽可能短,因为较短的最终确定性时间比较长的要有用得多 [3]。这些要求综合起来,就意味着对 n,即验证者总数的限制。

这是一个经典的可扩展性三难问题(scalability trilemma)。个人而言,我并不觉得这些三角形图片很直观,但它们已经成为表示其中权衡的标准方式。

升级以太坊:激励层(一)

理想状况可能是具有高参与度(大 n)和低开销(小 ω)——许多在低规格的机器上的质押者——但最终确定性将需要很长时间,因为消息交换会很慢。

我们可以有非常快的最终确定性和高参与度,但需要质押者在高带宽网络上运行高规格机器才能参与。

或者我们可以通过严格限制参与者数量,在相对适度的机器上实现快速的最终确定性。

目前还不清楚如何将以太坊 2 置于这样的图表中,但我们肯定更倾向于参与,而不是实现最终确定性的时间:也许 「X」 标记出了这个点。一个复杂的问题是,参与和开销不是彼此完全不相关的:我们可以降低质押来鼓励参与,但这会增加硬件和网络要求(开销),而这往往会减少能够或愿意参与的人数。

具体来说,验证者数量的硬性限制是以太币供应总量除以质押大小。以 32 以太币的质押计算,目前约有 360 万验证者,这与 768 秒(两个时段)的最终确定性时间以及每秒 9375 条消息的消息开销一致 [5]。这意味着每秒需要处理大量消息。不过,我们并不期望所有以太币都被质押,也许只有 10-20% 左右。此外,由于使用了 BLS 聚合签名,消息大小被高度压缩至每个验证者近似于 1 位。

考虑到当前 p2p 网络的容量,以及在两个时段内实现最终确定性,每一质押 32 个以太币已经是我们能做到的极限。据我所知,我的质押节点持续消耗大约 3.5mb/s 的上下行带宽,差不多是我家 ADSL 上行带宽的 30%。如果协议更「健谈」,很多人就不能用家庭网络去进行质押。

另一种方法可能是对同一时间内活跃的验证者数量设置上限,从而对信息交换数量设置上限。有了这样的方法,我们就可以探索将质押降低到 32 个以太币以下的方案,让更多的验证者参与进来,但每个验证者只能以「兼职」的方式参与。

请注意,这种分析忽略了节点(它必须处理消息)和验证者(单个节点可以托管大量验证者)之间的区别。以太坊 2 协议的一个设计目标是最大限度地减少规模经济,使个体质押者与质押池之间尽可能平等。因此,将分析应用于最分布式的情况时(即每个节点只有一个验证者)我们应该小心。

趣事:最初的「混合 Casper FFG 权益证明提案(EIP-1011)」要求最低存款额为 1500 个以太币,因为系统设计可以处理多达约 900 个活跃验证者。虽然现在对大多数人来说, 32 个以太币都是一笔巨款,但现在也有了可接受少于 32 个以太币的去中心化质押池。

经济最终确定性

要求验证者锁定质押,并引入罚没条件,这些使我们能够在某种意义上量化信标链的安全性。

我们希望阻止的主要攻击是改写信标链历史。这种攻击的成本使得信标链的安全性被参数化。在工作量证明中,这就是在一段时间内获得压倒性(51%)哈希能力的成本。有趣的是,在工作量证明中,成功的 51% 攻击基本上不需要付出任何代价,因为攻击者可以认领被重写的链上的所有区块奖励。

在以太坊的权益证明协议中,我们可以用经济最终确定性去衡量安全性。也就是说,如果攻击者想要回滚链上的一个已被最终确定的区块,成本会是什么?

这实际上很容易量化。引用 Vitalik 的《参数化 Casper》:

如果足够多的验证者签署了认证 H1 的消息,那么状态 H1 在经济上就被最终确定了。此时有了这一特性:如果 H1 和一个与其相冲突的 H2 都被最终确定,那么就有证据证明至少 1/3 的验证者是恶意的,并销毁他们的全部存款。

以太坊的权益证明协议具有这个属性。为了最终确定一个检查点(H1),三分之二的验证者必须对其进行认证。要最终确定一个相冲突的检查点(H2)也需要三分之二的验证者对其进行认证。因此,一定是至少有三分之一的验证者对这两个检查点都进行了认证。由于每个验证者都会在自己的认证上签名,因此这种情况既可以被发现,也可以被归咎:很容易就能在链上提交证据,证明这些验证者自相矛盾,而他们也会受到协议的惩罚。

如果三分之一的验证者同时被罚没,他们的全部有效余额都将被烧毁(每个人最多 32 个以太币)。在这种情况下,假设总共有 1500 万个以太币被质押,那么回滚一个已经最终确定的区块的成本是永久销毁攻击者的 500 万个以太币,并将攻击者驱逐出网络。

这时有必要引用(或转述)Vlad Zamfir 的话:如果用工作量证明去描述权益证明,「这就像是如果你参与 51% 攻击,你的 ASIC 农场就会被烧毁一样」。

想要了解关于经济最终确定性机制的更多信息,可以参阅下文「罚没」部分;想要知道相关原理和依据,请参阅 「Casper FFG」部分。

另见

《参数化 Casper:权衡去中心化、最终确定性的时间、与开销》呈现了对不同质押规模的权衡的早期推理。自那以后,情况有所发展,最显著的是 BLS 聚合签名的出现。

Vitalik 的《宁静升级的设计原理》中的「为什么验证者规模是 32 个以太币?」。

Vitalik 关于实现单个时隙最终确定性的讨论文档从另一个角度探讨了参与、开销、以及最终确定性的权衡空间。

注释

[1] 在比特币白皮书中,中本聪写道,「工作量证明本质上是一个 CPU 一张票」,尽管 ASIC 和矿场早已颠覆了这一点。权益证明是一个质押一张票。

[2] 单体区块链是指所有节点处理所有信息的区块链,无论是交易还是共识相关的信息。迄今为止,包括以太坊在内的几乎所有区块链都是单体区块链。摆脱可扩展性三难困境的一种方法是走向「模块化」。

更多关于一般的可扩展性三难问题的信息:Vitalik 的《为什么分片很好》。

更多关于模块化的信息:Volt Capital 的 Alec Chen 的《模块化区块链:深入探讨》。

[3] 在一篇未完成的论文中,Vitalik 试图量化不同最终确定时间的「协议效用(protocol utility)」。

...对于一个最终确定时间为 f 的区块链 ,其效用大致为;换句话说,将区块链的最终确定时间与一个恒定因子相乘会导致恒定的效用损失。1 分钟和 2 分钟最终确定性之间的效用差异与 1 小时和 2 小时最终确定性之间的效用差异相同。

他继续为此提供了理由(在原文第 10 页)。

[4] 读者练习:试着将一些其它的单体化 L1 区块链放在权衡空间中。

[5] Vitalik 的估计是 5461,这太低了,因为他在计算中省略了 2 的因子。

评论