Polygon 提出 Polygon 2.0 架构,旨在提供无限的可扩展性和统一的流动性。Polygon 2.0 架构由四个协议层组成,分别为质押层、互操作层、执行层和证明层。
原文标题:Polygon 2.0: Protocol Vision and Architecture
原文作者:Polygon Labs
原文来源:polygon
编译:Kate, Marsbit
今天,Polygon Labs的工程团队分享了Polygon 2.0的架构,旨在提供无限的可扩展性和统一的流动性,并实现Polygon作为互联网价值层的愿景。
在其整个历史中,Web3一直面临着一个棘手的扩展问题。尽管可以不断添加新的链来满足对区块空间的需求,但这不可避免地要付出代价:流动性碎片化和糟糕的用户体验。
Polygon 2.0就是解决方案。就像互联网是一个可弹性扩展、统一的信息访问环境一样,Polygon 2.0 也是一个可弹性扩展、统一的价值访问环境:互联网的价值层。
我们相信这个提案可以并且应该指导所有的Polygon协议开发工作向前发展,既作为概念性的北极星,又作为正式的开发框架。
自从Polygon成立以来,它的开发者和社区就一直信奉实验精神。我们积极鼓励构建下一代区块链基础设施的多种途径,而不是试图预测未来并押注于单一方法。这与创造性解决问题的典型过程是一致的,在探索许多想法和方法的分歧阶段之后,紧接着是这些想法和方法整合并产生问题解决方案的融合阶段。考虑到区块链是一个年轻、充满活力的行业,这种方法是一个显而易见的选择。
在最初的分歧阶段,Polygon 开发团队在整个技术堆栈上进行了实验。这里只举几个例子:
•各种区块链架构:侧链、rollup、validums等;
•构建基于ZK的执行环境的多种方法:zkEVM type 1-3, Polygon Miden;
•多个区块链客户端:Polygon Edge,现有的以太坊客户端和自定义客户端,如Polygon zkEVM rollup目前使用的客户端;
•堆栈其他部分的各种解决方案,例如跨链消息传递,质押等。
这个阶段非常有用。尝试了各种方法和技术,并吸取了许多重要的经验教训。是时候开始过滤和整合想法努力了。
在融合阶段,Polygon协议团队和贡献者逐渐在特定的协议架构(即技术堆栈)上达成一致,我们现在很兴奋地将其作为互联网价值层的最佳基础设施。
Polygon 2.0架构被形式化为协议层的集合,旨在一起运行。这种分层架构的最突出的例子可能是互联网协议套件,它的四层(链路层、网络层、传输层和应用层)为互联网提供了动力。每个协议层都有一个特定的子流程,这种逻辑分离简化了架构的推理、实现和升级。
Polygon 2.0由四个协议层组成,每个协议层都支持网络中的一个重要进程:
•质押层
•互操作层
•执行层
•验证层
质押层是基于PoS(权益证明)的协议,它利用Polygon的原生代币为参与的Polygon链提供去中心化。它通过一个通用的、高度去中心化的验证者池和一个内置的再质押模型来实现这一点。
质押层通过两种类型的智能合约在以太坊上实现:
验证者管理器:验证者管理器是一个智能合约,管理所有Polygon链都可以使用的公共验证者池。它执行如下操作:
•维护验证者的注册;
•处理验证者的质押和解除质押请求;
•允许验证者订阅,即重新质押任意数量的Polygon链;
•处理削减事件。
Chain Manager: 链管理器合约管理各个Polygon链的验证者集。每个Polygon链都有自己的链管理器合约,执行以下功能:
•定义所需的去中心化级别,即验证者的数量;
• (可选)定义验证者的附加要求(例如GDPR合规性,除了Polygon的原生代币之外,还持有另一个代币,等等);
• (可选)定义削减条件。
如上所述,质押层提供了“开箱即用”的Polygon链去中心化,从而使这些链的团队能够专注于用例和社区,而不是基础设施。对于验证者来说,它提供了Polygon代币的保证奖励,以及通过收取交易费和从他们验证的链中获得额外代币奖励来获得额外收入流的机会。
互操作层在Polygon生态系统中促进了安全和无缝的跨链消息传递。它抽象了跨链通信的复杂性,使整个Polygon网络对用户来说就像一条单链,通过实现:
•对原生以太坊资产的共享访问:跨链桥通常需要用户铸造合成版本的以太坊代币——这是用户体验的噩梦。互操作层为以太坊提供了一个共享的桥梁,并允许原生以太坊资产的无缝跨链传输。
•无缝的可组合性:互操作层可以支持近乎即时的原子跨链交易,这是Polygon 2.0统一流动性愿景的核心部分。
互操作层扩展了LxLy协议的设计及其消息队列的概念,LxLy协议目前由Polygon zkEVM rollup使用。每个Polygon链都以预定义的格式维护一个原生出站消息队列,其中包含:消息(数字资产,即代币或任意消息),目标链,目标地址和元数据。消息队列具有相应的ZK证明。一旦引用特定队列的ZK证明在以太坊上得到验证,队列中的任何消息都可以被其接收链和地址安全地使用。
以这种设计为基础,我们建议引入一个独一无二的聚合器组件来进一步改进跨链交易,使其接近即时和原子化。聚合器将自己定位在Polygon链和以太坊之间,并提供两种服务:
•接受ZK证明和消息队列的表示(例如Merkle根);
•将ZK证明聚合为单个ZK证明并提交给以太坊进行验证。
一旦ZK证明被聚合器接受,接收链就可以开始乐观地接受入站消息(知道最终和全局的一致性是由ZK证明保证的),这使得跨链交互变得无缝。通过聚合ZK证明,聚合器大大减少了用于证明验证的以太坊gas消耗。
为了确保活动性和抗审查性,聚合器应该以去中心化的方式由上述公共验证者池中的Polygon验证者运行。
执行层使任何Polygon链能够生成批量的有序交易,也就是区块。这个协议层是相对商品化的。大多数区块链网络(以太坊,比特币等)都以类似的格式使用它。
执行层有多个组件,例如:
•P2P:使节点(验证者和全节点)能够发现彼此并交换消息;
•共识:使验证者能够就单一世界观达成一致,即区块链;
•Mempool:收集用户提交的交易,并在验证者之间同步它们;
•数据库:存储交易历史记录;
•见证生成器:生成ZK证明者所需的见证数据。
考虑到这一层已经商品化,但实现起来相对复杂,现有的高性能实现(如Erigon)应该尽可能地重用。
验证层是一种高性能、灵活的ZK证明协议。它为每个Polygon链生成所有交易的证明,包括内部和外部(即跨链)。
验证层有以下组成部分:
•通用证明器:高性能的ZK证明器,由Polygon的ZK研究人员开发,作为Plonky2的继承者,Plonky2是一个递归的SNARK,它本身将证明效率的界限提高了两个数量级,并展示了Polygon ZK团队的专业知识。验证层提供了一个干净的接口,旨在支持任意交易类型,即状态机格式。此外,使用单个证明者使证明聚合和验证变得简单且非常有效。
• (可选)状态机构造函数:用于定义状态机的框架,由Polygon的ZK研究人员开发,作为PIL的继承者,PIL是用于构建初始Polygon zkEVM实现的框架。构造函数抽象了证明机制的复杂性,并允许开发人员通过易于使用的接口构造状态机。它是模块化的,允许开发人员定义可参数化的状态机,从而更轻松地构建、测试和审核大型且复杂的状态机。
•状态机:由证明者验证的执行环境和交易格式的模拟。状态机可以使用前面提到的构造函数来实现,也可以完全自定义,例如使用Rust。Polygon的ZK团队提供了两种状态机实现——zkEVM和MidenVM——社区还可以构建其他状态机(例如zkWASM)。
验证层及其高性能、灵活的证明者提供了几个主要好处,主要是:(i)简单有效的证明生成、聚合和验证,(ii)不同状态机之间的跨链通信。
在接下来的几天和几周内,我们将分享对Polygon 2.0协议层的深入研究。我们将探讨它们如何在较低级别上工作,以及它们如何共同形成互联网价值层的独特的、最佳的架构。
与往常一样,我们邀请社区审查此提案和即将进行的深入研究并提供反馈。让我们一起实现Polygon 2.0 !