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

ASM:零知识证明:zk- ASM可能代表Web2和Web3的现实汇合点_ARK

作者:

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

简介

零知识证明,特别是zk-SNARK(SuccinctNon-interactiveArgumentsofKnowledge)可能是Web3前沿最重要的技术之一。虽然该子领域的大多数媒体和投资的关注都集中在zk-Rollup上,这种扩展解决方案为以太坊等L1区块链提供了巨大的可扩展性,但这绝不是zk-SNARK的唯一应用。在这篇文章中,我们将深入分析零知识汇编代码(或zkASM)的概念,评估它在zk-Rollup和其他领域的用例,探索它在重新发明我们所知道的互联网方面的理论可能性。

技术原理

zk-ASM,顾名思义,主要包含两个技术部分:zk和ASM。zk部分指的是zk-SNARK,而ASM部分指的是汇编代码。要理解zk-ASM的潜力,我们必须首先理解这两个看似神秘的概念的理论基础。

zk-SNARK

zk-SNARK是zk-Proof皇冠上的宝石:它们是一种简洁的证明,证明某个陈述是正确的,在证明时没有透露任何关于被证明数据的信息。例如,假设某人断言“我知道一个m使得C(m)=0”,其中m是一个千兆字节长的消息,C是一个函数。zk-SNARK将是一个非常简短的证明(<1GB),可以快速验证,并且不会透露任何关于m的信息(除了公开可用的信息)。

那么C(m)到底是什么?它有什么用?这个函数实际上是一个算数电路,或者是我们想要执行的特定函数的有向无环图(DAG)表示,如图所示。“m”本质上是进入电路的输入数据,电路中的特定“节点”是单独的逻辑门或算数运算。例如,“+”节点可能有“2”和“3”作为输入,并将“5”输出到下一个运算符。因此,可以在“算数电路”中对任意算数或逻辑运算进行编码。

LI.FI与DeFi保险协议InsurAce合作推出桥保险产品:4月18日消息,跨链交易聚合器 LI.FI 宣布与 DeFi 保险协议 InsurAce 合作推出桥保险产品(Bridge Insurance),Bridge Insurance 已在 Jumper.Exchange 上线,桥保险费用通常在 0.1-0.5% 之间。[2023/4/18 14:11:32]

算数电路的例子。资料来源:https://cs251.stanford.edu/lectures/lecture14.pdf

一旦我们有了这个算数电路作为我们想要运行zk-SNARK的代码的表示,我们就可以开始构建这个zk-SNARK了。从根本上说,因为“代数基本定理”,使得zk-SNARK是可能的,该定理指出,一个“d”次多项式最多有“d”个根。数学技巧分为两个步骤:(1)以某种方式将我们想要证明的函数“f(m)”转换为一个多项式(并坚持下去),(2)使用“代数基本定理”与多项式相互作用,并提供一个简洁的证明。在技术术语中,第一部分被称为“PolynomialCommittmentScheme”(PCS:多项式承诺方案),第二部分被称为“PolynomialInteractiveOracleProof”(PIOP)。

荷兰合作银行:美联储或在五月加息25个基点后维持利率不变:金色财经报道,荷兰合作银行认为,联邦公开市场委员会(FOMC)昨天一致决定将联邦基金利率目标区间从4.50—4.75%上调25个基点至4.75—5.00%。荷兰合作银行经济学家剔除其6月份加息25个基点的预期。不过,他们仍认为美联储将在今年剩余时间内维持利率不变:“接下来FOMC不希望加息太多,预计今年只会再加25个基点。FOMC预计,银行收紧信贷将为央行完成其余的抗通胀工作。你能在美联储主席鲍威尔问答环节中意识到信贷紧缩是美联储的新货币政策工具。我们将联邦基金利率目标区间的预测从5.25—5.50%下调至5.00—5.25%,预计只会再加息25个基点一次。我们坚持FOMC今年不会转向的预测。”[2023/3/24 13:23:16]

通用电路的有效SNARK的组成部分。资料来源:https://cs251.stanford.edu/lectures/lecture15.pdf

虽然PCS和PIOP的具体实现超出了本文的范围,但到目前为止,我们已经获得了zk-SNARK核心步骤的粗略草图:

想运行zk-SNARK,就需要有一个函数的选择(代码函数,数学方程等);将此函数编码为算数电路C(m);运行PCS得到该算数电路的多项式表示;运行PIOP以获得原始“m”大小的对数的简洁证明。我们有一个定制的zk-SNARK可以证明某人知道某个信息而不用透露信息是什么。

数据:自2月13日以来投资者已从Paxos赎回约67亿美元BUSD:金色财经报道,数据显示,截至发稿时,Paxos发行的稳定币Binance USD(BUSD)流通供应量约为95亿美元,创2021年6月以来新低。此外,据加密情报公司Nansen数据显示,自今年2月13日以来,投资者已从Paxos赎回了约67亿美元的BUSD。

此前报道,Paxos于2月13日宣布将停止铸造新的BUSD代币,美国证券交易委员会(SEC)准备起诉Paxos提供未注册证券。Coinbase此前宣布,将从3月13日开始暂停平台上的BUSD交易。[2023/3/4 12:41:53]

汇编代码

zk-ASM的第二个难题是汇编代码的思想。汇编代码是一种包含非常低级语言指令的类语言,机器很容易阅读,但人类很难破译。与Python、Java等高级语言不同,汇编语言包含非常原始的函数,例如会在处理器和硬编码内存位置上的一系列数据寄存器上移动、比较、添加和跳转。例如,在屏幕上打印数字1到9的Python代码为123456789:

下面是它的x86汇编版本:

CertiK:The Chimpsons项目Discord服务器遭到攻击:金色财经消息,据CertiK监测,The Chimpsons项目Discord服务器遭到攻击。请社区用户不要点击链接,铸造或批准任何交易。[2022/10/30 11:58:29]

对这么简单的操作来说,其实变得更麻烦了。那么为什么还要使用汇编语言呢?如上所述,虽然这些指令对人类来说可能不容易阅读,但它们很容易“组装”到110011001字节码中,供机器读取和执行(这称为汇编程序)。相对而言,Python和Java等高级语言更易于阅读,但用这些语言编写的程序不能直接由处理器执行。相反,我们需要依赖于一个“编译器”,它咀嚼我们编写的Python或Java代码,并吐出一堆汇编代码,然后由机器组装和执行。我们可以期望同一段Python或Java在不同的处理器和不同的操作系统上平稳运行,因为编译器完成了繁重的工作,将源代码编译为特定于该处理器或操作系统的汇编语言。

因为所有语言都可以编译成汇编代码(汇编代码本身可以编译成可执行的二进制代码),所以汇编程序本质上就像“所有语言之母”。现在假设我们能够将汇编语言(如x86或RISC-V)中的所有操作数转换为一种算数电路表示,这样我们就能够提供这种汇编语言中所有操作数的zk-SNARK证明。这意味着理论上我们能够提供任何用任意高级语言(如Python或Java)编写的程序的zk-SNARK,这些程序可以编译成汇编语言。这就是为什么我们需要考虑zk-ASM。

前Messari分析师Mason Nystrom宣布加入Variant Fund任投资合伙人:7月1日消息,前Messari分析师Mason Nystrom在其社交网站宣布加入Variant Fund任投资合伙人,将负责投资初创加密协议和专注于消费者的公司。其主要关注领域为NFT金融化、Web3市场中独特的加密经济机制和激励措施以及独创性的NFT应用程序和平台。[2022/7/1 1:44:48]

实际应用

zk-EVMRollup:Polygonzk-ASM

zk-ASM最重要的应用之一是创建与以太坊虚拟机兼容的zk-Rollup,或zk-EVM。zk-EVM对于区块链的可扩展性非常重要,因为它允许程序员部署在基于zk-Rollup的L2链上,而无需修改太多(如果有的话)他们的代码]。在这个领域,Polygon的zk-EVM是一个典型的案例研究,它展示了如何使用zk-ASM来实现这一目标。

EVM和Polygonzk-EVM技术栈的比较。来源:OriginalContent

当程序员在以太坊L1区块链上开发时,他们通常使用Solidity进行编码。这种Solidity代码在执行前会被编译成一系列EVM操作码,如ADD、SLOAD和EQ。默认情况下,这个过程显然不会创建任何类型的zk-Proof。Polygon的诀窍是创建一个方法,将每个EVM操作码解释为它们自定义编写的zk-ASM,这对zk-SNARK非常友好。然后,他们的L2zk-EVM将执行zk-ASM,同时还创建ASM的zk-SNARK电路,以创建zk-SNARK证明。例如,EVM中的ADD操作码将被翻译成Polygon的zk-ASM,如下图:

EVMADD操作码的Polygonzk-ASM解释示例。资料来源:https://wiki.polygon.technology/docs/zkEVM/zkASM/some-examples

因为Polygonzk-EVM的招数在汇编级别上,它从普通以太坊程序员接触的代码中删除了两个级别,即“Solidity”级别。这就是为什么大多数开发人员可以将他们为以太坊主网构建的EVM代码直接移植到Polygonzk-EVM的原因。此外,由于Polygonzk-EVM将以太坊的技术堆栈“保持”到操作码级别,所有依赖于分析编译的操作码的调试基础设施都将保持可用和完整。这与其他一些zk-EVM设计不同,例如zkSync,后者不提供操作码级别的zk-Proof。因此,即使Polygon发明并证明了自己的汇编语言,Vitalik写道:“它仍然可以验证EVM代码,它只是使用了一些不同的内部逻辑来完成它。”

超越Rollup:zk-WASM

zk-EVM绝不是zk-ASM的唯一应用程序。回想一下我们之前的断言,汇编语言本质上是“所有语言之母”,并且zk-ASM的创建将为用任何编译成该汇编语言的语言编写的通用程序解锁zk-Proof。WebAssembly,或称WASM,是最重要的新兴汇编语言之一。WASM于2018年首次发布,其目的是创建一种汇编语言,以提高Web应用程序的执行速度,并为Javascript(Web背后的主要编码语言)提供执行补充。

从本质上讲,随着Web多年来的发展,Web应用程序的规模和复杂性不断增长,这意味着浏览器编译用Javascript编写的所有内容的速度通常非常慢,并且必须依赖复杂的编译-优化-重新加载周期。另一方面,WebAssembly通过提供可移植的、模块化的、易于执行的汇编语言,消除了对复杂浏览器执行引擎的依赖。此外,作为一种汇编语言,WASM允许程序员直接用C语言、C++、Rust、Java或Ruby编写在浏览器中本机运行的代码片段。因此WASM已成为“提供分布式无服务器功能”的首选技术。

那么zk-SNARK为什么会出现,又是如何出现的呢?WASM的独特之处在于它是一种客户端技术,能够直接与用户输入和数据交互。因为这通常包括敏感数据,如密码和个人信息,我们需要一种技术:(1)确保程序正确执行,(2)我们的敏感信息不会被泄露。如上所述,zk-SNARK是解决这两个问题的完美解决方案,因此是确保WASM安全的重要拼图。

虽然开发zk-WASM的工作仍处于早期阶段,但最近已经有一些项目发布了用于WebAssembly的zk-SNARK电路原型。例如,DelphinusLab的“ZAWA”zk-SNARKEmulator提出了一种将WASM虚拟机的操作数和语义编码到算数电路中的方法,从而使其能够进行zk-SNARK证明。随着时间的推移,zk-WASM电路无疑会不断优化,从而允许用通用语言(如C语言、C++、Rust和Ruby)编写的程序采用zk-Proof的范例。

结论

在这篇文章中,我们探索了zk-ASM的理论基础,并研究了zk-ASM的两个范例:Polygon使用zk-ASM创建一个操作码级别的zk-EVM,以及zk-SNARK在WebAssembly上的应用以创建zk-WASM。最终,zk-ASM的承诺是将Web2的互操作性和规模与Web3的可靠性和安全性结合在一起。

一方面,区块链越来越多地寻求超越当前吞吐量瓶颈的扩展,并有可能支持执行,而另一方面,Web2方法因未能充分保护用户数据和隐私而越来越受到攻击。由于程序员能够在他们的Web2代码中使用Web3设计范例,并在区块链上引入Web2语言和代码,通用的zk-ASM可能代表Web2和Web3世界中的一个汇合点。正是在这个意义上,zk-ASM可以让我们重新想象一个安全、无需信任的互联网。

标签:ASMARKNARWEBjasmy币最新消息币BarkisNARUTOCWEB币

USDC热门资讯
ETH:Foresight Ventures周报:市场由熊主导,BNB遭挤兑_数字人

市场观点:1、宏观流动性货币流动性有所放松。美联储今年的最后一次会议如期加息50个基点,较此前连续四次加息75个基点步伐放缓,基准利率提升至4.25-4.5%.

1900/1/1 0:00:00
BER:Amber 逾百名前员工集体维权:被裁拿不到赔偿金,公司高层“消失”_Ember Lumen

“我们百余号被裁员的兄弟一直没有拿到应得的赔偿金!”多名在11月被裁的Amber前员工向深潮TechFlow爆料以及抱怨,他们并未如合同约定的在12月初收到应得的裁员补偿款,更让他们忧心的是.

1900/1/1 0:00:00
HOO:用 FOMO 抵御寒冬——数据解读 Hooked Protocol_KED

距上一次币安IEO,已过去了9个月,而熊市寒冬显然无法扑灭人们对币安IEO造富神话的憧憬。被红杉和BinanceLabs所捧出的HookedProtocol,用久违的IEO赋予了这个寒冬新的意义.

1900/1/1 0:00:00
FUEL:盘点 Fuel Network 生态 16 个项目:哪些值得提前关注?_htt币价格

FuelNetwork在并行交易处理、FuelVM、无代币批准等方面的明显优势让其在模块执行层中占有一席之地.

1900/1/1 0:00:00
SEC:万字长文:解读美国的 Web3 监管现状_数字资产管理系统

美国无疑是全球Web3行业的领导者,其对科技创新的包容及鼓励诞生了无数Web3领域的龙头项目。根据a16z的报告「Introducingthe2022StateofCryptoReportb」,

1900/1/1 0:00:00
OSC:OSC开源世纪质押池即将上线_BEC

开源世纪新质押池即将上线,开源世纪是OSC的质押平台,社区一直在寻求更多的STAKING机会,平台积极落地生态.

1900/1/1 0:00:00