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