我们Polygon Hermez团队目前正在致力于 zkEVM 的实现,而这一挑战要求我们为去中心化的 L2 协议研究和开发一种新的共识机制——proof of efficiency(PoE)。
这种共识机制利用了 v1.0 中现有的 Proof-of-Donation(捐献证明) 的经验,旨在构建第一个去中心化 zk-rollup 并支持多个协调者的无许可参与,以便在 L2 中批量生产。
我们仍在考虑几个选项并针对 v2.0 (zkEVM) 改进此协议,但我们很高兴与社区分享我们的想法并收到反馈。
背景
在 zk-rollups 中,去中心化的挑战是巨大的,迄今为止很难找到一个好的解决方案。发生这种情况是因为 PoS 等协议在 L2 上存在一些问题,并且需要以高性能生成 zk 有效性证明(这对于证明者来说是非常计算密集的),以便网络可以保持其服务水平。将生成一个交易批次(batch)(L2 区块)的权利分配给任何随机验证者并不能保证这一点。
捐赠证明/燃烧证明(PoD/PoB)基于去中心化拍卖模型,以获得在特定时间范围内生产批次的权利。在这种情况下,设置了经济激励措施,因此验证者需要非常高效才能具有竞争力,这代表了一个很大的进步。
该模型的一个问题是,在特定时间内,网络由恶意的单个参与者控制,即使有办法减轻影响,也很难避免对服务级别的零影响,尤其是在自举阶段。
另一方面,拍卖协议对于协调者/验证者来说是非常昂贵和复杂的,同时只有最有效的才会得到奖励。他们很难实现自动化,而且预测的复杂性很高,因为拍卖需要提前一段时间出价。
先前协议的另一个问题是选择收敛到“赢家通吃”模型的“最佳”运营方的有效性。这不允许表现稍差的运营方参与竞争。结果是,由于这种情况产生的抗审查限制,控制网络的运营方变得非常中心化。
新要求
这个新协议旨在涵盖此类 L2 zk-rollup 共识模型所需的关键属性:
生产 L2 批次的无许可访问
效率是网络性能的关键
避免任何一方的控制
防止恶意攻击
与网络中的价值成正比的总验证工作量
效率证明 (PoE) 模型
这个创建批次的协议由一个两步模型组成,该模型在不同方之间拆分活动。 参与的第一方是 Sequencer,第二方是 Aggregator。
排序器(Sequencers)
在此模型中,Sequencers是从用户那里收集 L2 交易的各方,因此他们通过发送包含所有选定 L2 TX 数据的 L1 TX 来选择和预处理网络中的新 L2 批次。 任何人都可以成为Sequencers,这是一个无需许可的角色,由通往网络的网关组成。
有趣的是,这些提议的批次将记录在 zk-rollup 模型的 L1 事务中(或者在 Validium 的情况下记录在不同的数据可用性网络中)。
当基于他们拥有的激励决定这样做时,就会发生此批处理提案:
一种潜力是其资金池中交易的经济价值。
或他们需要满足用户的服务级别(费用可能会相应变化,因为它们将由Sequencers要求)。
为了向网络提议一个新批次,Sequencers将需要支付 L1 网络的gas费以生成包含所有批次交易数据的 TX,并且该协议定义了需要存入的 $MATIC 代币的额外费用。这样,Sequencers就有动力提出具有有效交易的有效批次。
批处理费用将根据网络负载而变化,这将根据协议智能合约自动调用的参数计算。
这些批次,以 L1 交易的格式,带有 CALLDATA 中的信息,将用作 L2 网络的数据可用性,并且任何新的无许可节点都将能够同步状态,也可以从该信息中重建。
一旦被挖掘,这些数据可用性 L1 交易定义了将被执行的 L2 TX 和特定的顺序。这会创建一个确定性的新状态,可以由网络节点将其计算为虚拟的未来状态。
当然,当新状态(ZKP)的有效性证明在 L1 中生成和挖掘时,这个新状态将被解决。这对应于协议的第二部分。
聚合器(Aggregators)
当然,zk-rollups 的主要优势之一是有效性证明提供的交易的快速确定性。 该协议试图提高这些证明的有效性。
Aggregators是在效率证明共识协议中以无许可方式参与的各方。
在这种机制中,创建 L2 新状态的有效性证明的权利(当然,在 txs 中收取部分费用)只需成为第一个Aggregators即可获得。
它的工作方式如下:L1 中的 Sequencers 提出的批次按照它们在 L1 中的出现位置进行排序,并包含交易数据。 PoE 智能合约将接受更新到新的有效状态的第一个有效性证明,包括一个或多个提议的批次。
Aggregators需要定义他们的目标以触发证明生成并根据他们自己的策略进行竞赛。
例如,如果有包含少量 TX 的批次,一些Aggregators可能会发现在有更多价值之前生成证明并生成包含 N 个提议批次的状态变化的证明并不有趣。其他Aggregators可能有不同的策略。
对于比赛迟到的Aggregators,如果发送的证明没有提出新状态,智能合约将使用 Revert 执行,并使用整个状态数据库的 merkle 树哈希进行检查。因此,不能成为第一个是以生成证明为代价的,但大部分的 gas 费用都被收回了。
当然,只有当Aggregators正确处理了提议的批次时,证明才会存在,这意味着它们有一个顺序并且所有这些都需要处理。这是一种类似于 Polygon Hermez v1.0 中实现的“Force tx”的机制,在这种情况下有助于避免审查。
这种机制避免了对单方的控制和许多潜在的攻击,因为任何 Sequencer 都可以提出一个批次,但这是有成本的。Aggregators也可以选择以无许可的方式参与,但如果他们不这样做,那么早晚会有对经济价值感兴趣的人去做。在我们的例子中,Polygon Hermez 网络将启动一个引导Aggregators,以支持在引导阶段有一个特定频率的新有效性证明。
费用将按以下方式分配:
来自 L2 TX 的费用将由创建有效性证明的同一 aggregator 处理和分配。
所有的 TX 费用将发送到每批对应的 Sequencer。
Sequencers 为创建批次而存入的费用将发送到 aggregator ,该 aggregator 将该批次包含在有效性证明中。
结论
PoE 共识机制旨在解决 zk-rollups 的 L2 中去中心化和无许可验证者的一些挑战。
它定义了一个两步模型,它支持:
无许可Sequencer作为协议的参与者受益,也是网络可扩展性的来源。
与 Volition(zk-rollup 和 Validium)模式完美兼容的数据可用性模型,可以为用户启用不同的服务层。
从数据可用性和基于有效性证明的“最终”状态计算“虚拟”状态。这种架构可以通过基于不同标准设置有效性证明频率来为去中心化 zk-rollup 节省大量成本,但不是确认交易的唯一解决方案。
无需许可的聚合器作为代理执行加密证明生成的专门任务的空间,预计对于 zkEVM 协议来说成本很高。它为他们提供了一个非常简单直接的模型来管理他们的激励和回报。
针对 L2 网络问题的本机保护:例如来自恶意行为者的攻击或选定验证者的技术问题。
激励模型:以最大化网络最终性的性能
作者:Polygon Hermez项目负责人David Schwartz和开发人员Jordi Baylina