单 slot 终结性 - 以太坊的持续演进

  • 4pillars
  • 发布于 2023-10-26 18:19
  • 阅读 21

本文深入探讨了以太坊路线图中的单 slot 终结性(SSF)升级,该升级旨在将区块的提议和最终确认在单个 slot 内完成。

主要收获

  • 以太坊网络正根据其路线图不断升级,以提高可扩展性和去中心化。

  • 单槽最终性 (SSF) 是一种升级,允许在一个槽中同时提议和最终确定一个区块。它是“The Merge”长期计划的一部分。

1. 简介

1.1 以太坊路线图

来源:Vitalik Buterin

以太坊网络正在发展。上面的路线图是 Vitalik Buterin 在 2021 年底介绍的以太坊网络路线图。该路线图由 The Merge、Surge、Verge、Purge 和 Splurge 五部分组成。这些并非按顺序实施;相反,升级正在不同的领域并行进行。我们将在本文中讨论的升级是单槽最终性(在图中显示为单槽确认),它包含在 The Merge 的长期计划中。但是,在我们深入研究之前,让我们简要了解一下其他升级的目标:

  • The Merge - 它指的是以太坊网络从以前的 PoW 到 PoS 的过渡。2022 年 9 月 15 日,The Merge 成功实施。合并过程如下所述,PoW 以太坊的执行层进行了一些修改,并作为信标链的一部分进行合并。PoS 过渡的最后一步是 Shapella 升级,该升级允许提取在信标链上质押的 ETH,于 2023 年 4 月 12 日成功完成。从长远来看,除了单槽最终性之外,还有通过密码学隐藏区块提议者信息的秘密领导者选举以及更高效地聚合以太坊网络签名的更好的签名聚合的计划。

来源:Danny Ryan

  • The Surge - 此升级与 Danksharding 相关,使 rollup 网络能够有效地在以太坊网络上存储交易数据。在 Danksharding 中,引入了一种新的数据结构 Blob。考虑到 Blob 相对于当前 calldata 的大小,必须首先引入 The Splurge 中的 PBS(Proposer-Builder Separation),以避免网络中心化问题。实施 PBS 和 Danksharding 预计需要大量时间。因此,EIP-4844 (Proto-Danksharding) 引入了 Danksharding 的易于实施的组件,目前正在积极讨论中。仅在 Danksharding 之前引入 EIP-4844,预计可以改善各种 rollup 网络的可扩展性。

来源:Vitalik Buterin

  • The Verge - 此升级与弱无状态的概念相关。目前,以太坊网络中的节点需要存储关于以太坊网络整个状态的信息,以验证区块的有效性。然而,随着以太坊用户群的增长和更多 dApp 的出现,总状态的大小不断增加,可能会导致网络中心化问题。为了解决这个问题,The Verge 计划用 Verkle Tree 替换当前的 Merkle Patricia Tree。使用 Verkle Tree 可以显著减少证明特定状态包含在区块中所需的 witness 的大小。因此,节点只需要存储受区块影响的状态和 witness 信息来证明区块,从而允许硬件规范较低的节点参与验证以太坊区块。预计这将加强网络的去中心化。

来源:Vitalik Buterin

  • The Purge - 专注于减轻以太坊网络中过去数据的负担。随着时间的推移,以太坊网络上存储的历史数据量不断增长。这可能会成为未来加入的节点的负担,从而带来网络中心化的风险。为了解决这个问题,The Purge 通过 EIP-4444 引入了历史过期,允许修剪超过一年的数据。除此之外,The Purge 还包括状态过期升级,允许从树结构中删除在一定时间内未被访问的较旧状态。

  • The Splurge - 它由未专门包含在前面四个中的升级组成。它包括备受讨论的账户抽象 (AA),但最值得注意的升级是与 MEV 去中心化相关的 PBS。PBS 将当前的验证者分为区块提议者和区块构建者,并将 MEV-Boost 机制嵌入到以太坊协议中。目前,MEV 利润通过 MEV-Boost 实现相当程度的去中心化。PBS 的引入有望解决审查问题,从而进一步为 Danksharding 的引入铺平道路。

2. 单槽最终性

单槽最终性 (SSF) 是指区块的提议和最终确定可以在单个槽内同时进行的升级。此升级是“The Merge”长期计划的一部分。作为参考,一个槽是可以在其中提议一个区块的时间范围,相当于 12 秒。此外,一个 epoch 由 32 个槽组成,总共 6.4 分钟。

2.1 最终性

目前,以太坊区块最终确定大约需要 15 分钟(64-95 个槽)。当一个区块被最终确定时,它基本上意味着除非愿意冒着因网络级别的攻击而导致的大规模 token 罚没风险,否则该区块永远无法更改或删除。换句话说,这就像给区块颁发奖章,声明“此区块已最终确定,我们可以安全地信任它”。

然而,以太坊区块最终确定所需的时间太长。在区块最终确定之前,它可能会发生变化。因此,在此期间,认为交易已 100% 确认是危险的。这种延迟对区块最终性至关重要的服务(如桥或中心化交易所)来说造成了很大的不便。一些中心化交易所甚至发现等待 15 分钟才能使区块达到最终性太慢了。因此,就像在 PoW 以太坊时代一样,他们认为大约 12-20 个确认(大约 2-4 分钟)已最终确定,并在此时间范围内进行存款和取款。

有趣的是,这 15 分钟的窗口实现了平衡。它为个人验证者提供了充足的机会参与共识过程,同时保持了合理的服务体验。那么,为什么以太坊区块的最终性授予如此晚呢?这是因为以太坊的共识算法使用 LMD-GHOST 和 Casper FFG 方法。它具有在基于链的共识和传统的 BFT 共识方法之间进行妥协的性质。这里提到了几个技术术语,所以让我们逐一检查它们。

2.2 两种类型的共识算法

根据 FLP 不可能性定理,该定理指出在异步网络中不可能完美地满足安全性和活跃性,现有区块链的共识算法可以大致分为两类:

  1. 基于链的共识 - 它优先考虑活跃性而不是安全性。由于节点之间用于共识交换的消息数量很少,因此参与网络所需的最低硬件规范较低。这意味着许多节点可以参与共识过程,这是一个优势。然而,一个缺点是区块最终性的概念不存在,导致频繁的分叉。比特币网络就是一个很好的例子。按照惯例,比特币网络中的一个区块在 6 个确认后概率性地被假定为已最终确定。

  2. 传统的 BFT 共识 - 它优先考虑安全性而不是活跃性。由于节点之间用于共识交换的消息数量很大,因此参与网络所需的最低硬件规范很高。这意味着参与共识过程的节点数量非常有限,这是一个缺点。然而,一个优点是区块最终性是通过交换的消息来确定的,并且可以在创建下一个区块之前将最终性授予一个区块。Tendermint BFT 共识算法是一个值得注意的例子,并且基于 Tendermint core 的 app-chain 上的区块在创建后不久就被授予最终性。

2.3 以太坊当前的位置

在 The Merge 之后,过渡到 PoS 算法,以太坊网络使用 LMD-GHOST 和 Casper FFG 共识算法,表征了上述类型之间的中间点。以太坊网络主要使用基于 LMD-GHOST 的基于链的共识,类似于比特币网络。然而,它类似于传统的 BFT 共识,因为它通过在节点之间共享每个槽的数千条消息(准确地说,是 attestation)来授予区块最终性。从本质上讲,可以说以太坊通过捕捉两种共识方法的最佳之处来达到平衡。

那么,attestation 到底是什么?LMD-GHOST 是一种共识算法,用于在网络中发生分叉时确定哪个链是规范链。相比之下,Casper FFG 是一种定期授予区块最终性的共识算法。在这两种算法中,attestation 都起着至关重要的作用。Attestation 是验证者投票给他们认为有效的区块的过程。

来源:eth2book

每个 epoch,所有验证者都会被分配到 32 个槽中的一个,每个槽有 64 个委员会,每个委员会由 256 个验证者组成。这意味着假设你是以太坊验证者,你每个 epoch 都有一次机会进行 attestation。你可以验证并在验证你分配的槽中提议的区块的 attestation,如果认为有效,则对其进行签名。在一个委员会中,验证者为一个区块生成 attestation 签名,一些随机选择的聚合器收集这些签名并将其传递给区块提议者。

如果在以太坊区块链中发生分叉,则规范链由通过 LMD-GHOST 收到超过 51% 的 attestation 的区块确定。同样授予最终性的 Casper FFG 算法也为收到超过 2/3 的验证者的 attestation 的区块提供最终性。这突出了 attestation 过程在以太坊网络中的重要性,验证者在其中投票给有效的区块。

2.4 去中心化 / 时间 / 开销之间的权衡

以太坊网络中当前的 15 分钟时间范围是两种共识方法之间的一种折衷。它为验证者(包括个人验证者)提供了足够的时间来 attestation 特定区块,覆盖了 2/3 的已质押 ETH。是否有可能比 15 分钟更快地授予最终性,比如 15 秒?如果验证者的最低硬件要求增加,他们可以快速处理更多的消息。然而,这可能会损害去中心化。

来源:Vitalik Buterin

这意味着网络的去中心化、区块最终确定所需的时间以及网络上的开销之间存在权衡关系。随着我们增加验证者的数量以增强去中心化或更快地处理区块的最终性,网络必须处理的消息数量也会增加,因此需要更高的硬件规范。这最终会损害网络的去中心化。如图所示,基于链的共识强调非常高的去中心化,但不授予区块最终性。另一方面,传统的 BFT 共识可以快速授予最终性,但会增加网络开销,从而降低去中心化。

理想的系统必须平衡去中心化、时间和开销。现代以太坊通过将最低质押金额设置为 32 ETH,以防止无限数量的验证者,并将最终确定时间设置为 15 分钟,从而确保个人验证者能够充分参与共识过程,从而找到了折衷方案。

然而,查看图表,很明显,正如 Vitalik 所指出的那样,今天的以太坊并没有完全位于 45 度对角线上。即使网络开销增加了,其去中心化程度也被评为更高。尽管存在明显的权衡,但这是如何实现的呢?答案在于 BLS 签名聚合。此方法有效地将大量验证者的签名聚合为单个签名。通过引入这种高效的签名系统,已经建立了一个环境,在该环境中,超过 500,000 个验证者可以参与,同时授予最终性,正如当今的以太坊网络中所见。

2.5 单槽最终性 (SSF)

15 分钟对于一个区块来说仍然需要很长时间才能达到最终性。目前,一个以太坊区块至少需要 2 个 epoch(相当于 64 个槽)才能最终确定。为什么我们不能在单个槽中提议一个区块后立即授予最终性呢?这正是以太坊路线图中即将推出的 SSF 升级旨在实现的目标。

为了在一个槽中提议和最终确定一个区块,必须有超过 2/3 的大量验证者为该槽提供他们的 attestation。目前,以太坊网络中的验证者仅被分配到 epoch 中的特定槽,只允许一次 attestation,这使得这种情况是不可能的。但是我们能否在单个槽的短时间内(12 秒)处理来自无数验证者的众多 attestation 呢?

幸运的是,这是可行的。在过去的三年里,BLS 签名聚合的效率显着提高。此外,关于在网络级别处理和收集大量消息和数据的知识也已积累了很多。考虑一个有 1,000,000 个验证者的场景。验证单个签名需要 500 纳秒,这意味着验证 1,000,000 个签名仅需 500 毫秒。因此,虽然签名验证不是问题,但真正的挑战是签名聚合。

来源:Vitalik Buterin

当今的以太坊对每个槽使用由 256 个验证者组成的委员会,并且每个槽存在 64 个委员会。由于签名是在委员会内聚合并提交的,因此签名聚合不存在重大问题。但是,如果应用 SSF(单槽最终性),则必须收集一个槽内众多验证者的所有签名。为此,委员会的数量可以从 64 个显着增加,一个委员会内的验证者数量可以从 256 个增加,或者可以引入一个额外的签名聚合层。这些方法可能会给 P2P 网络带来更大的负担并增加延迟。因此,这是一个目前正在研究的主题。

为此提出的一个突出的解决方案是“超级委员会”。例如,如果我们假设当前以太坊网络中有 500,000 个验证者,则并非所有验证者都会在单个槽中执行 attestation;只有一部分会。虽然这减少了网络上的负载,但参与人数较少可能会降低经济安全性。据报道,Vitalik Buterin 在以太坊研究人员的内部讨论中听取了意见,表明平均而言,大约 125,000 个验证者的网络安全性就足够了。虽然这个数字可能会因 ETH 的价格而异,但由于以太坊使用 PoS,因此如果实现了 SSF,则可以考虑降低这种级别的安全性。

最后,在查看 SSF 时,必须考虑 LMD-GHOST 的作用。回顾一下,LMD-GHOST 是以太坊网络中发生分叉时确定规范链的共识算法,而 Casper FFG 确定以太坊区块的最终性。但是,如果应用 SSF,则每个区块将立即最终确定,从而降低了分叉的可能性。这是否意味着不再需要 LMD-GHOST?

在具有 SSF 的以太坊网络中,如果每个槽定期执行超过 2/3 的 attestation,则不需要 LMD-GHOST。但是,如果由于错误或攻击,没有执行超过 2/3 的 attestation,则区块将不会最终确定,从而导致潜在的分叉,其中 LMD-GHOST 共识算法变得必要。从本质上讲,虽然当前的以太坊网络与 LMD-GHOST 和 Casper FFG 共存,但未来的具有 SSF 的以太坊网络将使用两种共识算法,但不是同时使用 - 只会根据情况使用其中一种算法。

3. 最后想法

总而言之,SSF 旨在将实现区块最终性的时间从超过 2 个 epoch 减少到单个槽。这将带来服务层面上巨大的用户体验改进。随着区块最终确定时间的缩短,交易所和桥梁上的存款和取款所需的时间将大大减少,从而为用户提供极大的便利。

以太坊网络在不断发展。从其耗电的 PoW 开始,它成功过渡到环保的 PoS。现在,它的重点是通过 EIP-4844 提高 rollup 网络的可扩展性,并专注于数据分片。未来有多个升级在等待,例如 Verkle 树。本文中讨论的 SSF 是在实施所有上述升级之后遥远未来的一个主题。尽管如此,SSF 提出的方向,即在众多验证者的情况下迅速处理最终性,似乎是所有区块链都应遵循的最终路径。让我们继续关注以太坊的旅程。

感谢 Kate 为此文章设计图形。

  • 原文链接: 4pillars.io/en/articles/...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
4pillars
4pillars
江湖只有他的大名,没有他的介绍。