理解以太坊 PoS 原理:模块化设计和两条区块链

Foresight · 2023-03-24 08:36

PoW

Ethereum

ETH

以太坊的长期路线图中,L1 充当结算层,Rollup 作为执行层。


撰文:Patrick McCorry

翻译:0xFelix

校对:Franci,ECN


区块大小之战最终是关于去中心化的争斗 - 应该尽可能地经济实惠?还是应该尽可能地可验证?


对于区块链可扩展性的追求让社区在过去 10 年中提出了几个雄心勃勃的提案,问题的核心是一个基本的权衡:


  • 可负担性:可以负担得起在网络上进行交易的用户人数规模。
  • 可验证性:具有硬件和带宽等硬性要求以实时验证交易完整性的用户人数。


许多现代区块链系统将可负担性和最大用户数量置于其他一切之上 - 假定网络运营者愿意尽最大努力帮助实现这一目标。这种假设,运营者应该努力工作,会使区块链系统向中心化方向发展,因为它减少了可以作为运营者参与的人数。特别是对于需要运营者从经过批准的制造商购买硬件的网络。


并不是说现代区块链设计是错误的,但迄今为止,它们都未能像比特币或以太坊一样获得同样的关注。在我们看来,其中一个突出原因是这种基本权衡。这是比特币区块大小之争的核心,社区最终决定优先考虑谁可以验证网络的完整性,而不是长期的可负担性。


希望就像以太坊一样,可负担性可以通过闪电网络、侧链或 Rollup 推到另一个层级。以太坊社区、路线图和价值观都源于相同的背景。唯一的区别在于以太坊有一种根深蒂固的社会契约,使其社区能够实际改变基础平台以克服这个困境。


如果有一个与权益证明无关的唯一收获,那就是在去中心化网络的情况下,TPS 指标是毫无意义的。可扩展性不仅仅是以任何代价增加吞吐量,而应定义为以下内容:


「增加交易吞吐量,同时仍遵守运行完全验证节点所需的相同的计算、带宽和存储要求。」


作为读者,这个讨论可能看起来很奇怪。为什么我们要谈论区块链可扩展性?这与权益证明有什么关系?更重要的是,由于升级不会立即以有意义的方式增加交易吞吐量,这讨论似乎更加离题。原因在于该升级的功能被低估了,即可为未来的可扩展性解决方案奠定基础。


单一型区块链到模块化区块链




一个新的思维模型 —— 共识参与者不需要做所有的艰苦工作,他们只需验证并同意工作是正确的。


让我们快进几年,快进到区块大小战争之后。现在,我们有更好的术语来说明这个困境如何影响区块链系统的设计,即单一型区块链或模块化设计。


单一型区块链。这是一种试图寻找通用解决方案以解决所有硬件瓶颈的区块链协议和实现机制,例如如何执行交易、如何广播数据以及如何存储数据库。参与的网络运营者必须执行所有繁重的工作并运行整个单一型的实现,这很大程度上限制了谁可以参与共识协议。



模块化设计将资源按层级重新定义 —— 使得团队能够构建软件以解决每个层级的问题。


资源形成分层。以太坊权益证明设计及其长期路线图背后的重要力量之一是将每种资源定义为一个新层级。通过成为一个层,可以将问题分离并独立,从而允许团队构建新的软件客户端来解决每个特定的问题。这就是所谓的模块化区块链设计。


关于模块化方法最重要的理解可能是它如何改变共识参与者的看法。它不再是让他们负担最大的工作量。相反,它的重点是:


「区块提议者最少需要做什么工作?有没有可能把所有不必要的困难工作给到别的地方?」


回答是肯定的


验证者作为轻客户端。区块链协议的设计不再是围绕最大化网络运营者的工作。事实上正好相反,网络运营者(验证者)应该是轻客户端,只需要检查和验证在别的地方已经完成了的工作。


这就是为什么我个人喜欢「验证者」这个名字。他们唯一的工作就是验证、达成一致(共识),最终保护存储在以太坊数据库中的所有用户资产。从长远来看,参与其中应该只需要商业上可用的硬件和良好的互联网连接。


此外,通过使验证者成为轻量级客户端,它可能最终解决了运行节点软件的利他性天然症结。用户终于可以因验证区块链并实时检查其完整性而获得报酬。此外,我们也可以检查他们是否在做这项工作。


两条区块链



合并是将以太坊规范迈向模块化设计的第一个里程碑。


它将交易排序的全局共识和交易的最终执行分离。与此同时,它引入了两个新的区块链:


1)执行区块链。处理用户生成的交易和智能合约执行的原始以太坊区块链。有时被称为 ETH1 区块链。


2)共识区块链。专用于共识层的区块链。它负责决定执行区块链的规范链,并记录权益证明的转录。有时被称为信标区块链。


两个软件客户端。工作量证明 PoW 模块以及通常处理决定规范链的任何代码,都可以从原始以太坊节点软件中删除。整个执行环境保持完整,并且现在称为执行客户端。为了检索规范的执行链,它会向处理共识层的软件客户端(「共识客户端」)轮询新块。


由于执行区块链和客户端基本上保持不变,因此我们的文章将重点关注实现权益证明协议的共识层。


多客户端生态系统。由于上述分离,出现了几个独立尝试解决共识或执行问题的团队。当然,在这两种情况下,他们必须遵循通用规范,但可以自由地尝试实现细节。目前存在一个蓬勃发展(且出乎意料地资金充裕)的多客户端生态系统。例如,共识客户端包括 Teku 和 Prysm,而执行客户端如 Geth、Erigon 和 Nethermind。


鼓励验证者运行不同组合的共识和执行客户端。这是防范共识级错误的第一道防线,希望相同的错误不会在多个独立实现中复制。这种软件工程实践称为 「N 版本」编程。


如果验证者的绝大多数不遵循此建议,则可能导致末日情景。我们很快就会了解更多信息。


写在最后


细心读者可能已经注意到了这里的数据可用性、执行和结算层的使用,但是权益证明以太坊是为了共识和执行层奠定了基础。


长期的路线图是朝着以下方向发展:


共识 → 数据可用性。所有验证者都达成了对数据排序的一致意见,proto-danksharding 有助于巩固这一角色。


Rollups → 执行层。Rollups 承担执行层的角色。


ETH1 → 结算层。原始的以太坊区块链是保护所有用户定义资产的信任基础。


这种命名可能会令人困惑,依赖于以太坊协议的未来迭代。我们现在只是简单地称之为共识和执行层 —— 因为它已经被实现和部署了。

免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表Bi123的观点或立场

相关推荐

上一篇:如何通过 ZKP 构建 Web3 产品?

下一篇:Sui 联创自述:专注为开发者提供持续服务,「执念」让我们快速成长

扫码下载APP添加官方微信
行情机会交流