注册送58最低提现100然后为堆栈中更高的层提供简便但有走漏力的接口

让建站和SEO变得简单

让不懂建站的用户快速建站,让会建站的提高建站效率!

栏目分类
博壹把白菜大全网站展示

你的位置:注册送58最低提现100 > 博壹把白菜大全网站展示 > 注册送58最低提现100然后为堆栈中更高的层提供简便但有走漏力的接口

注册送58最低提现100然后为堆栈中更高的层提供简便但有走漏力的接口

发布日期:2023-03-10 06:36    点击次数:111

注册送58最低提现100然后为堆栈中更高的层提供简便但有走漏力的接口

原文:A Developer’s Guide to the zkGalaxy注册送58最低提现100

昨年夏天,Vitalik 写了一篇博文,概述了不同类型的 zkEVM(零学问以太坊造谣机)。Vitalik 证据性能和兼容性来界说与衡量。

这是一个尽头有用的启发式要领,以区别撑握 zkEVM 的要领。关系词,zkEVM 是构建零学问应用设施的悉数可能要领的一个子集。对于思要利用 zk 狡计的特有属性,即松懈性、零学问和正确性的设施员来说,zkEVM 可能不是最佳的遴荐。通过施展整个斥地用具集,本文但愿提供一个指南,匡助斥地者在决策流程中遴荐合适的 zk 堆栈。

抽象复杂度的力量

在往日的一两年中,zk 用具有了庞杂的跨越。使得平素软件的斥地东说念主员不错利用 zk 的苍劲属性,而不需要深入了解令东说念主生畏的基础数学和工程。另一方面,为高级用户提供的用具激增,使 zk 巨匠大略极其紧密地适度 zk 堆栈。

当代软件是建筑在无数的抽象层上的,以最大轨则地擢升巨匠的坐褥力。工程中的抽象有许多上风,这些上风在某种进度上是直不雅的--网罗斥地者不需要深入了解操作系统的责任旨趣。

建筑细密的、可重叠使用的抽象层的要津是封装一个层的复杂性,然后为堆栈中更高的层提供简便但有走漏力的接口。正确的作念法是,这使得具有不同专科规模和学问的斥地东说念主员大略在整个堆栈中建筑有用的用具。

绝不奇怪,这些原则也适用于 zk 系统,而且这些抽象层正变得富余熟识,一个 zk 生手今天就不错初始使用它们并构建应用设施。

zk 堆栈与各层的一些用具/本领实例

初级别的 zk 斥地

Arkworks-rs

Arkworks-rs 是一个 Rust 库的生态系统,它为 zkSNARK 应用设施的子组件提供高效和安全的终端。Arkworks 为斥地者提供了必要的接口,以定制 zk 应用设施的软件栈,而无谓再行终端与其他现存库的共性。

在 Arkworks 之前,创建一个新的 zk 应用设施的唯一要领是从新初始构建一切。与定制的垂直整合用具比拟,Arkworks-rs 的主要上风在于其活泼性水平,减少重叠工程,以及减少审计责任。Arkworks 组件之间合理的接口线允许升级的速率,不错使堆栈在 zk 本领快速翻新的流程中保握关系性,而不会迫使团队从新初始重建一切。

优点

通过模块化终端活泼性

减少重叠代码

裁减工程老本

减少审计/bug 的名义积

无需要紧重构即可升级任何组件

易于在快速发展的 zk 环境中试验新原语

污点

需要深入了解完整的软件堆栈

如果莫得正确意会,太多的适度会导致脚枪

紧密适度需要堆栈悉数级别的专科学问。

Arkworks 确乎提供了一些合理的默许耕种。

zk 规模专用言语(DSL)

为了创建一个对于某些狡计的证明,率先这个狡计必须以一个 zkSNARK 系统不错意会的格式来抒发。一些特定规模的言语还是创建了编程言语,允许应用斥地者以这种方式抒发他们的狡计。这些言语包括 Aztec Noir、Starknet 的 Cairo、Circom、ZoKrates 和 Aleo 的 Leo 等等。底层的证明系统和数学细节一般不会暴露给应用斥地者。

斥地者的讲授

zkApp 的斥地者必须熟练地用特定规模的言语编写设施。其中一些言语看起来很像咱们熟悉的编程言语,而其他言语可能相当难学。让咱们来分析一下其中的几个。

Cairo - Starkware DSL 对于在 Starknet 上构建应用设施是必要的。编译成 Cairo 特有的汇编言语,可由 Cairo zkVM 解释。

ZoKrates - ZoKrates 是一个自负 SNARK 常见需求的用具包,包括一种编写电路的高级言语。ZoKrates 在弧线、证明决策和后端方面也有一些活泼性,允许斥地者通过简便的 CLI 参数进行热交换。

Circom — Circom 是一种用于构建电路的专用言语。目下,它是坐褥电路的内容言语。该言语不是罕见相宜东说念主体工程学,使斥地者机敏地意志到正在编写电路。

Leo——Leo 被斥地为 Aleo 区块链的言语。Leo 有一些雷同 Rust 的语法,挑升用于区块链里面的情状调治。

Noir – 受 Rust 启发的语法。围绕 IR 而不是言语本人构建,这意味着它不错有一个猖狂的前端。

适用于谁

任何思要在其应用设施中利用 zk 的特有属性的应用设施斥地东说念主员。

其中一些言语还是过数十亿好意思元的实战测试,如在 ZCash 和 Starknet 等链的流动。诚然咱们将筹划的一些格式还莫得澈底准备好用于坐褥,但使用其中一种言语编写电路是目下最佳的战略,除非需要像 Arkworks 这么的用具包提供的更紧密的适度。

优点

用户不需要了解底层的 zk 细节

有一定的坐褥讲授,今天就不错使用

可在链上考据

生态系统不行知

污点

用户需要学习一个新的 DSL

围绕这些言语的用具和撑握齐是伶仃的

对底层证明堆栈着实莫得适度权(目下)。

zkEVMs

zkEVM 的主要缠绵是采用 Ethereum 情状调治,并使用松懈的零学问正确性证明来证明其灵验性。正如 Vitalik 的帖子中提到的,有许多要领不错作念到这极少,并有神秘的各异和相应的衡量。

悉数这些要领之间的主要本领区别在于,在言语栈中,狡计究竟在何处被调治为不错在证明系统中使用的格式(算术化)。在一些 zkEVM 中,这发生在高级言语中(Solidity、Vyper、Yul),而其他要领例试图将 EVM 一直证明到操作码级别。这些要领之间的衡量在 Vitalik 的帖子里有深远的阐发,但我将用一句话来笼统它。在堆栈中发生的调治/算术化越低,性能亏损就越大。

高操作老本

为造谣机创建证明的主要挑战是,电路的大小与每条扩充教唆的悉数可能教唆的大小成比例地增长。这是因为电路不知说念在每个设施中会扩充哪些教唆,是以它需要撑握悉数的教唆。

在通用电路中,每条扩充的教唆的老本与悉数撑握的教唆之和成正比。

这在实验满意味着,你要为最不菲的教唆支付(性能老本),即使你仅仅在扩充最简便的教唆。这导致了通用性和性能之间的径直衡量--当你为通用性加多更多的教唆时,你要为你证明的每一条教唆付出代价!这即是通用电路的根柢问题。

但跟着 IVC(增量可考据狡计)等本领的新发展,这种放手不错通过将狡计分红更小的块来改善,每个块齐有挑升的、更小的子电路。

今天的 zkEVM 终端使用不同的战略来温顺这个问题的影响......举例,zkSync 去掉了更不菲的操作(主如果加密的预编译,如哈希值,以过甚他一些操作)

zkEVM 的理思客户是那些需要比L1以太坊上的往复低廉几个数目级的智能合约应用。这些斥地东说念主员不一定有专科学问或带宽来从新初始编写 zk 应用设施。因此注册送58最低提现100,更心爱用熟悉的更高级的言语来写应用设施,如 Solidity。

稠密斥地团队

扩张 Ethereum 是目下 zk 本领最需要的应用。

zkEVM 是一个以太坊扩张科罚决策,不错无摩擦地缓解放手L1 dApp 斥地者的拥挤问题。

斥地者体验

zkEVM 的缠绵是撑握一个尽可能接近面前以太坊斥地的斥地者体验。澈底撑握 Solidity 意味着团队无谓建筑和珍惜多个代码库。这在某种进度上是不切内容的,因为 zkEVM 需要交换一些兼容性,以便大略在合理的时老实生成合理范畴的证明。

zkSync 与 Scroll

zkSync 和 Scroll 之间的主要区别在于它们在堆栈中的何处/何时扩充算术运算——也即是说,它们从平素 EVM 构造调治为 SNARK 友好示意的位置。对于 zkSync,当他们将 YUL 字节码调治为他们我方的自界说 zk 教唆集时,就会发生这种情况。对于 Scroll 来说,这发生在临了,当内容的扩充追踪用内容的 EVM 操作码生成时。

因此,对于 zkSync,在生成 zk 字节码之前,一切齐与与 EVM 交彼此同。对于 Scroll,在扩充内容的字节码之前,一切齐是通常的。这是一个神秘的各异,它以性能疏浚撑握。举例,zkSync 不会像开箱即用的调试器那样撑握 EVM 字节码用具,因为它是澈底不同的字节码。诚然 Scroll 很难从教唆和解赢得细密的性能,但这并不是为 zk 设想的。这两种战略各有益弊,最终有好多外生身分会影响它们的相对成效。

zkLLVM 电路编译器

正如详备筹划的那样,斥地 zk 应用设施有无数不同的遴荐,悉数这些齐有我方特有的衡量。此图表将匡助追思此决策矩阵,以便证据您的 zk 专科学问水慈祥性能需求,遴荐最安妥该责任的用具。这不是一个完整的列表,会跟着 zk 的发展更新。

zkLLVM 被设想为现存 LLVM 基础设施的扩张,LLVM 基础设施是一个行业圭臬用具链,撑握许多高级言语,如 Rust、C、C++ 等。

何如运行

思要证明某些狡计的用户只需用 C++ 终端该狡计即可。zkLLVM 袭取其修改后的 clang 编译器(面前为 C++)撑握的高级源代码,并生成电路的一些中间示意。此时,电路已准备好进行考据,但用户可能但愿证据一些动态输入来考据电路。为了处理动态输入,zkLLVM 有一个称为分拨器的附加组件,它生成一个分拨表,其中包含悉数输入和见证,这些输入和见证已澈底预处理并准备好与电路整个进行证明。

这两个组件是生成证明所必需的。表面上,用户不错我方生成证明,但由于这是一项有点专科化的狡计任务,可能需要费钱请领有硬件的其他东说念主作念这件事。对于这种往复敌手发现机制,=nil;Foundation 还建筑了一个“证明市集”,证明者竞相为支付给他们的用户证明狡计。这种解放市集动态将导致证明者优化最有价值的证明任务。

衡量轻重

由于每个要证明的狡计任务齐是唯一无二的,况兼会生成不同的电路,因此证明者需要大略处理的电路数目是无穷的。这种强制的通用性使得单个电路的优化变得鬈曲。证明市集的引入允许对市集以为有价值的电路进行专科化。如果莫得这个市集,由于这种当然的冷启动问题,劝服考据者优化该电路将是一项挑战。

另一个衡量是经典的抽象与适度。惬心袭取这种易于使用的界面的用户正在烧毁对底层加密原语的适度。对于许多用户来说,这是一个尽头灵验的衡量,因为让密码学巨匠为您作念出这些决定频频更好。

优点

用户不错用熟悉的高级言语编写代码

悉数的 zk 里面结构齐被抽象出来,不受用户影响

不依赖加多异常支出的特定 "造谣机 "电路。

污点

每个设施齐有一个不同的电路。难以优化。(证明市集部分科罚了这个问题)

交换/升级里面 zk 库并非易事(需要分叉)

zkVM

zkVM 形容了悉数 zk 造谣机的超集,而 zkEVM 是一种特定类型的 zkVM,由于其在目下的流行,值得看成一个单独的主题进行筹划。除了定制的加密 VM 以外,还有一些其他格式正在接力于构建基于 ISA 的更通用的 zkVM。

系统不错证明不同的教唆集架构 (ISA),举例新 VM 中的 RISC-V 或 WASM,而不是证明 EVM。接力于这些通用 zkVM 的两个格式是 RISC Zero 和 zkWASM。

让咱们在这里深入了解一下 RISC Zero,以证明这种战略是怎样责任的,以及它的一些上风/残障。

Risc Zero

Risc Zero 证明生成的高级架构

RISC Zero 大略证明任安在 RISC-V 架构上扩充的狡计。RISC-V 是一个开源的教唆集架构(ISA)圭臬,还是越来越受宽待。RISC(精简教唆集狡计机)的理念是以最小的复杂性建筑一个极其简便的教唆集。这意味着堆栈中较高级次的斥地者在使用这种架构终端教唆时最终会承担更大的负荷,同期使硬件终端愈加简便。

孙红雷出生于1970年,从小调皮捣蛋的他经常逃课去少年宫跳舞,对于艺术有着浓厚的兴趣,在18岁的时候就获得了全国霹雳舞第二等奖,这也与他随后走上演艺道路是有一定渊源的。长相并不出众的他在28岁出演《永不瞑目》建军一角,剧中他鲜明的个性,透露这很强的爆发力,给观众留下了深刻的印象。

1.jpg

这种理念也适用于一般的狡计,ARM 芯片一直在利用 RISC 格调的教唆集,并初始主导迁移芯片的市集。事实证明,更简便的教唆集也具有更大的能量和芯单方面积后果。

这个类比对于生成 zk 证明的后果来说相当适用。正如前边所筹划的,在证明 zk 的扩充轨迹时,你要为轨迹中每一项的悉数教唆的老本之和买单,是以更简便、更少的总教唆是更好的。

怎样责任

从斥地者的角度来看,使用 RISC Zero 来处理 zk 证明,很像使用 AWS Lambda函数来处理后端奇迹器架构。斥地东说念主员通过简便地编写代码与 RISC Zero 或 AWS Lambda 互动,奇迹处理悉数后端复杂性。

对于 RISC Zero,斥地者编写 Rust 或 C++(最终是任何针对 RISC-V 的东西)。然后,系统接受编译流程中产生的 ELF 文献,并将其看成造谣机电路的输入代码。斥地者只需调用证明,复返一个收条(包含扩充追踪的 zk 证明)对象,任何东说念主齐不错从任何处所调用`考据'。从斥地者的角度来看,莫得必要了解 zk 是怎样责任的,底层系统处理悉数这些复杂的问题。

为了撑握这么一个通用接口,需要大批的支出(在证明大小和生成速率方面)。

需要对质明生成本领进行要紧窜改,以终端对现存库的庸碌撑握

预建的可重叠使用电路

对于一些对区块链应用或其他处所罕见有用的基本和可重叠使用的电路,团队可能还是为你构建和优化了这些电路。你只需为你的特定用例提供输入即可。举例,Merkle 包容证明是加密货币应用中无边需要的东西(空投清单、龙卷风现款等)。看成一个应用设施的斥地者,你老是不错再诈欺用这些经过实战闇练的合约,仅仅在上头修改一些层,以创建一个特有的应用设施。

举例,Tornado Cash 的电路不错再行用于私东说念主空投应用设施或私东说念主投票应用设施。Manta 和 Semaphore 正在构建一个完整的用具包,包括像这么的通用电路小用具,不错在 Solidity 合约中使用,而无需了解或不了解底层的 zk moon 数学。

正如详备筹划的那样,斥地 zk 应用设施有无数不同的遴荐,悉数这些齐有我方特有的衡量。

此图表将匡助追思此决策矩阵,以便证据您的 zk 专科学问水慈祥性能需求,遴荐最安妥该责任的用具。这不是一个完整的列表,会跟着 zk 的发展更新。

zkGalaxy 应用斥地者指南

1. 初级 Snark 库

适用场景

需要对整个证明堆栈进行紧密适度

幸免重建全球组件

尝试证明决策、弧线和其他初级原语的不同组合

不适用场景

寻找高级证明接口的生手

可选用用具

Arkworks-rs

2. zk DSLs

适用场景

思使用一些久经闇练的言语

需要最小的电路尺寸,惬心烧毁抽象

不适用场景

需要对质明的后端进行紧密适度(目下,不错为一些 DSL 交换后端)

可选用用具

Circom

Aztec Noir

Cairo

ZoKrates

Leo

3. zk 编译器

适用场景

不肯意承担通用电路的支出

思用熟悉的言语编写电路

需要高度定制的电路

不适用场景

思要适度底层加密原语

需要一个还是高度优化的电路

可选用用具

nil zkLLVM

4.zkEVM

适用场景

有一个还是在 EVM 上运行的 dApp

需要为用户提供更低廉的往复

但愿将部署到新链的责任量降到最低

只关怀 zk(压缩)的松懈性

不适用场景

需要完好的 EVM 等效性

需要 zk 的狡饰属性

有一个非区块链用例

可选用用具

zksync 2.0 

Polygon zkEVM

Scroll

Starknet

5.zkVM

适用场景

思用高级言语编写代码 

需要证明该扩充的正确性 

需要向考据者逃避该扩充的一些输入信息

着实莫得 zk 方面的专科学问

不适用场景

在蔓延极低的环境中(它仍然很慢)。

有一个庞杂的设施(目下)。

可选用用具

RISC Zero

zkWASM

6. 预建的可重叠使用的电路

适用场景

有一个依赖常见的 zk 构建模块的智能合约应用,比如 Merkle 包容。

对 zk 底层的东西着实莫得专科学问

不适用场景

有高度专科化的需求

用例不被预建电路所撑握 

可选用用具

Manta Network

Semaphore

论断

zk 处于多项本领的前沿,构建它需要对数学、密码学、狡计机科学和硬件工程有深远的意会。关系词,跟着每天齐有越来越多的抽象层可用,应用设施斥地东说念主员无需博士学位即可利用 zk 的苍劲功能。跟着时分的推移,通过对堆栈的悉数级别进行优化,证明时分的放手会逐步打消,咱们可能会看到针对平素斥地东说念主员的更简便的用具。

致谢

本文编译责任赢得 DAOrayaki 社区的撑握与反应注册送58最低提现100。



上一篇:注册送58最低提现100渴慕回到他们不错通过耐久版税收取空缺支票的日子

下一篇:注册送58最低提现100占一说念磋商生近51%

Powered by 注册送58最低提现100 @2013-2022 RSS地图 HTML地图