原文标题:《引介 | 迁移机制与 Layer2 互操作性》 撰文:Hermez Network 翻译:闵敏 我们很高兴地宣布,我们正在开发 Hermez ZK Rollup 的一项新功能,它可能提升整个 Rollup 生态系统内部的 Layer 2 通信。 Hermez 将在 2021 年初上线 ZK Rollup 网络的第一个版本,并首次实现 Layer 2 交易的大规模迁移机制。 为什么大规模迁移具有变革性?大多数人都已经意识到了在 Layer 1 和 Layer 2 之间进行切换的可用性问题以及因此产生的超高 gas 费的问题。 随着越来越多针对不同用例的 Layer 2 方案涌现,可用性问题会变得更加严重,因为用户在从一条 Rollup 链向另一条 Rollup 链或 Layer 1 智能合约转移代币时需要支付高昂的交易费。这种情况可能会降低用户资金的流动性,打击用户对 Layer 2 方案的兴趣。 在当前范式下,如果 Bob 想要在 Layer 2 方案之间(例如,从 RollupA 向 RollupB)转移资金,他需要先将资金从 RollupA 提取到 Layer 1 上,再将资金从 Layer 1 存入 RollupB。这样一来,Bob 就需要支付两次 gas 费,可能会让 Bob 觉得不划算。 大规模迁移简介这一问题的解决方案很简单,但是实现起来很复杂。Hermez 实现很接近 Barry Whitehat 所提出的概念。 通过大规模迁移,用户能够像处理 Layer 2 用户之间的代币转移那样处理外部 Layer 1 智能合约。 这些 Layer 1 智能合约需要先有一个 Layer 2 地址。用户需要知道这个地址,才能将资金转移到该地址内。 Hermez 协议可以将同一个 Layer 1 智能合约在 Layer 2 上的目标地址所收到的 Layer 2 转账进行分组和提取。 用户的资金要去往的目的 Rollup 智能合约会使用标准的 Hermez 功能从 Layer 1 上提取同一批转账的总金额。虽然该合约需要支付提款手续费,但是这笔手续费可以分摊到同一批次的所有转账上,因此成本并不高。 接收方的 L2 网络协调员需要处理 L1 的取款交易,并从信息中分解出资金的流向,再汇入到与初始 Rollup 的聚合账户对应的新 Rollup 上。 所有这些之所以能够实现,是因为 Hermez 协议在聚合提款交易中包含了在目标 Rollup 上重构 Hermez Layer 2 中的原始转账所需信息,以及对应的账户信息。这可以在目标 Layer 2 中通过电路处理(circuit processing)的方式来实现(如果支持的话)。 假设有一组用户(包括 Bob)都想将代币转移到另一条 Rollup 链上。现在,他们每个人都需要为各自的交易支付 Layer 1 提款手续费。有了大规模迁移机制之后,Hermez 就可以在一笔 Layer 1 交易中处理多笔交易。所有转账交易都能得到执行,转账者需要向 Hermez Layer 2 支付交易费。另外,目标 Rollup 可能会向这些转入交易收取少量费用。Bob 对此很满意。 (责任编辑:admin) |