作者:Shazia
来源:medium
在公开路线图发布不到一个月后,以太坊Layer2扩容解决方案zkSync完成了迈向主网的另一个重要里程碑。动态费用里程碑包括新的费用模型、向账户抽象添加付款人支持的更新和EIP-1559支持。这也让我们离实现zkSync的使命——扩展以太坊的价值和安全性又近了一步。
动态费用
为了确保网络能够运行,需要支付费用:运行L2协议是昂贵的,交易费用必须涵盖这些成本。虽然我们必须收取足够的费用来支付费用,但我们的目标是保持尽可能低的费用。这意味着,在对交易收取“X ETH”这一简单事实的背后,需要进行监测和分析,以确保提议的费用确实是最佳的。
我们还希望用户能够控制他们同意支付的费用。与以太坊不同,交易成本的很大一部分代表了我们需要在L1上发布的数据量,以保证数据可用性。这个价格组成部分取决于L1上的gas价格。运营商根据gas价格计算费用,而zkSync 2.0上的同一笔交易可以根据以太坊上的活动水平产生不同的费用。
这意味着交易费用是基于两个数值计算的:(1)处理交易并为其生成证明所需的计算量;(2)最终完成交易所需的L1 gas费。目标是允许用户控制这两个组成部分。
为了区别于以太坊上使用的术语“gas”,我们使用术语“erg”(尔格)。这个词的灵感来自物理学,在物理学中,“erg”是“功”的量度。
每笔交易成本由几个参数定义。有些参数接近于以太坊上的参数:[ergsLimit]和[ergPrice]。还有一个参数[ergsPerPubdataByte],它限制了发送到L1的calldata的每个字节将花费多少erg。这最后一个参数允许用户同意特定的gas价格,例如,确保交易不会在L1上gas价格飙升期间执行。
有了这些参数,交易费用将根据所需的预期系统资源进行估计,并根据实际使用的资源收取费用。这种费用模式只是初步的实施,预计会改进。从现在开始,我们将在实时环境中积极监控系统,对其进行调整,并听取你的反馈。
我们已经为即将到来的里程碑制定了几项优化方案,这将使我们能够提供更好的用户体验和开发者体验,同时保持尽可能低的费用。
付款人支持
zkSync 1.0带有对用于支付费用的ERC-20代币的原生支持,zkSync 2.0最初也衍生了同样的功能。然而,我们决定加一个更好的功能:“付款人”(paymaster)。
深受EIP-4337(由Vitalik解释)的启发,我们的付款人版本为开发者带来了一套工具,用于构建处理费用支付的新机制。它可以用于许多目的。第一个也是最主要的用途是用ERC-20代币支付费用的能力,但它不限于此。想象一下,例如,一个dApp可以补贴你的交易,让它们变得更便宜(或者完全免费)。该系统非常灵活,允许开发者完全控制支付流程。
这一功能还使对ERC-20代币的原生支持变得多余。用户会注意到,他们最初需要ETH支付一些dApp上的费用,但随着开发者将他们的应用从使用费用代币转向付款人,用户将能够使用其他代币来支付费用。请参阅zkSync 2.0文档,了解如何做到这一点,并构建自己的付款人。
这是zkSync对帐户抽象支持的一个重大改进,而且不是最后一个。在接下来的几个月里,我们将继续优化界面并部署改进。
重要提示:为了激励zkSync基础设施的多样性,我们的主网不会附带一个“默认”付款人。这确保了每个人都是平等的,网络中不存在被认为是特权的实体。
EIP-1559支持
EIP-1559成为以太坊交易的新标准,现在zkSync 2.0测试网支持它。
虽然你可以发送EIP-1559交易,但zkSync的具体细节与以太坊不同。例如,所有的交易都是按照先到先得的原则来处理的,所以不需要优先付费或付小费。目前,EIP-1559交易只是一种格式,而不是协议逻辑中的一层新功能。
但是,我们计划在EIP-1559上构建几个功能。更多信息将在即将到来的发布中分享。
其他
加入这次发布的其他更新包括:
现在支持Vyper编程语言。参见入门示例。
Hardhat编译器插件现在可以下载编译器二进制文件而不是Docker镜像。
zkEVM兼容性改进:我们积极听取你关于智能合约行为问题的反馈,我们的虚拟机现在与以太坊的行为更加一致。
如果你在重启后遇到交易问题(等待处理的交易等),请重置你的Metamask钱包。如果这还不能解决你的问题,请加入我们的Discord或发送电子邮件到[email protected]。
展望未来
我们正按计划在59天内上线主网。敬请期待下一次激动人心的发布。
同时,通过加入我们的测试网:v2.zksync.io,在zkSync 2.0上移植或启动你的项目。