火星链 火星链
Ctrl+D收藏火星链

zkSync:zkSync 2.0:你好 以太坊

作者:

时间:1900/1/1 0:00:00

介绍

面对最大的技术挑战,我们正朝着在EVM兼容环境中部署智能合约开始冲刺。测试网的第一个版本已经上线:您已经可以使用区块浏览器查看zkSync2.0上的活动。在这篇文章中,我们将深入解释每个关键组件、提供进度更新以及下一个版本的计划。

主要成就

在密码学方面,zkEVM的指令集已经完成,并且两个实现都完成了:在电路中和在执行环境中。

在编译器方面,用Solidity和Zinc编写的智能合约现在可以编译成zkEVM字节码。

在核心基础设施方面,全节点集成完成,能够成功部署和执行编译后的智能合约。

虽然zkEVM和核心2.0基础设施已准备好公开,但编译器需要更多的工作来正确覆盖所有边缘情况。为了提供更全面的开发人员体验,我们决定在编译器100%可靠后立即开放对zkEVM、编译器和核心SDK的访问。

zkSync2.0与以太坊的比较

大多数事情看起来和感觉都一样。以下是一些重要的区别:

Solidity智能合约

支持以太坊中的大多数操作码!但是,也有一些例外:

此版本不支持ADDMOD、SMOD、MULMOD、EXP和CREATE2操作码,但将来会支持。

我们暂时不支持KECCAK256操作码,而是会自动将其所有调用替换为对另一个抗碰撞哈希函数的调用。KECCAK256稍后将作为预编译引入。

zkSync:EIP-4337为避免硬分叉做出妥协:金色财经报道,zkSync在社交媒体发文解释了EIP-4337和zkSync Era对原生账户抽象之间的区别,zkSync表示为了避免硬分叉,EIP-4337做出一些妥协,比如外部拥有账户 (EOA)和账户抽象 (AA)单独的交易流、单独的内存池、单独的验证器/捆绑器角色、外部拥有账户不能使用Paymasters,而zkSync通过在协议级别集成账户抽象对EIP-4337进行了改进,上述功能均可实现。[2023/3/30 13:33:53]

我们决定不包含SELFDESTRUCT操作码,因为以太坊计划将其删除。

我们可能会取消对完整256位XOR/AND/OR操作码的支持,因为这些仅存在于已编译的用于位掩码的Solidity代码中。这可以由编译器使用其他操作码来完成。

费用

在zkSync2.0中,有一个不同的gas概念。交易价格将根据当前的L1gas价格和ZKP生成成本而波动。智能合约调用将具有最大数量的zkEVM步骤和存储写入参数。

Web3API

下一个版本将包括我们的Web3API实现,它将与以太坊文档定义的Web3标准兼容。事件将开箱即用,所有服务都可以轻松集成。

zkSync包含L1没有的功能,例如已提交和最终块的概念。因此,将有其他方法可以让开发人员更精确地控制数据。Web3客户端代码将接收与以太坊相同的数据,但可以使用`zksync_`命名空间请求特殊信息。

数据:zkSync本周交易量超200万笔,ETH/ERC 20存入规模超4000万美元:3月25日消息,据Dune Analytics数据显示,以太坊Layer 2扩容解决方案zkSync本周交易量达到约为2,025,135笔,7天日均交易量均值创下历史新高,当前zkSync总交易量已接近2000万笔,其中以太坊链上总交易超100万笔。此外,zkSync存入的ETH/ERC 20总量突破8.4亿美元,本周存入金额约为41,467,531美元。[2023/3/25 13:25:47]

由于zkSync有多种交易类型,并且使用EIP712签名,因此`eth_sendRawTransaction`数据的格式会与L1不同。但是,编码对应于以太坊ABI,因此支持它并不困难。

签署交易

zkSync2.0中的交易可以通过两种方式进行授权:

用户可以通过签署EIP712消息,使用他们的普通以太坊钱包签署交易。

任何账户都可以设置公钥来创建我们内部的Schnorr签名来签署交易。这允许基于智能合约的钱包与zkSync2.0进行交互,而无需发送L1消息的额外成本。

存储效率提升

每个块仅应用一次存储槽覆盖。这意味着如果多个用户与单个AMM合约交互,则AMM合约的存储槽只会被覆盖一次。这允许排序器稍后向用户退还单次写入的共享成本。

预编译

Layer2网络zkSync总锁仓量达到1.41亿美元,创历史新高:金色财经消息,据L2BEAT数据,基于零知识证明的Layer2网络zkSync总锁仓量突破1.4亿美元,创历史新高,7日增幅85.53%。此外,最近一周内zkSync网络资金净流入接近2500万美元。[2022/3/21 14:09:00]

“预编译”机制是计划中的,但将在稍后发布。我们计划首先支持keccak256、sha256哈希和ECDSA恢复原语。根据需求和复杂性,可以考虑包含其他预编译,例如Blake2f轮函数。

进一步的限制

zkSync2.0的第一次迭代可能会对每笔交易施加32次智能合约调用的额外限制,直到实施适当的记账机制。

执行跟踪将有一个硬性限制,但它与以太坊区块大小的当前限制相当,不应影响大多数协议。

可能还有更多限制,但我们的目标是在最终版本中将它们减少到绝对最小值。

深入了解zkSync2.0架构

您可能听说过区块链三难困境,但在扩展以太坊时,还有第四个因素:可编程性。所有当前的扩展解决方案都存在于为了可扩展性而牺牲一些安全性、去中心化和可编程性的范围内。zkSync2.0的设计结合了以下2项技术突破,最大限度地发挥了所有4项功能:

zkEVM:为我们与EVM兼容的zkRollup提供动力的引擎,这是唯一具有L1安全性和可靠性智能合约支持的解决方案。

ZKSwap加入DeFi Alliance联盟加速器计划:官方消息,二层交易协议ZKSwap (ZKS)宣布正式加入DeFi Alliance 联盟加速器计划,同期加入加速器计划的项目还包括Sushiswap协议和Bancor协议等。未来,ZKSwap 将与联盟其他成员共同推进 DeFi 相关技术的采用和发展,壮大 ZKSwap Layer2 生态,共建透明、低成本且可信任的分布式金融系统。

ZKSwap 预计将于6月底正式上线 ZKSwap V2 版本,并计划在7月份于以太坊主网上线二层网络的 NFT 协议。[2021/5/31 22:59:05]

zkPorter:一个链下数据可用性系统,其可扩展性比汇总高2个数量级。

由于zkEVM和zkPorter是可互操作和可组合的,因此zkSync2.0能够显着优于所有其他扩展解决方案。

ZKSwap于今日18:00正式开启第五期流动性挖矿:官方消息,ZKSwap将于北京时间2021年5月24日18:00开启第五期的流动性挖矿(PoL)和交易挖矿(PoT)活动,本次活动持续14天,至6月7日18:00结束。PoL总奖励约为130万ZKS,PoT总奖励约为15万ZKS。

为再度提升ZKSwap使用体验和激励ZKS持有者,本次活动延续了上一期流动性挖矿的规则,在大幅削减交易对挖矿产出的同时,把更多的挖矿奖励给到交易需求量大的交易对(整体ZKS挖矿产出降低30%),其中大部分交易对的奖励减少25%,少部分年化过高的交易对奖励降低50%。此外,ZKS单币挖矿,用户只需在L2钱包中持有ZKS即可参与挖矿(可同时参与ZKS持币生息活动)。[2021/5/24 22:38:39]

目前的共识是Eth2数据分片将在2022年底到来,以在不牺牲去中心化的情况下提供指数级更大的数据可用性层。zkSync的zkRollup技术结合Eth2数据分片是最终目标,在不牺牲4个因素中的任何一个的情况下达到100,000+TPS。

状态树

zkSync2.0状态树覆盖了以太坊的完整160位地址空间。每个帐户将驻留在状态的zkRollup部分或zkPorter部分。zkRollup和zkPorter帐户完全相同,除了一个组件:保证数据可用性。zkRollup交易数据通过calldata发布到以太坊,zkPorter交易数据发布到zkSyncGuardian网络,zkSync代币持有者参与权益证明。

数据发布的地方是成本和安全性之间的权衡。zkPorter交易比汇总交易便宜得多,但它有可能导致您的资金被冻结。但是,zkRollup和zkPorter帐户的有效性都是通过零知识证明和以太坊来保证的。换句话说,zkPorter中的资金只能被冻结,不能被盗。

zkRollup和zkPorter帐户的互操作性和可组合性使每个用户都有机会成为zkSync中的一等公民。部署在zkRollup端的Uniswap可以通过zkPorter帐户访问以交换最低费用。zkSync2.0是一个系统,旨在供整个金融领域的用户参与。

密码学

我们的VM,最常被称为zkEVM,不是EVM1:1副本,而是旨在能够运行99%用Solidity编写的合约并保持其相同的行为,例如在恢复和异常期间。同时,zkEVM被编写为在电路中高效生成零知识证明。

这是在我们的证明系统没有任何重大变化的情况下完成的;我们继续将PLONK与自定义门和查找表以及以太坊的BN-254曲线一起使用。这是有利的,因为自2020年6月以来,该证明系统已经在zkSync1.0以及使用相同证明系统的其他项目中进行了实战测试。

再一次,我们很高兴地宣布,经过几个月的努力:zkEVM的指令集已经完成并在电路和执行环境中实现。

这里有一个重要的区别:电路和执行环境中的实现是分开的,用于不同的目的。电路的工作是生成执行跟踪的证明并提供证人,但这非常慢。另一方面,执行环境是zkEVM在rust中的直接实现,高效且快速。如果我们依靠电路来生成证明和执行,交易最终确定将需要几个小时。证明生成和简单执行的分离使zkSync上的交易能够即时结算。

接下来,我们专注于将zkEVM和编译器结合在一起,并将递归结合在一起:块之间的递归,它允许我们为N个块发布一个证明,以及块内的递归,它聚合块的不同逻辑部分的子证明.这是简单的部分!自2020年6月以来,zkSync1.0的主网上已在使用区块之间的递归聚合证明。有关区块内递归以及我们的zkEVM工作原理的更多信息,请观看此视频说明。

编译器

我们同时致力于两个针对zkEVM的编译器前端:Yul和Zinc。Yul是一种中间Solidity表示,可以为不同的后端编译为字节码。Zinc是我们用于智能合约和通用零知识证明电路的基于Rust的语言。

由于编译器是使用LLVM框架构建的,因此可以将其视为具有前端Yul→LLVMIR和后端LLVMIR→zkEVM字节码。LLVM的采用带来了几个主要优势:

LLVM优化框架无与伦比:它从LLVMIR生成最高效的zkEVM字节码。

使用较新版本的Solidity或Zinc,编译器前端将处理所有更改,而LLVM将使我们无需更改编译器后端。

未来,如果开发人员想用原生Rust或Javascript编写智能合约,只需为该语言构建编译器前端,智能合约就可以在zkSync中开箱即用。

编译器的安全性对我们来说至关重要,并且已经通过了多套测试:

Zinc和Yul编译器中的词法、语法和语义测试。

我们自己的Zinc和Solidity集成测试,贯穿整个智能合约生命周期:从解析源代码到合约部署和在zkSync上执行交易。

从Solidity存储库集成的广泛的测试套件,适用于我们的集成测试工具。

每个套件已经包含数千个测试,我们将把这个数字至少增加一个数量级。

我们的2个编译器已经成功部署并执行了两种语言的简单智能合约。但是还有更多的优化需要完成,一些复杂的LLVMIR语句需要转换为zkEVM字节码。因此,我们决定在编译器处于更健壮的状态之前不发布它。

编译器完成后,我们将专注于使Zinc更具表现力和功能更丰富,然后构建Rust编译器前端以允许使用原生Rust编写智能合约。

核心基础设施

zkSync2.0核心由几个关键角色组成:

完整节点

通过虚拟机的zkEVM字节码的预电路执行器环境

该状态在交易发送后的几秒钟内可用,

过滤掉可能导致区块膨胀的明显不正确的交易,

在内存池中执行交易并生成区块。

证明者

接收区块的见证人并生成零知识证明,

用于并行证明生成的证明者接口,

自定义证明者自动缩放器,可根据需要创建和终止证明者机器。

交互器

用于观看和与以太坊L1交互的工具,

根据代币价格、ZKP生成成本和L1gas价格计算交易费用。

偏执监视器

Prometheus、elastic、sentry、uptime、几个独立的事件通知系统和自定义健康检查服务。

这个核心基础设施功能齐全,已经集成了zkEVM执行器。

标签:ZKSzkSyncSYNCKSYzksvm币币情zksync币总量Async Artzksync币与zks币

币安app官网下载热门资讯
数字货币:拜登提交6万亿美元」撒钱计划」 市场正在悄然启动

周五,美国总统拜登提出了一个6万亿美元的财政预算案,这一预算案一旦通过,放水的力度将丝毫不亚于今年。看来美国政府丝毫没有抑制放水的意愿了,这种饮鸩止渴的方式已经用上瘾了。消息一出,美股大涨.

1900/1/1 0:00:00
DEF:DeFi 5月总结:NFT碎片化逆势增长

在经历了一年多的牛市之后,整个加密货币市场迎来调整,DeFi中的各项数据也因为价格下跌而受到影响.

1900/1/1 0:00:00
区块链:思考 | 被误读的闪电贷:它只是一个工具

据PeckShield态势感知平台数据显示,过去一个月,整个区块链生态共生46起较为突出的安全事件.

1900/1/1 0:00:00
ANC:三明治攻击暗流涌动 DeFi要如何走出泥潭?

最近CipherTrace的一项研究描绘了一幅悲惨的景象:尽管加密用户在犯罪袭击中的损失在2020年大幅下降了57%,降至19亿美元,但DeFi领域的欺诈行为仍在继续增长.

1900/1/1 0:00:00
比特币:日赚3亿的“挖矿”生意 要凉了?

“我们准备跑了,出海去中东。”王浩对深燃说。王浩是四川的一个“矿场”场主,他说的“跑”,是指把挖比特币的矿机和设备全部搬到国外去.

1900/1/1 0:00:00
MIC:监管将至,比特币矿工路在何方?

“你看过等待戈多没有?”“现在我就很契合这个状态。”5月25日,内蒙古发改委发布《关于坚决打击惩戒虚拟货币“挖矿”行为八项措施》,根据八类对象分别提出不同的打击惩戒策略.

1900/1/1 0:00:00