• 售前

  • 售后

探索零知识证明技术的革命性应用

政策 allinweb3
2023-11-6 09:21 790人浏览 0人回复
摘要

零知识的本质中本聪(Satoshi)精心构建了一种巧妙的解决方案,来解决古老的拜占庭将军问题,这个问题本质上是关于分散式的实体如何达成共识或真相的。这一突破是什么呢?它就是工作证明(PoW)共识算法。全球的矿工 ...

零知识的本质

中本聪(Satoshi)精心构建了一种巧妙的解决方案,来解决古老的拜占庭将军问题,这个问题本质上是关于分散式的实体如何达成共识或真相的。这一突破是什么呢?它就是工作证明(PoW)共识算法。全球的矿工们现在可以调整他们的经济利益,从而诞生了一个全球性的共识系统。比特币还使用户能够控制他们的私钥并独立验证交易,引领了一个真正去中心化的托管生态系统。

以太坊则通过权益证明(PoS)共识机制为这一领域带来了一个新的变革,该机制依赖于验证者的激励和处罚来维护网络的安全和和谐。

  • 分布式账本通过在每个网络节点上重新执行计算来强制执行正确性,这就好比为了验证一个单词而阅读整本书。这种方法导致了一种计算效率低下的体系结构,其中每个节点都必须下载最新的区块并执行完整的交易集以验证其与区块的一致性。
  • 开放计算不仅资源密集,还暴露出一个软肋:缺乏隐私。这个漏洞被MEV剥削者所利用,他们操纵交易顺序以谋取个人利益。

认识到这些挑战,区块链社区将注意力转向提升可扩展性和隐私性。这导致了zk-密码学的探索,特别是像zk-SNARK(零知识简洁非交互知识证明)和zk-STARK(零知识可扩展透明知识证明)这样的技术。虽然这些技术在细节上有所不同,但让我们将其留待以后,看一个简化的解释。

零知识证明

从本质上讲,零知识证明允许某人(证明者)向一个不信任的方(验证者)证明他们拥有特定的知识,而不泄露有关这一知识的任何细节。

零知识证明

零知识证明具有两个基本特性:

1. 简洁的数据和省时:验证证明的效率高于直接检查原始数据。

2. 隐私:没有把正在被验证的数据、内容,透露给验证者。

尽管这项技术诞生于1990年代,但最初的应用主要局限于隐私解决方案。IBM于2010年利用ZK创建了其身份混合器Bluemix,而微软的选举保护工具则利用ZKP(零知识证明)来实现可验证的私人选举。

ZKP的能力可以紧凑地验证链下计算,已经激发了针对像以太坊这样的平台扩展的研究。去年,超过7.25亿美元的资金流入了用于区块链的ZK技术,突显了其日益重要的地位。

虽然ZKP的数学复杂,但开发人员可以像使用公钥密码一样将ZK密码学整合到应用程序中。持续的研究侧重于开发最先进的证明者和验证者,强调高效生成证明和快速验证它们。

区块链依赖于关键的链下数据,如资产价格或来自其他区块链的信息。传统上,链外数据源(或acles)如Chainlink扮演了可信赖的数据传输角色,利用一组在经济上受激励的验证者来确保数据的准确性和完整性。

ZKP为加密经济学领域增加了新的信任维度。使用ZKP,这些应用程序可以无可辩驳地证明链下数据和计算的合法性,充当了区块链之外的警惕 “ 监督者 ” 。

零知识证明

ZK格局:扩展

通用Rollups

随着以太坊的快速增长,ERC20代币和ERC721 NFT的交易成本经常飙升至5到15美元的范围,这促使我们需要重新考虑在不影响去中心化的前提下如何实现可扩展性。

进入Rollups时代:以太坊战略性地转向了一个模块化、以Rollup为中心的框架,包括三个不同的层次:1)数据可用性(DA)层、2)执行层、3)结算层。

目前有两种类型的Rollup正在研发中:Optimistic Rollup(乐观汇总)和ZK Rollup(零知识证明汇总),它们提供了Layer 2的扩展解决方案,可以在以太坊链外执行交易并在以太坊链上结算,继承了其安全性。

这两种类型都依赖于序列化程序来接收用户交易,将它们汇总成批次(每批交易可以包含100笔交易),并生成证明以承诺到以太坊主网。乐观汇总(Optimistic Rollup)依赖于监视程序来在争议解决窗口内发现欺诈交易,而ZK Rollup使用有效性证明来确保交易的有效性,无需在链上进行验证。

零知识证明

执行层:执行和状态存储发生在与Rollup特定的虚拟机(VM)中。每个ZK Rollup都有一个排序器,用于编排交易,以及证明者,用于制作验证中间计算的证明。这些“有效性证明”和使用最少的数据,然后被提交到以太坊主网上验证智能合约。

大多数ZK Rollup兼容以太坊虚拟机(EVM),以支持以太坊的智能合同。这种灵活性允许开发人员将基于以太坊的应用程序顺利迁移到第2层(L2)平台。然而,仍然存在挑战,包括证明效率、区块链性能和操作码兼容性。

存储层面:就存储而言,大多数Rollups,包括Polygon的zkEVM、Scroll、zkSync Era和Linea等,更倾向于将数据以压缩格式推送到以太坊calldata中。这种方法保证了活跃性,使用户能够从以太坊重新创建状态并在需要时绕过Rollup。

Block unicorn注释:"calldata" 是以太坊智能合同中的一种数据区域。它是一个特殊的用于存储输入数据的区域,包括在调用合同函数时传递的参数。这些数据通常是只读的,意味着它们不能被修改,而只能用于读取。在以太坊上,开发者通常使用 "calldata" 区域来处理合同函数的输入参数,而 "storage" 区域用于存储合同状态。

然而,一些zk-Rollups,如Starknet的Validium、Matter Lab的zkPorter和Polygon的Miden,将它们的数据存储在由数据可用性委员会(DAC)保护的不同DA层上。EigenDA和Avail等解决方案体现了这种方法,旨在提高吞吐量,同时仍然享受以太坊区块链的安全保障。

零知识证明

EigenDA计划将吞吐量扩展到每秒10兆比特(Mbps)

结算层:ZK Rollups将新的Rollup状态以及“有效性证明”提交到以太坊上的验证智能合同。这些验证器检查有效性证明,以确保离线虚拟机中的状态转换的正确性,并记录新的状态转换。

验证过程可能需要大量资源,单个证明的Gas成本在30万到500万之间。验证时间也可能较长,大约10秒。Rollups(汇总)通常会定期将证明发布到第1层以通过批次处理交易来降低每笔交易的成本。

ZK证明无法用于Rollup内部的共识或交易排序。通常,根据它们的个人规则集,序列生成器会做出共识决策,其中许多遵循首次见到的原则。正在努力去中心化序列生成器,其中一些正在实施,像Espresso这样的共享排序生成器。

基于MEV的Rollup

正如我们之前讨论的,与L2 EVM(二层虚拟机)一起工作时存在一些挑战,这可能会限制计算效率。以太坊的本机函数,如哈希函数,通常与ZK技术不兼容,因为它们具有资源密集型的特性。ZKSync移除了对其中一些操作码的支持,因为他们意识到其中大多数成本都来自这些昂贵的操作。

与专注于以太坊指令集的EVM不同,基于zkVM的Rollup(汇总)提供了运行广泛的与不同计算机架构兼容的软件的灵活性。这些虚拟机具有更广泛的能力,可以运行不同的计算机指令,比如RISC-V和WebAssembly,并生成用于计算的ZKP。

Starknet是zkVM-based rollup领域的先驱。它开发了Cairo,一种专门的低级编程语言,更接近汇编语言。Polygon的Miden使用自己的汇编语言,更接近Move,而Delphinus和Fluent则致力于基于WASM语言的rollups。Fluent和ZKM允许开发人员使用通用编程语言,如Rust、TypeScript、C/C++、Go等构建应用程序。

zkVM-based rollups通过促进构建应用程序,重新定义了Ethereum的能力,这些应用程序在传统账户系统(以太坊账户系统)中很难开发。使用zkVM-based rollup的解决方案,可以更加轻易的开发应用程序。

例如,Miden采用了一种基于客户端的证明模型,其中每个账户充当智能合同,用户负责在其客户端设备上创建ZKP。然后,这些ZKP被提交到Miden rollup以更新全局状态。这种方法允许事务的并行执行并增强隐私,因为诸如代币转账和NFT交换等操作可以在不影响公共状态的情况下进行。

Rollup框架

多个团队已经着手简化零知识(ZK)Rollup的开发,为更多的开发者敞开了大门。这些创新的框架为开发者提供了一套全面的组件,包括排序器、验证者、数据可用性(DA)层、共识层。

利用这些框架的开发者能够获得一个重要的优势,继承以太坊的强大安全性,同时保留了自主选择的自由。他们可以选择部署本机代币或利用以太币(ETH),并具有灵活性,可以与外部验证者互动或实施自定义验证者规则。

Sovereign Labs和Polygon正在积极开发软件开发工具包(SDK),使任何人都能创建具有预定义规则集和强大流动性互操作性的ZK第2层(L2)Rollup。

Lumoz采用全面的方法,通过专用的工作证明(PoW)共识、专用的证明网络和与其他Rollup的通信渠道,为开发团队赋予对其Rollup的完全主权。

LayerN采用混合的zk-OP(OP Rollup-ZK Rollup)架构,承诺交易费用比以太坊便宜一千倍。

Eclipse最近发布了一个通用的L2,作为一个示范,结合了不同的模块化元素——Solana的执行机器将DA发布到Celestia,并使用Risc0生成ZK证明以在以太坊上结算。这些实验推动了模块化论点的发展,旨在将Solana的高性能以太坊虚拟机(EVM)与以太坊的安全性相结合。

零知识证明

汇总即服务

Rollups-as-a-Service (RaaS)简化了Rollup框架和软件开发工具包(SDK)的情况,提供了一个抽象层,便于轻松部署、维护和创建定制的、适用于生产的应用特定的Rollup。

RaaS将开发人员从基础设施管理和监控网络性能的复杂性中解放出来,使他们能够专注于构建应用程序层。曾经需要大量工程时间的任务现在变成了一个简单的10分钟、无代码部署过程。

可以将它们视为Rollup的AWS(亚马逊云服务),简化了Rollup的部署和开发过程。

借助Vistara和Gateway等平台,用户可以自由组合各种模块化组件,仅需几秒钟即可创建符合其需求的个性化Rollup(Vistara和Gateway可以被作为创建Rollup公链的机会)。

这种模块化方法使开发人员能够精确地打造与其独特目标完全一致的ZK Rollup。从执行虚拟机(VM)和数据可用性(DA)层到排序器、桥接器和证明器,开发人员可以灵活选择适合其需求的组件。

零知识证明

专用Rollup

尽管通用Rollup技术有了很大发展,但由于竞争L2区块空间和不断上升的L1批量发布成本,扩展存在限制。特定的dApp需要定制功能,比如DeFi需要快速最终性,游戏需要低延迟,企业区块链需要隐私,这需要应用特定的Rollup技术。

在这方面,Starknet的生态系统走在前列,已处理了超过4.18亿笔交易,应用如dYdX、Sorare和Immutable利用了基于Starkware的Starkex技术构建的特定应用Rollup。Starknet的操作员聚合交易,将它们分批处理,并向以太坊主链提供ZK证明,以确保安全性和降低成本。

Loopring,一种ZK Rollup技术,专注于DeFi用例,提供了类似Block Trade的功能,可以实现CEX级别的流动性即时执行。Myria,另一种ZK Rollup技术,专注于游戏应用,强调低交易成本。最近,Canto宣布正在迁移到一个专注于使用Polygon的链开发工具包的L2,用于处理现实世界资产。

零知识证明

隐私

随着Web3技术迅速扩展,吸引了数百万用户,隐私问题仍然存在,特别是对于机构、银行和企业,它们经常发现自己受法律要求的约束,必须保护其金融交易。

ZK证明增加了一种保护机制,这是最早由zCash推广的初始用例。Zcash使用zk-SNARK来证明交易有效,而不揭示有关发送方、接收方或交易金额的任何信息。钱包余额不以明文形式存储,而是存储为“承诺注释”。

这种加密技术允许用户隐藏其交易的详细信息,同时仍然证明他们拥有足够的资金并遵循协议的规则:

价值隐私:它确认了进入交易(输入)的总硬币数量等于离开交易(输出)的总硬币数量,而不揭示实际数量。

支出权限:它通过一种密码学方法证明了发送方有权使用他们拥有的特定输入,这样就确认他们有权限花费这些代币,这有助于防止未经授权的人消费这些代币。

防止双重支付:它证明了代币以前没有被花费,从而防止双重支付。

隐私导向的L1协议

许多协议,如Aleo、Aleph Zero、Ironfish和Mina,正在进一步拓展界限,专注于重视隐私的第一层解决方案。与以太坊的基于账户的框架不同,这些协议采用了比特币的未花费交易输出(UTXO)模型的修改版本。

共识模型:这些以隐私为中心的协议都采用不同的共识模型。例如,Aleo采用可持续的工作证明(SPoW)机制,其中“工作”涉及生成zk证明,而不是资源密集型的挖矿。Ironfish采用类似比特币的工作证明(PoW)模型,仅通过挖矿生成代币,没有首次代币发售(ICO)。最初设计为第一层(L1)解决方案的Aztec已过渡到第二层(L2)框架,定居在以太坊网络上。

重新定义网络层:除了共识,这些协议重新构想了网络层,倡导点对点数据交换以最大程度保护隐私。例如,Ironfish使用WebRTC和WebSockets的组合与节点建立连接。用户可以建立直接连接,进行交易,创建用于验证规则遵守的zk证明,然后在区块链上结算交易,同时保护他们的隐私。

专注隐私的L2解决方案

与此同时,诸如Aztec和Ola等项目致力于通过启用具有私人账户和加密交易的ZK Rollups来增强以太坊网络的隐私保护。这两个项目都在开发自己的zkVM,非常注重管理私人账户,而不仅仅关注以太坊的兼容性。

ZK应用程序

应用程序利用ZKP的隐私能力,将信任引入到链下数据和计算中。我们可以将大多数用例总结为以下几类:

a. 保密的秘密分享:ZK技术赋予用户通过无需信任的结算层机密地分享秘密的能力。知名的应用程序,如zkMail和zkVoting协议,促进端到端的加密数据共享,确保强大的隐私。

b. 链上保密身份:ZK应用程序使用户能够以可组合的方式创建链上的保密身份,超越了传统数据混淆方法(如混合)的限制。

c. 链下安全保证:利用ZK技术提供了强大的链下安全保证,确保了大量链下数据和计算的完整性和预期状态。

d. 互操作性信任:由ZK技术支持的预言机和桥梁在将链下数据桥接到区块链网络时起着关键作用,维护了加密完整性。

零知识证明

隐私中间件

与创建具有本机隐私功能的全新区块链不同,隐私中间件协议将隐私机制引入现有的区块链网络中。这些平台引入了一个隐私层,充当用户地址和匿名或“隐身”地址之间的中介,提供了一种实际的隐私增强方法。

Tornado Cash受到Zcash隐私模型的启发,部署了一个基于以太坊的智能合同,用于管理存储在隐身地址中的用户余额。使用零知识证明,该协议验证每笔交易的完整性,确保用户不能在混合资金后提取超出其帐户余额的资金。然而,Tornado Cash面临了法规挑战,因为恶意行为者滥用其隐私功能进行非法活动。

为了遵守法规,行业领袖如Vitalik Buterin和Ameen Soleimani正在推动下一代隐私池模型,平衡了强大的隐私和法规遵从性。这些模型探索了各种方法:

  • 黑名单筛查:能够禁止来自FATF(金融行动特别工作组)黑名单上地址的存款,确保协议只用于增强隐私的合法活动。
  • 用户控制的查看密钥:用户保留只读密钥,可以选择性地与监管机构共享。这些密钥验证资金来源和税收义务,同时确认资金不来自黑名单地址。
  • 服务器控制的查看密钥:在这种设置中,协议保留查看所有用户资金和交易的能力,为了增强合规性,向监管机构提供选择性的披露。

像Panther和Railgun这样的平台提供了被保护的代币,这些代币是通过将资金存入这些平台来获得的,以获得可以在以太坊、BSC、Polygon、Solana等区块链上使用的被保护资产。

Nocturne利用多方计算(MPC)和账户聚合器(AA)来创建一个隐形地址层。与铸造zk资产不同,这些地址是用于与协议进行交互的。用户将资金存入存款管理器,该管理器混合所有用户资金并为每个应用程序交互提供隐形地址。DApp永远无法访问这些地址的来源,从而增强了隐私。

零知识证明

Nocturne的存款筛选器在批准交易之前检查合规性

DEX

为了满足机构领域对安全和隐私资产交易日益增长的需求,开发团队正在积极探索基于零知识技术的去中心化交易所(DEX)。与自动做市商(AMM)不同,基于零知识技术的DEX采用订单簿,提供了一系列优势,包括增强的流动性、免费的交易、无限的交易对、多样的订单类型和用户友好的界面。

让我们以Brine为例,Brine采用了一种混合模型,有效地将其运营分为链下和链上两个部分:

  • 链下部分:在链下部分,Brine管理钱包数据和所有订单和交易的实时状态,这个链下组件在高效执行订单和维护最新订单簿方面发挥着关键作用。
  • 链上部分:链上部分处理状态承诺和系统资产。为确保交易的安全性和完整性,Brine利用STARK prover,并随后通过专用的StarkEx合同在以太坊网络上验证这些证明,以确保状态转换的准确性。

零知识证明

Brine的去中心化交易所(DEX)平台使用StarkEx服务来批量处理证明

由于Brine的订单存储在链下,该平台可以容纳各种订单类型,包括限价单和止损单。做市商可以提供流动性,获得类似于中心化交易所(CEX)上看到的费用。

Brine的撮合引擎拥有出色的可扩展性,能够处理高达60万笔每秒的交易。这超越了通常与AMMs相关的限制。重要的是,由于只有加密证明被发布到链上,交易者在其头寸方面可以享受100%的隐私。

免责声明:本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况,及遵守所在国家和地区的相关法律法规。 欢迎转载分享!
转载请注明本文地址:
如有文章侵犯了您的权利,请联系本站站长,我们将在第一时间删除相关内容,谢谢!

分享
推荐阅读
立足于香港,定位于传播、交流全球Web3区块链资讯情报社区,集区块链行业新闻、Web、资讯、行情、策略、百科、社区等一站式区块链产业信息服务平台,我们追求及时、全面、专业、准确的资讯与数据,致力于为区块链创业者以及数字货币投资者提供最好的产品和服务。
  • 商务合作

  • 微信公众号

  • 二维码