月亮链 月亮链
Ctrl+D收藏月亮链
首页 > Fil > 正文

SYNC:深入了解zkSync 2.0架构、核心基础设施_SYN

作者:

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

原文标题:《zkSync2.0:你好以太坊!》

原文作者:水多多|zkSync

我可以把你比作夏日吗?

你的可扩展性和安全性更高。

狂风确实震撼了五月亲爱的心灵,

夏天的租约日期太短了。

——中本聪莎士比亚,2021

介绍

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

主要成就

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

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

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

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

zkSync2.0与以太坊的比较

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

Solidity智能合约

SBF:尚未对竞标Celsius的可能性进行深入研究:10月12日消息,在 DC 金融科技周上,SBF 表示,我们可能会或可能不会最终参与 Celsius 的破产事件,但我认为我们已经做出了目前会采取的大部分举措,Celsius 仍处于排他期,该公司可能会提出自己的重组计划,一旦失效将面临拍卖。此前有消息称,SBF 对参与 Celsius 竞拍感兴趣。(The Block)[2022/10/12 10:32:01]

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

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

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

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

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

gas

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

Web3API

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

教育部等六部门:深入应用区块链等信息技术,推动教育数字转型:7月21日消息,教育部等六部门发布《关于推进教育新型基础设施建设构建高质量教育支撑体系的指导意见》。指导意见提出,深入应用5G、人工智能、大数据、云计算、区块链等新一代信息技术,充分发挥数据作为新型生产要素的作用,推动教育数字转型。利用区块链技术保护知识产权,探索个性化资源购买使用和后付费机制。通过用户评价和第三方评估相结合的方式,推动数字资源迭代更新。(教育部官网)[2021/7/21 1:07:07]

zkSync包括L1没有的功能,例如提交和最终块的概念。因此,将会有额外的方法让开发人员更精确地控制数据。Web3客户端代码将接收与您在以太坊上相同的数据,但可以使用「zksync_」命名空间请求专门的信息。

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

签署交易

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

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

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

存储效率提升

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

声音 | 平安银行高管:运用区块链等深入生态场景重塑征信模型:据人民网报道,在“金蝉奖”颁奖典礼上,平安银行交易银行事业部副总裁许红辉表示,平安银行正在实现贷前、贷中和贷后风险的全程闭环控制。运用大数据、区块链、物联网等技术,深入生态场景重塑征信模型,并基于真实贸易背景跟单放款,确保银行融资能够真正支持实体经济。[2018/12/30]

预编译

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

进一步的限制

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

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

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

深入了解zkSync2.0架构

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

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

动态 | 贵阳青年代表团与立陶宛深入交流区块链人才培养等问题:据贵阳日报消息,日前,贵阳市青年代表团赴白俄罗斯、立陶宛、波兰进行交流访问,在立陶宛期间,代表团考察了维尔纽斯区块链研究中心,双方就开展区块链人才培养、技术合作等进行了深入交流。[2018/9/25]

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

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

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

状态树

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

英国金融监管机构发出承诺 将对新兴的ICO市场进行深入审查:金融市场行为监管局周五表示,将对ICO市场进行审查,以此作为更多监管行动的前奏。它已经告诫消费者与投资ICO有关的“非常高的风险”。“在初始投币(ICO)市场上,FCA将收集进一步的证据,并对快速发展进行更深入的研究。调查结果将有助于确定在9月份发布的消费者警告之外是否需要在这方面进一步采取监管行动。“FCA在一份声明中表示。[2017/12/15]

发布数据的地方是成本和安全性之间的权衡。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的指令集已经完成并在电路和执行环境中实现。

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

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

编译器

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

因为编译器是使用LLVM框架构建的,所以可以认为它具有前端YulLLVMIR和后端LLVMIRzkEVM字节码。采用LLVM带来了几个主要优势:

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

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

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

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

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

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

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

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

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

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

核心基础设施

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

全节点

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

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

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

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

证明者

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

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

自定义证明者自动缩放器,可按需创建和终止证明者机器

交互者

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

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

偏执狂监视器

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

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

让我们谈谈

编译器完成后,我们将一起共享对所有组件的访问权限!开发人员将能够部署Solidity/Zinc智能合约并通过Web3API进行交互。

标签:SYNCKSYSYNZKSSYNC价格zksync币图标sync币怎么样zks币官网

Fil热门资讯
WEB:初探创作者经济4.0:围绕个体创作者形成社区DAO 共同创造与拥有_Santas War NFT Epic

Web3内容共创让我们摸到了创作者经济4.0的边,它之于整个Web3领域有什么意义?撰文:lil屏2022年年初,经由CSS播客第10集《共创“拥有者经济”——LiJin》.

1900/1/1 0:00:00
NFT:肖飒:第三方支付 会给NFT“断供”吗?_比特币

这几天连续有朋友前来询问,与NFT平台合作的第三方支付公司会突然“断供”吗?飒姐的答案是:确有可能。就这个话题,我们结合既往创新行业的经验教训,给大家一些参考.

1900/1/1 0:00:00
BRAVE:Soft Rug Pull现身说法 告诉你什么是被了还帮人数钱_brave币没了

北京时间2022年7月25日,CertiK安全团队监测到去中心化交易所TeddyDoge的一个管理员地址向100多个地址发送了超过3000万个TEDDY.

1900/1/1 0:00:00
POS:万亿市值公链竞争白热化 新公链还有机会吗?_RED

2020年,万向区块链董事长肖风就断言区块链会出现万亿美元市值项目。当时大部分人第一反应是,率先能够达到万亿美金市值的肯定就是”公链”.

1900/1/1 0:00:00
NFT:品牌扎堆数藏赛道 下半场的机遇和挑战在哪里_dogenft

7月20日,巴比特主办的“Web3.0数据分析与隐私安全”论坛在中国未来区块链创新中心开启。来自亚马逊云科技、数美科技、ADVANCE.AI、NFT中国、纯白矩阵、宇链科技、趣链科技、杭州国际数.

1900/1/1 0:00:00
FTX:熊市抄底后 SBF商业版图的下一步是什么?_CRY

原文标题:《FTX:ADefiningDilemma》原文作者:HideNotSlide原文编译:Kxp,BlockBeats但凡关注了今年市场行情的人都应该清楚.

1900/1/1 0:00:00