探索零知识技术领域

进阶1/4/2024, 1:57:30 PM
本文介绍了零知识(ZK)技术的技术原理、框架和应用,包括其隐私、身份(ID)、去中心化交易所(DEX)、预言机等方面。
  • 零知识 (ZK) 为 ZK rollups 提供动力,已成为区块链扩展领域的关键技术。
  • 然而,人们经常忽视的是 ZK 在应用层解决方案中所拥有的巨大潜力。在这些领域中,ZK可以保护数据隐私,也可以确保链下数据的真实性。
  • Zk 通过生成可轻松验证且无需覆盖硬件要求的证明来实现这些保证。尽管这些证明的生成需要很高的计算要求,但可将这项任务委托给专门的硬件证明者。
  • 人们对 Zk 的功能开展了研究,随后将其与各种应用程序相集成,这些有望成为去中心化信任的下一个基石。

零知识的本质

中本聪为存在已久的拜占庭将军问题精心设计了一个巧妙的解决方案,该问题本质上是解决去中心化实体如何达成相互协议或认同同一事实。这个突破就是工作量证明(PoW)共识算法。通过该算法,世界各地的矿工现在可以调整他们的经济利益,催生了全球共识体系。比特币赋予用户控制自己的私钥并独立验证交易的全力,引入了真正去中心化的托管生态系统。

以太坊通过权益证明(PoS)共识机制带来了一些变化,该机制依靠验证者激励和惩罚来维持网络安全与和谐。

  • 去中心化账本在每个网络节点上重新执行计算来,以此来实现正确性。 这就像阅读整本书来验证一个单词一样。使用这种方法的架构计算效率很低,其中每个节点都必须下载最新的区块并执行整组交易以验证与区块的一致性。
  • 开放计算不仅占用资源,而且还暴露出一个软肋:缺乏隐私。MEV 攻击者会利用此漏洞,操纵交易序列以获取个人利益。

认识到这些挑战,区块链社区转而研究增强可扩展性和隐私保护。这掀起了探索 zk 密码学的,特别是探索 zk-SNARKs(零知识简洁非交互式知识论证)和 zk-STARKs(零知识可扩展透明知识论证)等技术的浪潮。这些技术之间存在细微差别,我们稍后会对其进行简单的解释。

从本质上讲,ZK 证明让某人(证明者)能够向不信任方(验证者)证明他们拥有特定知识,而无需透露有关该知识的任何细节。

ZKP 具有两个基本属性:

  • 简洁省力:使用验证证明,这比直接检查原始数据更高效。
  • 隐私性:被证明的任何数据内容都不会透露给验证者。

尽管该技术诞生于20世纪90年代,但其最初的应用大多局限于隐私解决方案。2010年,IBM利用 ZK 创建了其身份混合器 Bluemix,而 Microsoft 的 Election Guard 使用 ZKP 进行可验证的私人选举。

ZKP 能紧凑地验证链外计算,这种能力激发人们研究扩展以太坊等平台。去年,超过7.25亿美元的资金投入研究 ZK 区块链技术,凸显了其日益增长的重要性。

虽然 ZKP 的数学知识十分复杂、难以理解,但开发人员能将 ZK 加密技术引入应用程序中,就像使用公钥加密技术一样。正在进行的研究目标是开发最高水准的证明者和验证者,重点是有效生成证明并快速对其验证。

区块链需要关键的链下数据,例如资产价格或来自替代区块链的信息。传统上,像 Chainlink 这样的预言机利用受经济激励的验证者网络来确保数据的准确性和完整性,一直是可信的数据传递者。

ZKP 为加密经济领域带来了新的信任轴心。借助零知识证明技术,这些应用程序是区块链之外警惕的“眼睛”,能证明链下数据和计算的合法性,让人无可辩驳。

ZK技术领域

扩展

通用目的汇总(Rollup)

随着以太坊的快速增长,ERC20 代币和 ERC721 NFT 的交易成本常飙升徘徊在5至15美元的范围。这促使人们要在不影响去中心化的情况下重新考虑可扩展性。

进入汇总时代:以太坊的战略支点转向模块化、以汇总为中心的框架,该框架有三个不同的层:数据可用性(DA)层、执行层和结算层。

目前有Optimistic Rollups 和 ZK Rollups 这两种类型的汇总正在开发中。它们能提供在以太坊链上执行交易及结算且继承其安全性的第2层扩展解决方案。

这两种类型都依靠排序器来接收用户交易,将交易组织成批次交易,并生成对以太坊主网的承诺证明。Optimistic Rollups 使用观察者在争议解决窗口内发现欺诈交易,而 ZK Rollups 使用有效性证明来确保交易有效性,无需链上验证。

来源:Messari

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

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

存储层:说到存储,大多数汇总,包括Polygon的zkEVMScrollzkSync EraLinea,更喜欢将压缩格式的数据推送到以太坊calldata。这种方法不失活跃性,并让用户能够从以太坊重新创建状态,并在需要时绕过汇总。

然而,一些 zk-rollups,例如 Starknet 的 Validium、Matter Lab 的 zkPorter 和 Polygon 的 Miden 将数据存储在由数据可用性委员会 (DAC) 保护的不同数据可用性(DA)层上。 EigenDAAvail 等就是使用这种方法的典型解决方案,它们致力于提高吞吐量,同时仍然受益于以太坊区块链的安全保证。

EigenDA 计划将吞吐量扩展至 10Mbps

结算层:ZK Rollups 将新的汇总状态以及“有效性证明”提交给以太坊上的验证者智能合约。这些验证者检查有效性证明以保证链下虚拟机中状态转换的正确性并记录新的状态转换。

验证过程可能会占用大量资源,单个证明所需的Gas成本为30万到500万不等。验证时间也可能很长,大约10秒。汇总通常会定期向第1层发布证明,通过批量交易来降低每笔交易的成本。

ZK 证明不能用于汇总中的共识或交易排序。排序者通常根据各自的规则集做出共识决策,其中许多遵循先见原则。在发展中,人们一直在努力使排序者去中心化,其中一些项目(入@espressosys/decentralizing-rollups-announcing-the-espresso-sequencer-81c4c7ef6d97">Espresso)实施了共享排序者。

基于VM的汇总

正如我们之前讨论的,使用第2层 EVM 时面临一些挑战,这可能会限制计算效率。以太坊的原生函数(例如哈希函数)具有高耗能特性,通常与 ZK 技术不兼容。在意识到其中一些操作码的大部分成本来自这些需要高费用的操作后,ZKSync 不再支持其中一些操作码。

与专注于以太坊指令集的 EVM 不同,基于 zkVM 的汇总更灵活,能运行与不同计算机架构兼容的各种软件。这些虚拟机作为超级集可以实现不同的指令集,例如 RISC-V 和 WebAssembly,并生成用于计算的 ZKP。

在基于 zkVM 的汇总领域中,Starknet 是一个开创性的项目。它开发了 Cairo,一种专门的低级编程语言,其操作更接近汇编语言。Polygon 的 Miden 使用自己的汇编语言,与 Move 更接近,而 Delphinus 和 Fluent 则致力于基于 WASM 语言的汇总。Fluent 和 ZKM 允许开发人员使用 Rust、TypeScript、C/C++、Go 等通用编程语言构建应用程序。

在基于帐户的系统范围内构建的应用程序难以开发,甚至是不切实际的。基于 zkVM 的汇总为中构建提供了便利,从而重新定义了以太坊的功能。

例如,Miden 采用基于客户端的证明模型,其中每个帐户都充当智能合约,用户负责在其客户端设备上创建 ZKP。然后将这些 zk 证明提交到 Miden rollup 以更新全局状态。这种方法支持并行执行交易并增强了隐私保护,因为代币转移和 NFT 交换等操作能在不影响公共状态的情况下进行。

汇总框架

多个团队已开始开发简化零知识(ZK)汇总,为更广泛的构建者打开大门。这些创新框架为构建者提供了一组全面的组件,包括排序者、证明者、数据可用性(DA)层和共识层。

利用这些框架的构建者继承了以太坊强大的安全性同时保留做出选择的自由,以此来获得至关重要的优势。他们可以选择部署原生代币或使用以太币 (ETH),并能灵活地参与外部验证者或为其验证者实施定制规则。

Sovereign LabsPolygon 正在积极开发软件开发套件 (SDK),这些套件让任何人都能使用预定义的规则集和可互操作的桥接来创建 ZK Layer 2 (L2) 汇总,从而实现强大的流动性。

Lumoz 采用综合方法,通过专门的工作量证明 (PoW) 共识、专用证明网络以及与其他汇总的沟通渠道,授予开发团队对其汇总的完全主权。

LayerN 为混合 zk-OP(零知识操作员)架构提供便利,并承诺提供比以太坊便宜一千倍的交易费用。

Eclipse 最近发布了一则重要公告,推出了通用目的第2层协议,它是结合了不同模块化元素的范例:Solana 的执行机将 DA 发布到 Celestia 并使用 Risc0 生成 ZK 证明以在以太坊上结算。这些实验正在推动模块化论点的发展,致力于将 Solana 的高性能以太坊虚拟机 (EVM) 与以太坊的安全性相结合。

汇总即服务

Rollups-as-a-Service (RaaS) (汇总即服务)简化了汇总框架和软件开发工具包 (SDK) 的架构,提供了一个抽象层,有助于轻松部署、维护和创建自定义的、生产级的特定于应用程序的 汇总。

RaaS 将开发人员不再需要面对基础设施管理和网络性能监控的复杂性,而让他们能够专注于构建应用程序层。过去十分耗费时间的工作现在转变无代码部署过程,简单且仅需10分钟。

它们简化了汇总的部署和开发过程,可将它们视为汇总中的 AWS(Amazon Web Services)。

借助 VistaraGateway 等平台,用户能够混合并匹配模块化组件,在短短几秒钟内根据自己的需求快速启动个性化汇总。

有了这种模块化方法,开发人员能够制作与其独特目标精确一致的 ZK 汇总。从执行虚拟机 (VM) 和数据可用性 (DA) 层到定排序者、桥接者和证明者,开发人员能够灵活地选择适合其要求的组件。

Vistara 很灵活,支持从多个虚拟机中进行选择

特殊目的汇总

尽管通用目的汇总取得了进步,但由于第2层区块空间存在竞争且第1层批量发布的成本上升了,因此扩展仍受到限制。特定的 dApp 需要定制功能,例如 DeFi 的快速终局性、游戏的低延迟以及企业区块链的隐私保护,从而需要特定于应用程序的汇总。

Starknet 是处于领先地位的生态系统。它处理了超过4.18亿笔交易,包括 dYdX、SorareImmutable 等应用程序利用基于 Starkware 的 Starkex 技术构建的特定于应用程序的汇总。 Starknet 的运营商对交易进行聚合、批量处理,并向以太坊主链提供 ZK 证明,以低成本保障安全和隐私。

Loopring 是 ZK 的汇总,专门研究 DeFi 用例,可提供用于即使执行具有 CEX 级别的流动性的大宗交易等功能。Myria 是另一个 ZK 汇总,迎合游戏应用,注重低交易成本。Canto 最近宣布,它正在利用 Polygon 的链开发套件迁移到以现实世界资产为重点的第2层协议。

隐私

Web3 技术迅速扩展,吸引了数百万用户。然而随之而来的是仍然潜伏着的紧迫隐私问题——特别是对于机构、银行和企业来说,根据法律要求的义务,他们常陷入保护其金融交易的困境之中。

ZK 证明添加了防止窥探的元素,这是 zCash 最初普及的用例。Zcash 使用 zk-SNARK 来证明交易的有效性,而不会泄露有关发送者、接收者或交易金额的任何信息。钱包余额不是以明文而是以“承诺说明”的形式存储。

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

  • 价值守恒:确认进入交易(输入)的币总量等于离开交易(输出)的币总量,但不透露实际数量。
  • 支出权限:它证明发送者拥有与他们正在使用的输入相关的正确私人支出密钥,从而确认他们支出代币的权限。
  • 防止双花:它证明代币以前未被花过,防止双花。

注重隐私的第1层协议

Aleo、Aleph Zero、Ironfish 和 Mina 等一系列协议正在进一步突破界限,专门提供优先考虑隐私的第1层解决方案。与以太坊基于账户的框架(对于隐私而言并不是最佳选择)不同,这些协议采用了比特币 UTXO 模型的修改版本。

  • 共识模型:每个以隐私为中心的协议都采用不同的共识模型。例如,Aleo 利用可持续工作量证明(SPoW)机制,其中“工作量”是指生成 zk 证明而不是高耗能的挖矿行为。Ironfish 遵循类似于比特币的工作量证明 (PoW) 模型,仅通过挖矿生成代币,而无需进行首次代币发行 (ICO)。Aztec 最初设计为第1层 (L1) 解决方案,现已过渡到第2层 (L2) 框架,并停留在以太坊网络上。
  • 重新定义网络层:除了达成共识外,这些协议还重新构想了网络层,支持点对点数据交换以最大限度地保护隐私。例如,Ironfish 使用 WebRTC 和 WebSocket 的组合来建立与节点的连接。用户可以建立直接连接、进行交易、创建 ZKP,以验证对规则的遵守情况,然后在区块链上结算交易,同时保护他们的隐私。

注重隐私的第2层协议

与此同时,AztecOla 等项目致力于通过私人账户和加密交易实现 ZK 汇总来加强对以太坊网络隐私性的保护。这两个项目都在开发自己的 zkVM。它们都高度重视私人账户管理,而不是仅仅关注以太坊兼容性。

ZK Apps

应用程序利用 ZKP 的隐私保护功能为链下数据和计算带来了信任。我们可以将大多数用例总结为下类别:

a. 安全共享秘密:ZK 技术使用户能够通过不信任的结算层私密地共享秘密。zkMail 和 zkVoting 协议等知名应用程序为i端到端加密数据共享创造条件,确保强大的隐私保护。

b.保密的链上身份:ZK Apps 使用户能够以可组合的方式创建谨慎的链上身份,超越了混合等传统数据混淆方法的局限性。

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

d.可互操作的信任:当将链下数据桥接到区块链网络时,ZK 驱动的预言机和桥接器在维护加密完整性方面发挥着重要作用。

隐私中间件

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

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

认识到合规性的必要性,Vitalik Buterin 和 Ameen Soleimani 等行业领导者正在开创下一代隐私池模型,以在稳健的隐私与法规遵守之间取得平衡。这些模型探索了各种方法:

  • 黑名单筛选:该方法能禁止从 FATF 黑名单上列出的地址进行存款,确保协议合法地用于增强隐私的活动。
  • 受用户控制的密钥查看:用户维护着可以有选择地与监管机构共享的只读密钥。这些密钥验证资金来源和纳税义务,同时确认资金并非来自黑名单地址。
  • 受服务器控制的密钥查看:在此设置中,协议可向监管机构提供选择性披露以增强合规性,保留了查看所有用户资金和交易的能力。

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

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

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

DEX

为了满足机构空间内对安全和私密资产交换日益增长的需求,开发团队正在积极探索基于 ZK 技术的去中心化交易所(DEX)领域。与自动做市商(AMM)不同,由 ZK 技术提供支持的 DEX 使用的是订单簿,这带来了一系列好处,包括增强的流动性、无 Gas 交易、无限的交易对、多样化的委托类型和人性化的界面等。

让我们以 Brine 为例。Brine 采用混合模型,有效地将其操作划分为链下和链上组件:

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

Brine 的 DEX 平台使用 StarkEx 服务进行批量证明

由于 Brine 的订单是链下存储的,因此该平台可容纳多种订单类型,包括限价委托和止损委托。做市商可以介入提供流动性,赚取与中心化交易所(CEX)类似的费用。

Brine 的匹配引擎拥有绝佳的可扩展性,能够处理高达600,000 TPS。这超越了通常与 AMM 相关的限制。重要的是,由于只有加密证明发布在链上,交易者的头寸是100%隐私的。

除了 Brine 之外,ZkexSatori 等平台也通过使用类似的机制实现衍生品和永续合约的交易,这在市场上掀起了一股浪潮。

互操作性

在两个链之间桥接数据和资产通常需要受信任的验证者组或受信任的多重签名托管人,他们负责确保数据的准确传输。这种对外部验证的依赖造成了严重的安全漏洞,NomadWormholeRonin 等链桥的漏洞就是这类典型的案例,他们因此而遭到了累计15亿多美元的损失。在这些传统的链桥中,在目标链上铸造相应的资产之前将资产锁定在原始链上,这通常由外部委员会决定。

基于零知识 (ZK) 技术的轻客户端得以推出,这带来了开创性的进步。这些轻客户端使用 ZK 证明来验证源链上的共识更改。运行整个区块链的轻客户端在计算上会费用昂贵,因此 ZK 链桥将共识更改的 zkSNARK 证明发送到目标链的执行层。目的链通过验证ZK证明来验证共识变更​​的正确性。这种方法大大降低了运行节点的计算成本,进而在不依赖信任假设的情况下增强了互操作性。

例如,Succinct 正在开发一个名为 Telepathy 的轻客户端,它可以验证以太坊在 EVM 链上仅 300,000 个 Gas 的共识。这些轻客户端可以支持目标链上的各种功能,包括:

  • 跨链发送任意消息以管理跨链部署。
  • 读取以太坊验证者的权益和余额,以获取第2层解决方案和重质押协议。
  • 促进链之间的流动性链桥,而不依赖于锁定/铸币协议。
  • 跨第2层自动做市商 (AMM) 和 DeFi 协议的目标链,以访问来自以太坊的 Chainlink 预言机数据。

PolyhedrazkLink 专注于跨多个链的流动性桥接。zklink 的目标不是在每个连接的网络上维护自己的流动性池,而是利用 zkLink 基础设施汇聚所有 dApp 的流动性并合并代币。

预言机和协处理器

预言机可分为两种主要类型

  • 输入预言机 - 将链下数据引入链上环境(例如:Chainlink Price Feeds)
  • 输出预言机 - 将链上数据传送到链下环境以进行高级计算(图表)

智能合约具有固有的局限性,特别是在处理浮点运算、密集计算或统计分析等复杂计算时更是如此。这就是输出预言机发挥作用的地方,它将这些计算任务卸载到外部系统以解决这些挑战。

Chainlink 和 Graph 等基于质押的预言机运行一组验证者,这些验证者从现实世界导入数据(例如 CEX 价格或天气数据)并对这些数据执行计算,并因此而获得奖励。然而,当质押总金额低于可能被盗的潜在价值时,就会出现安全问题。黑客会利用这种不平衡来操纵预言机数据,从而导致频繁的攻击和套利机会漏洞。

这就是 ZK 预言机能起作用的地方,特别是在输出预言机领域更是如此。他们通过提供 zk 证明来验证计算是否按预期进行,从而确保链下执行的计算的准确性。这催生了一个称为协处理器的新类别。

HyperOracle 利用专门的预言机节点来生成零知识 (zk) 证明并使用验证者合约将数据传输到以太坊区块链上,从而开创了“去信任”的预言机。

这种方法将安全模型转变为“1 of N”模型。在这种模型下,即使一个节点提交了正确的数据,验证者合约也可以检测到任何差异。此设置保证了链下计算100%的计算完整性,同时将终局性确定时间缩短至仅 12秒,与以太坊的出块时间保持一致。

为了解决另一个挑战,Axiom 提供了一种去信任的机制,用于访问以太坊上的历史状态数据。由于以太坊的状态机性质,智能合约只能访问当前状态,并依靠中心化的链下预言机来访问历史状态数据。

Axiom 提供零知识证明,用于验证任何过往以太坊区块的区块头、状态、交易和收据的真实性,从而解决了这个问题。

Herodotus专门研究存储证明,这本质上是 ZK 证明,可确认第1层和第2层链的状态根中数据的包含性。开发人员可构建跨链应用程序,例如构建可通过在另一条链上提供抵押品来支持一条链上的贷款的借贷应用程序,以及可利用另一条链上的 NFT 资产的游戏应用程序。

身份/身份证明

ZKP 的隐私保证创造了设计新加密原语的机会,这些加密原语涵盖身份的各个方面,包括位置证明所有权证明语音证明、教育、经验、医疗数据和 KYC。

Sismo 是该领域使用 ZKP 技术的范例。该项目的团队正在开发 ZK 徽章,使用户能够有选择地与 web3 应用程序和用户共享其个人数据。 ZK徽章是一种灵魂绑定的代币,它根据用户的个人数据将用户分为特定的组。例如,用户可以通过生成验证条件的 ZK 证明来证明自己是以太坊的长期用户、特定 GitHub 存储库的贡献者或美国公民。验证证明后,Sismo 向用户授予与其个人数据相对应的徽章。徽章标代表用户的身份,但实际上并没有透露任何敏感细节。

Worldcoin 是 ZKP 的另一个创新应用。它将 World ID 建立为开放且非许可的身份协议。该协议利用虹膜生物识别技术进行精确的身份验证,通过卷积神经网络将高分辨率虹膜扫描转换为压缩形式。该数据被插入到他们的 Semaphore ZKP 实现中,从而生成存储在 World ID 合约中的身份承诺。

要证明自己的身份,用户需要提供其World ID,该 ID 会根据整个列表进行检查以验证会员身份,从而授予对有用功能(如投票和一次性空投)的访问权限。

Worldcoin 声称它在计算哈希值后处理了虹膜图像,但没有十全十美的方法来验证图像的破坏情况。

可验证的计算

计算证明是一种加密技术,允许一方向另一方证明特定计算已正确执行,而不会泄露有关输入、输出或计算本身的任何敏感信息。

当一段代码在其机器上运行时,Risczero 的虚拟机会生成 ZKP 计算收据。这种“执行跟踪”让所有人都能在计算的每个时钟周期验证机器状态的记录,同时保护数据隐私。这就像在 RISC-V 架构上有一个用于计算的数字公证人。

这开启了一个充满可能性的世界,例如:

  1. 验证计算是否已发生而无需完全披露信息。这就是ZK 漏洞证明,它允许白帽黑客报告智能合约中的实时漏洞,而无需披露漏洞的机密细节。此外,Filecoin 使用的 ZK 存储证明可确保矿工在任何给定时间存储数据副本。
  2. 验证媒体的真实性:区分真实图像和经过处理的图像已成为一项不断升级的挑战,助长了假新闻的扩散。内容来源和真实性联盟 (C2PA) 提出了一项标准来验证图像来源,以确保图像确实真实且是在所声称的环境中捕获的。该标准要求相机对拍摄的每张照片以及有关照片的一系列主张(例如位置、时间戳)进行“数字签名”。然而,在图像发布到互联网上之前,它们可能会受到尺寸调整、裁剪和放大,这可能会使其与主张不符。Boneh 和他的团队已实施了 ZKP 用于进行@boneh/using-zk-proofs-to-fight-disinformation-17e7d57fe52f">各种编辑,包括裁剪、转置、翻转、旋转和调整对比度/亮度。因此,任何用户都可以轻松检查证据以验证新闻报道是否真实,而无需依赖“社区笔记”。
  3. 财务信息验证:凭借 ZK 证明,个人可将其 KYC 数据转换为客户端设备上的 ZK 证明,并与 Dapp 共享以确保合规性,而不会泄露敏感信息。或者,银行可以签署 ZK 证明来确认信用评分的完整性。虽然金融科技应用程序依靠 Plaid 来验证此类数据,但需要银行的许可才能建立此类集成。
  4. ReclaimzkPass 和 Chainlink 的 DECO 等协议绕过了这些权限要求,并将财务数据存储为可组合的 zk 证明,可供任何 Dapp 使用。这些协议的工作原理是用作网站服务器和客户端设备之间的代理,生成 TLS 收据以确保数据的准确性。它们允许以去信任的方式导入各种数据,例如 Github 存储库、Facebook 帖子、银行余额、土地记录、税务文件和游戏成就等,所有这些数据都记录为链上的 zk 证明。这些协议将 web2 数据从集中的、经许可的服务器中解放出来,并将其转换为可组合的 web3 凭证。
  5. 验证大型模型的真实性:GizaSpace and TimeModulus Labs 正在研究可验证的算法完整性,着重研究 ZKML。

算法对我们的日常生活有着巨大的影响:从在线搜索和社交媒体到个性化推荐,算法为他们提供了动力,控制着我们的注意力,塑造了我们的信念。考虑到它们的巨大重要性,这些算法的透明度和开放性至关重要,因为用户应知晓这些算法的工作原理及使用方法。

  1. ZKML 技术让许用户能为单个帖子的最终输出分数提供加密证明,以此来验证 Twitter 等平台是否真正使用他们声称的算法。为让科技公司担负责任,ZKP 提供了一条充满希望的途径,其应用范围从社交媒体扩展到各个领域,包括人工智能和医疗保健。

  1. @danieldkang/empowering-users-to-verify-twitters-algorithmic-integrity-with-zkml-65e56d0e9dd9">Daniel Kang 演示了 Twitter 如何为每条推文发布分数以验证排名是否准确。

私密计算

(ZKP)本身就很强大,但当与多方计算(MPC)、完全同态加密(FHE)和可信执行环境(TEE)等其他加密技术结合使用时,它们开辟了安全和私有设计的新领域。

Renegade 正在开发一个链上暗池,确保交易者在执行交易之前和之后享有完全的隐私保护。在传统设置中,当两方希望交换信息和资产时,他们必须依赖中央服务器来解密和处理数据。然而,如果任何一方在代币交换之前得知输出并中止连接,则可能会导致信息泄露和市场操纵。

为了解决这个问题,Renegade 引入了具有多个中继者的点对点八卦网络。当交易者寻求交易时,中继者会识别交易对手并建立 MPC 连接,从而保护交易信息免遭第三方泄露。

MPC 是一种加密技术,使多方能够协作计算函数输出,而无需泄露其输入。交易者可在不透露其全部余额的情况下交换资产,这一核心功能构成了完整暗池的基础,从而无需可信运营商。然而,MPC 协议本身并不能保证输入数据的有效性。Renegade 在 MPC 计算中生成 zk-SNARK 证明,确保交易者的余额与其声明相符。

交易者可以在 Renegade 上运行中继节点以获得完全的隐私保护

全同态加密支持加密数据的云计算,保护了敏感信息免遭第三方访问。同时,ZKP 提供了一种通过简洁的可验证证明来证明计算正确性的方法。

MPC、FHE 和 ZKP 的融合打开了新应用的大门。zkHoldem 通过为每次洗牌和发牌生成 ZK 证明,彻底改变了链上扑克游戏,确保了可证明的公平游戏。zkHoldem 提高了链上游戏完整性的标准,通过实施 MPC 技术来隐藏玩家的牌,甚至不让他们的服务器看到。

ZK 工具

验证系统

证明系统是一个两方协议,涉及一组规则和程序,使证明者能够说服验证者声明的真实性。开发人员可使用多个 ZKP 系统,每个系统都有其独特的优势和挑战:

  • zk-SNARKs(零知识简洁非交互式知识论证):
    • 优势:紧凑的证明大小;快速验证。
    • 挑战:需要“可信设置”——一种一次性初始化,如果处理不当,可能会导致虚假证明。
  • zk-STARKs(零知识可扩展透明知识论证):
    • 优势:无需可信设置;可防范量子威胁。
    • 挑战:较大的证明大小;计算需求提高。
  • Bulletproofs:
    • 优势:无需可信设置;相当小的证明大小。
    • 挑战:验证和创建比 zk-SNARK 更耗时。
  • PLONK:
    • 优势:拥有高效的算法和简化的设置。
    • 挑战:仍是一个正在进行的研究主题;不如已有的技术那样好。

软件

领域特定语言将抽象逻辑转换为可由证明系统使用的电路表示。DSL 以非常接近汇编语言的形式表达高级逻辑。有些(例如 Aztec 的 Noir)与多种验证系统兼容,它们因此而成为开发人员的绝佳选择。然而,这些语言是复杂的,这成为一大障碍,让电路设计对大多数开发人员而言具有挑战性。

一股创新浪潮正在席卷 ZKP 领域,许多团队都在打造高级语言,抽象出汇编语言的复杂性。

SnarkyJS(为 Mina 区块链量身定制的 TypeScript 框架)和 Polylang(由 Polybase Labs 与 Miden 的 VM 合作开发的另一个 TypeScript 框架)就是其中的两个案例。

总的来说,ZK 工具瞄准三大核心目标,即多功能性、人性化和性能。Solidity 对于生成 ZK 表示并不友好,因此 Starknet 团队创建了 Cairo,它是为创建基于 STARK 的智能合约而量身定制的。

以太坊的愿望之一是通过 0 型 zkEVM 将 ZK-EVM 集成到其核心协议中。然而,这一远大目标也伴随着一系列挑战,因为以太坊并不是为使 zk 易用而设计的,而且为以太坊区块生成证明的计算成本很高。RiscZero 最近宣布了他们的项目 Zeth,该项目能证明从每个 EVM 操作码和 EIP 到区块构建的以太坊的各个方面,但要将 ZK 纳入以太坊还有很长的路要走。

硬件

游戏行业的兴起激发了软件和硬件开发取得重大进步,改变了个人电脑和游戏机。1993年,Nvidia 进入该领域,专注于为 3D 加速量身定制 GPU,以满足强劲发展的游戏市场的需求。随着人工智能和机器学习 (ML) 热潮的兴起,Nvidia 认识到其 GPU 在加速这些领域的复杂计算方面尚未开发的潜力。因此,他们转向重新利用 GPU,以提高 AI 和 ML 任务的效率,最终获得了95%AI 芯片市场份额,主导着该市场。

同样,我们预计零知识 (ZK) 技术将迎来专用硅硬件的新时代。这些硬件(GPU、FPGA 和 ASIC)将加速证明的生成和验证,同时保持成本效益。

用户硬件上的生成 ZK 证明确实很慢,但对于维护隐私来说是必要的。在移动设备上使用 SHA2 对 10kb 数据进行哈希处理需要几毫秒,但生成 ZK 证明至少需要2分钟。

IngoyamaCysic这样的硬件加速团队可通过专门的硬件在云端生成证明并将证明返回给用户。

需要大量 zk 计算的协议还能与专业硬件提供商合作,确保最佳性能和有竞争力的价格。例如,Ulvetenna 运行着专为 ZKP 汇总计算而构建的 FPGA 集群。

这些初创公司提供了从在线软件即服务 (SaaS) 模式到向组织出售专用硬件等一系列选择。有些还提供咨询服务,用于根据应用的特定需求设计定制电路。

证明市场

对于需要 ZK 证明的新兴开发人员来说,与专业硬件提供商签订合约并寻找具有成本效益的解决方案可能会带来重大挑战。

RiscZero 的 Bonsai、Nil 的 Proof Market 和 Marlin 的 Kalypso 等证明市场作为桥梁,将需要 ZKP 生成器的初创公司与提供证明生成服务的初创公司连接起来。这些市场非常重视证明生成的两个重要方面:相关成本和生成证明所需的时间。

总的来说,有两个用户群——注重隐私的消费者和注重效率的初创公司

  • 客户端证明:个人希望生成 ZKP 来保护隐私,以保护他们的敏感信息免受中心化实体的影响。他们最好的选择是在移动设备或笔记本电脑上生成 ZKP,但由于这非常耗时,因此他们希望将其卸载到专用加速器上。研究人员正在积极探索使用 DIZK 等协议的私人委托方法,其目的是确保没有任何一个工作人员能够访问全部秘密,从而最大限度地提高隐私保护和安全性。
  • 服务器端证明:初创公司需要巨大的证明能力——例如为流经其系统的所有交易生成证明的去中心化交易所(DEX),并需要快速的处理能力以消除应用程序性能的延迟。

超越信任

通过 Polygon Ventures,我们有幸密切观察了 ZK 技术的演变。这段旅程使我们能够与 JordiDaniel 等先驱者合作,深入研究这项变革性技术的内部运作方式。

在熊市和牛市的周期性起伏中,基础设施往往在经济低迷时期成为无名英雄,为随后的经济复苏做好准备。回顾之前的牛市,ZK技术还处于萌芽阶段。快进到今天,我们见证了 ZK 应用程序的指数级增长、ZK 扩展的巨大进步以及显著扩展的去信任计算范式,这些发展确实鼓舞人心。

ZK技术一直在以惊人的速度发展;几年前看似不切实际的应用现已成为现实。新的 ZK 项目可以从各种库、DSL、zkVM 和其他工具中进行选择。——丹尼尔·卢巴罗夫,PLONKY2

我们正过渡到这样一个时代:曾经被认为绝对可靠的中央集权机构现在正受到越来越多的怀疑。虽然谷歌、推特和 Meta 等中心化的坚定支持者拥有策划和审查的权力,但很明显,变革之风正在酝酿。

与任何有前景的技术一样,ZK 也面临着挑战。保障 ZKP 安全性的过程需要时间,这让人想起以太坊早期的智能合约漏洞。尽管存在这些障碍,ZK 仍坚守着一个承诺——致力于从根本上改变我们彼此互动和信任的方式。

如果您正在这个领域构建创新的东西,我们很乐意联手并释放这个领域的巨大可能性。

十分感谢Nathan和Daniel提供的反馈。

披露:我们投资了此处列出的许多项目,包括 Space and Time、Airchains、Ingoyama、ZKLink、Eclipse 和 Gateway。

声明:

  1. 本文转载自[Polygon Ventures Newsletter],著作权归属原作者[Polygon Ventures team],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。

探索零知识技术领域

进阶1/4/2024, 1:57:30 PM
本文介绍了零知识(ZK)技术的技术原理、框架和应用,包括其隐私、身份(ID)、去中心化交易所(DEX)、预言机等方面。
  • 零知识 (ZK) 为 ZK rollups 提供动力,已成为区块链扩展领域的关键技术。
  • 然而,人们经常忽视的是 ZK 在应用层解决方案中所拥有的巨大潜力。在这些领域中,ZK可以保护数据隐私,也可以确保链下数据的真实性。
  • Zk 通过生成可轻松验证且无需覆盖硬件要求的证明来实现这些保证。尽管这些证明的生成需要很高的计算要求,但可将这项任务委托给专门的硬件证明者。
  • 人们对 Zk 的功能开展了研究,随后将其与各种应用程序相集成,这些有望成为去中心化信任的下一个基石。

零知识的本质

中本聪为存在已久的拜占庭将军问题精心设计了一个巧妙的解决方案,该问题本质上是解决去中心化实体如何达成相互协议或认同同一事实。这个突破就是工作量证明(PoW)共识算法。通过该算法,世界各地的矿工现在可以调整他们的经济利益,催生了全球共识体系。比特币赋予用户控制自己的私钥并独立验证交易的全力,引入了真正去中心化的托管生态系统。

以太坊通过权益证明(PoS)共识机制带来了一些变化,该机制依靠验证者激励和惩罚来维持网络安全与和谐。

  • 去中心化账本在每个网络节点上重新执行计算来,以此来实现正确性。 这就像阅读整本书来验证一个单词一样。使用这种方法的架构计算效率很低,其中每个节点都必须下载最新的区块并执行整组交易以验证与区块的一致性。
  • 开放计算不仅占用资源,而且还暴露出一个软肋:缺乏隐私。MEV 攻击者会利用此漏洞,操纵交易序列以获取个人利益。

认识到这些挑战,区块链社区转而研究增强可扩展性和隐私保护。这掀起了探索 zk 密码学的,特别是探索 zk-SNARKs(零知识简洁非交互式知识论证)和 zk-STARKs(零知识可扩展透明知识论证)等技术的浪潮。这些技术之间存在细微差别,我们稍后会对其进行简单的解释。

从本质上讲,ZK 证明让某人(证明者)能够向不信任方(验证者)证明他们拥有特定知识,而无需透露有关该知识的任何细节。

ZKP 具有两个基本属性:

  • 简洁省力:使用验证证明,这比直接检查原始数据更高效。
  • 隐私性:被证明的任何数据内容都不会透露给验证者。

尽管该技术诞生于20世纪90年代,但其最初的应用大多局限于隐私解决方案。2010年,IBM利用 ZK 创建了其身份混合器 Bluemix,而 Microsoft 的 Election Guard 使用 ZKP 进行可验证的私人选举。

ZKP 能紧凑地验证链外计算,这种能力激发人们研究扩展以太坊等平台。去年,超过7.25亿美元的资金投入研究 ZK 区块链技术,凸显了其日益增长的重要性。

虽然 ZKP 的数学知识十分复杂、难以理解,但开发人员能将 ZK 加密技术引入应用程序中,就像使用公钥加密技术一样。正在进行的研究目标是开发最高水准的证明者和验证者,重点是有效生成证明并快速对其验证。

区块链需要关键的链下数据,例如资产价格或来自替代区块链的信息。传统上,像 Chainlink 这样的预言机利用受经济激励的验证者网络来确保数据的准确性和完整性,一直是可信的数据传递者。

ZKP 为加密经济领域带来了新的信任轴心。借助零知识证明技术,这些应用程序是区块链之外警惕的“眼睛”,能证明链下数据和计算的合法性,让人无可辩驳。

ZK技术领域

扩展

通用目的汇总(Rollup)

随着以太坊的快速增长,ERC20 代币和 ERC721 NFT 的交易成本常飙升徘徊在5至15美元的范围。这促使人们要在不影响去中心化的情况下重新考虑可扩展性。

进入汇总时代:以太坊的战略支点转向模块化、以汇总为中心的框架,该框架有三个不同的层:数据可用性(DA)层、执行层和结算层。

目前有Optimistic Rollups 和 ZK Rollups 这两种类型的汇总正在开发中。它们能提供在以太坊链上执行交易及结算且继承其安全性的第2层扩展解决方案。

这两种类型都依靠排序器来接收用户交易,将交易组织成批次交易,并生成对以太坊主网的承诺证明。Optimistic Rollups 使用观察者在争议解决窗口内发现欺诈交易,而 ZK Rollups 使用有效性证明来确保交易有效性,无需链上验证。

来源:Messari

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

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

存储层:说到存储,大多数汇总,包括Polygon的zkEVMScrollzkSync EraLinea,更喜欢将压缩格式的数据推送到以太坊calldata。这种方法不失活跃性,并让用户能够从以太坊重新创建状态,并在需要时绕过汇总。

然而,一些 zk-rollups,例如 Starknet 的 Validium、Matter Lab 的 zkPorter 和 Polygon 的 Miden 将数据存储在由数据可用性委员会 (DAC) 保护的不同数据可用性(DA)层上。 EigenDAAvail 等就是使用这种方法的典型解决方案,它们致力于提高吞吐量,同时仍然受益于以太坊区块链的安全保证。

EigenDA 计划将吞吐量扩展至 10Mbps

结算层:ZK Rollups 将新的汇总状态以及“有效性证明”提交给以太坊上的验证者智能合约。这些验证者检查有效性证明以保证链下虚拟机中状态转换的正确性并记录新的状态转换。

验证过程可能会占用大量资源,单个证明所需的Gas成本为30万到500万不等。验证时间也可能很长,大约10秒。汇总通常会定期向第1层发布证明,通过批量交易来降低每笔交易的成本。

ZK 证明不能用于汇总中的共识或交易排序。排序者通常根据各自的规则集做出共识决策,其中许多遵循先见原则。在发展中,人们一直在努力使排序者去中心化,其中一些项目(入@espressosys/decentralizing-rollups-announcing-the-espresso-sequencer-81c4c7ef6d97">Espresso)实施了共享排序者。

基于VM的汇总

正如我们之前讨论的,使用第2层 EVM 时面临一些挑战,这可能会限制计算效率。以太坊的原生函数(例如哈希函数)具有高耗能特性,通常与 ZK 技术不兼容。在意识到其中一些操作码的大部分成本来自这些需要高费用的操作后,ZKSync 不再支持其中一些操作码。

与专注于以太坊指令集的 EVM 不同,基于 zkVM 的汇总更灵活,能运行与不同计算机架构兼容的各种软件。这些虚拟机作为超级集可以实现不同的指令集,例如 RISC-V 和 WebAssembly,并生成用于计算的 ZKP。

在基于 zkVM 的汇总领域中,Starknet 是一个开创性的项目。它开发了 Cairo,一种专门的低级编程语言,其操作更接近汇编语言。Polygon 的 Miden 使用自己的汇编语言,与 Move 更接近,而 Delphinus 和 Fluent 则致力于基于 WASM 语言的汇总。Fluent 和 ZKM 允许开发人员使用 Rust、TypeScript、C/C++、Go 等通用编程语言构建应用程序。

在基于帐户的系统范围内构建的应用程序难以开发,甚至是不切实际的。基于 zkVM 的汇总为中构建提供了便利,从而重新定义了以太坊的功能。

例如,Miden 采用基于客户端的证明模型,其中每个帐户都充当智能合约,用户负责在其客户端设备上创建 ZKP。然后将这些 zk 证明提交到 Miden rollup 以更新全局状态。这种方法支持并行执行交易并增强了隐私保护,因为代币转移和 NFT 交换等操作能在不影响公共状态的情况下进行。

汇总框架

多个团队已开始开发简化零知识(ZK)汇总,为更广泛的构建者打开大门。这些创新框架为构建者提供了一组全面的组件,包括排序者、证明者、数据可用性(DA)层和共识层。

利用这些框架的构建者继承了以太坊强大的安全性同时保留做出选择的自由,以此来获得至关重要的优势。他们可以选择部署原生代币或使用以太币 (ETH),并能灵活地参与外部验证者或为其验证者实施定制规则。

Sovereign LabsPolygon 正在积极开发软件开发套件 (SDK),这些套件让任何人都能使用预定义的规则集和可互操作的桥接来创建 ZK Layer 2 (L2) 汇总,从而实现强大的流动性。

Lumoz 采用综合方法,通过专门的工作量证明 (PoW) 共识、专用证明网络以及与其他汇总的沟通渠道,授予开发团队对其汇总的完全主权。

LayerN 为混合 zk-OP(零知识操作员)架构提供便利,并承诺提供比以太坊便宜一千倍的交易费用。

Eclipse 最近发布了一则重要公告,推出了通用目的第2层协议,它是结合了不同模块化元素的范例:Solana 的执行机将 DA 发布到 Celestia 并使用 Risc0 生成 ZK 证明以在以太坊上结算。这些实验正在推动模块化论点的发展,致力于将 Solana 的高性能以太坊虚拟机 (EVM) 与以太坊的安全性相结合。

汇总即服务

Rollups-as-a-Service (RaaS) (汇总即服务)简化了汇总框架和软件开发工具包 (SDK) 的架构,提供了一个抽象层,有助于轻松部署、维护和创建自定义的、生产级的特定于应用程序的 汇总。

RaaS 将开发人员不再需要面对基础设施管理和网络性能监控的复杂性,而让他们能够专注于构建应用程序层。过去十分耗费时间的工作现在转变无代码部署过程,简单且仅需10分钟。

它们简化了汇总的部署和开发过程,可将它们视为汇总中的 AWS(Amazon Web Services)。

借助 VistaraGateway 等平台,用户能够混合并匹配模块化组件,在短短几秒钟内根据自己的需求快速启动个性化汇总。

有了这种模块化方法,开发人员能够制作与其独特目标精确一致的 ZK 汇总。从执行虚拟机 (VM) 和数据可用性 (DA) 层到定排序者、桥接者和证明者,开发人员能够灵活地选择适合其要求的组件。

Vistara 很灵活,支持从多个虚拟机中进行选择

特殊目的汇总

尽管通用目的汇总取得了进步,但由于第2层区块空间存在竞争且第1层批量发布的成本上升了,因此扩展仍受到限制。特定的 dApp 需要定制功能,例如 DeFi 的快速终局性、游戏的低延迟以及企业区块链的隐私保护,从而需要特定于应用程序的汇总。

Starknet 是处于领先地位的生态系统。它处理了超过4.18亿笔交易,包括 dYdX、SorareImmutable 等应用程序利用基于 Starkware 的 Starkex 技术构建的特定于应用程序的汇总。 Starknet 的运营商对交易进行聚合、批量处理,并向以太坊主链提供 ZK 证明,以低成本保障安全和隐私。

Loopring 是 ZK 的汇总,专门研究 DeFi 用例,可提供用于即使执行具有 CEX 级别的流动性的大宗交易等功能。Myria 是另一个 ZK 汇总,迎合游戏应用,注重低交易成本。Canto 最近宣布,它正在利用 Polygon 的链开发套件迁移到以现实世界资产为重点的第2层协议。

隐私

Web3 技术迅速扩展,吸引了数百万用户。然而随之而来的是仍然潜伏着的紧迫隐私问题——特别是对于机构、银行和企业来说,根据法律要求的义务,他们常陷入保护其金融交易的困境之中。

ZK 证明添加了防止窥探的元素,这是 zCash 最初普及的用例。Zcash 使用 zk-SNARK 来证明交易的有效性,而不会泄露有关发送者、接收者或交易金额的任何信息。钱包余额不是以明文而是以“承诺说明”的形式存储。

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

  • 价值守恒:确认进入交易(输入)的币总量等于离开交易(输出)的币总量,但不透露实际数量。
  • 支出权限:它证明发送者拥有与他们正在使用的输入相关的正确私人支出密钥,从而确认他们支出代币的权限。
  • 防止双花:它证明代币以前未被花过,防止双花。

注重隐私的第1层协议

Aleo、Aleph Zero、Ironfish 和 Mina 等一系列协议正在进一步突破界限,专门提供优先考虑隐私的第1层解决方案。与以太坊基于账户的框架(对于隐私而言并不是最佳选择)不同,这些协议采用了比特币 UTXO 模型的修改版本。

  • 共识模型:每个以隐私为中心的协议都采用不同的共识模型。例如,Aleo 利用可持续工作量证明(SPoW)机制,其中“工作量”是指生成 zk 证明而不是高耗能的挖矿行为。Ironfish 遵循类似于比特币的工作量证明 (PoW) 模型,仅通过挖矿生成代币,而无需进行首次代币发行 (ICO)。Aztec 最初设计为第1层 (L1) 解决方案,现已过渡到第2层 (L2) 框架,并停留在以太坊网络上。
  • 重新定义网络层:除了达成共识外,这些协议还重新构想了网络层,支持点对点数据交换以最大限度地保护隐私。例如,Ironfish 使用 WebRTC 和 WebSocket 的组合来建立与节点的连接。用户可以建立直接连接、进行交易、创建 ZKP,以验证对规则的遵守情况,然后在区块链上结算交易,同时保护他们的隐私。

注重隐私的第2层协议

与此同时,AztecOla 等项目致力于通过私人账户和加密交易实现 ZK 汇总来加强对以太坊网络隐私性的保护。这两个项目都在开发自己的 zkVM。它们都高度重视私人账户管理,而不是仅仅关注以太坊兼容性。

ZK Apps

应用程序利用 ZKP 的隐私保护功能为链下数据和计算带来了信任。我们可以将大多数用例总结为下类别:

a. 安全共享秘密:ZK 技术使用户能够通过不信任的结算层私密地共享秘密。zkMail 和 zkVoting 协议等知名应用程序为i端到端加密数据共享创造条件,确保强大的隐私保护。

b.保密的链上身份:ZK Apps 使用户能够以可组合的方式创建谨慎的链上身份,超越了混合等传统数据混淆方法的局限性。

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

d.可互操作的信任:当将链下数据桥接到区块链网络时,ZK 驱动的预言机和桥接器在维护加密完整性方面发挥着重要作用。

隐私中间件

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

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

认识到合规性的必要性,Vitalik Buterin 和 Ameen Soleimani 等行业领导者正在开创下一代隐私池模型,以在稳健的隐私与法规遵守之间取得平衡。这些模型探索了各种方法:

  • 黑名单筛选:该方法能禁止从 FATF 黑名单上列出的地址进行存款,确保协议合法地用于增强隐私的活动。
  • 受用户控制的密钥查看:用户维护着可以有选择地与监管机构共享的只读密钥。这些密钥验证资金来源和纳税义务,同时确认资金并非来自黑名单地址。
  • 受服务器控制的密钥查看:在此设置中,协议可向监管机构提供选择性披露以增强合规性,保留了查看所有用户资金和交易的能力。

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

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

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

DEX

为了满足机构空间内对安全和私密资产交换日益增长的需求,开发团队正在积极探索基于 ZK 技术的去中心化交易所(DEX)领域。与自动做市商(AMM)不同,由 ZK 技术提供支持的 DEX 使用的是订单簿,这带来了一系列好处,包括增强的流动性、无 Gas 交易、无限的交易对、多样化的委托类型和人性化的界面等。

让我们以 Brine 为例。Brine 采用混合模型,有效地将其操作划分为链下和链上组件:

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

Brine 的 DEX 平台使用 StarkEx 服务进行批量证明

由于 Brine 的订单是链下存储的,因此该平台可容纳多种订单类型,包括限价委托和止损委托。做市商可以介入提供流动性,赚取与中心化交易所(CEX)类似的费用。

Brine 的匹配引擎拥有绝佳的可扩展性,能够处理高达600,000 TPS。这超越了通常与 AMM 相关的限制。重要的是,由于只有加密证明发布在链上,交易者的头寸是100%隐私的。

除了 Brine 之外,ZkexSatori 等平台也通过使用类似的机制实现衍生品和永续合约的交易,这在市场上掀起了一股浪潮。

互操作性

在两个链之间桥接数据和资产通常需要受信任的验证者组或受信任的多重签名托管人,他们负责确保数据的准确传输。这种对外部验证的依赖造成了严重的安全漏洞,NomadWormholeRonin 等链桥的漏洞就是这类典型的案例,他们因此而遭到了累计15亿多美元的损失。在这些传统的链桥中,在目标链上铸造相应的资产之前将资产锁定在原始链上,这通常由外部委员会决定。

基于零知识 (ZK) 技术的轻客户端得以推出,这带来了开创性的进步。这些轻客户端使用 ZK 证明来验证源链上的共识更改。运行整个区块链的轻客户端在计算上会费用昂贵,因此 ZK 链桥将共识更改的 zkSNARK 证明发送到目标链的执行层。目的链通过验证ZK证明来验证共识变更​​的正确性。这种方法大大降低了运行节点的计算成本,进而在不依赖信任假设的情况下增强了互操作性。

例如,Succinct 正在开发一个名为 Telepathy 的轻客户端,它可以验证以太坊在 EVM 链上仅 300,000 个 Gas 的共识。这些轻客户端可以支持目标链上的各种功能,包括:

  • 跨链发送任意消息以管理跨链部署。
  • 读取以太坊验证者的权益和余额,以获取第2层解决方案和重质押协议。
  • 促进链之间的流动性链桥,而不依赖于锁定/铸币协议。
  • 跨第2层自动做市商 (AMM) 和 DeFi 协议的目标链,以访问来自以太坊的 Chainlink 预言机数据。

PolyhedrazkLink 专注于跨多个链的流动性桥接。zklink 的目标不是在每个连接的网络上维护自己的流动性池,而是利用 zkLink 基础设施汇聚所有 dApp 的流动性并合并代币。

预言机和协处理器

预言机可分为两种主要类型

  • 输入预言机 - 将链下数据引入链上环境(例如:Chainlink Price Feeds)
  • 输出预言机 - 将链上数据传送到链下环境以进行高级计算(图表)

智能合约具有固有的局限性,特别是在处理浮点运算、密集计算或统计分析等复杂计算时更是如此。这就是输出预言机发挥作用的地方,它将这些计算任务卸载到外部系统以解决这些挑战。

Chainlink 和 Graph 等基于质押的预言机运行一组验证者,这些验证者从现实世界导入数据(例如 CEX 价格或天气数据)并对这些数据执行计算,并因此而获得奖励。然而,当质押总金额低于可能被盗的潜在价值时,就会出现安全问题。黑客会利用这种不平衡来操纵预言机数据,从而导致频繁的攻击和套利机会漏洞。

这就是 ZK 预言机能起作用的地方,特别是在输出预言机领域更是如此。他们通过提供 zk 证明来验证计算是否按预期进行,从而确保链下执行的计算的准确性。这催生了一个称为协处理器的新类别。

HyperOracle 利用专门的预言机节点来生成零知识 (zk) 证明并使用验证者合约将数据传输到以太坊区块链上,从而开创了“去信任”的预言机。

这种方法将安全模型转变为“1 of N”模型。在这种模型下,即使一个节点提交了正确的数据,验证者合约也可以检测到任何差异。此设置保证了链下计算100%的计算完整性,同时将终局性确定时间缩短至仅 12秒,与以太坊的出块时间保持一致。

为了解决另一个挑战,Axiom 提供了一种去信任的机制,用于访问以太坊上的历史状态数据。由于以太坊的状态机性质,智能合约只能访问当前状态,并依靠中心化的链下预言机来访问历史状态数据。

Axiom 提供零知识证明,用于验证任何过往以太坊区块的区块头、状态、交易和收据的真实性,从而解决了这个问题。

Herodotus专门研究存储证明,这本质上是 ZK 证明,可确认第1层和第2层链的状态根中数据的包含性。开发人员可构建跨链应用程序,例如构建可通过在另一条链上提供抵押品来支持一条链上的贷款的借贷应用程序,以及可利用另一条链上的 NFT 资产的游戏应用程序。

身份/身份证明

ZKP 的隐私保证创造了设计新加密原语的机会,这些加密原语涵盖身份的各个方面,包括位置证明所有权证明语音证明、教育、经验、医疗数据和 KYC。

Sismo 是该领域使用 ZKP 技术的范例。该项目的团队正在开发 ZK 徽章,使用户能够有选择地与 web3 应用程序和用户共享其个人数据。 ZK徽章是一种灵魂绑定的代币,它根据用户的个人数据将用户分为特定的组。例如,用户可以通过生成验证条件的 ZK 证明来证明自己是以太坊的长期用户、特定 GitHub 存储库的贡献者或美国公民。验证证明后,Sismo 向用户授予与其个人数据相对应的徽章。徽章标代表用户的身份,但实际上并没有透露任何敏感细节。

Worldcoin 是 ZKP 的另一个创新应用。它将 World ID 建立为开放且非许可的身份协议。该协议利用虹膜生物识别技术进行精确的身份验证,通过卷积神经网络将高分辨率虹膜扫描转换为压缩形式。该数据被插入到他们的 Semaphore ZKP 实现中,从而生成存储在 World ID 合约中的身份承诺。

要证明自己的身份,用户需要提供其World ID,该 ID 会根据整个列表进行检查以验证会员身份,从而授予对有用功能(如投票和一次性空投)的访问权限。

Worldcoin 声称它在计算哈希值后处理了虹膜图像,但没有十全十美的方法来验证图像的破坏情况。

可验证的计算

计算证明是一种加密技术,允许一方向另一方证明特定计算已正确执行,而不会泄露有关输入、输出或计算本身的任何敏感信息。

当一段代码在其机器上运行时,Risczero 的虚拟机会生成 ZKP 计算收据。这种“执行跟踪”让所有人都能在计算的每个时钟周期验证机器状态的记录,同时保护数据隐私。这就像在 RISC-V 架构上有一个用于计算的数字公证人。

这开启了一个充满可能性的世界,例如:

  1. 验证计算是否已发生而无需完全披露信息。这就是ZK 漏洞证明,它允许白帽黑客报告智能合约中的实时漏洞,而无需披露漏洞的机密细节。此外,Filecoin 使用的 ZK 存储证明可确保矿工在任何给定时间存储数据副本。
  2. 验证媒体的真实性:区分真实图像和经过处理的图像已成为一项不断升级的挑战,助长了假新闻的扩散。内容来源和真实性联盟 (C2PA) 提出了一项标准来验证图像来源,以确保图像确实真实且是在所声称的环境中捕获的。该标准要求相机对拍摄的每张照片以及有关照片的一系列主张(例如位置、时间戳)进行“数字签名”。然而,在图像发布到互联网上之前,它们可能会受到尺寸调整、裁剪和放大,这可能会使其与主张不符。Boneh 和他的团队已实施了 ZKP 用于进行@boneh/using-zk-proofs-to-fight-disinformation-17e7d57fe52f">各种编辑,包括裁剪、转置、翻转、旋转和调整对比度/亮度。因此,任何用户都可以轻松检查证据以验证新闻报道是否真实,而无需依赖“社区笔记”。
  3. 财务信息验证:凭借 ZK 证明,个人可将其 KYC 数据转换为客户端设备上的 ZK 证明,并与 Dapp 共享以确保合规性,而不会泄露敏感信息。或者,银行可以签署 ZK 证明来确认信用评分的完整性。虽然金融科技应用程序依靠 Plaid 来验证此类数据,但需要银行的许可才能建立此类集成。
  4. ReclaimzkPass 和 Chainlink 的 DECO 等协议绕过了这些权限要求,并将财务数据存储为可组合的 zk 证明,可供任何 Dapp 使用。这些协议的工作原理是用作网站服务器和客户端设备之间的代理,生成 TLS 收据以确保数据的准确性。它们允许以去信任的方式导入各种数据,例如 Github 存储库、Facebook 帖子、银行余额、土地记录、税务文件和游戏成就等,所有这些数据都记录为链上的 zk 证明。这些协议将 web2 数据从集中的、经许可的服务器中解放出来,并将其转换为可组合的 web3 凭证。
  5. 验证大型模型的真实性:GizaSpace and TimeModulus Labs 正在研究可验证的算法完整性,着重研究 ZKML。

算法对我们的日常生活有着巨大的影响:从在线搜索和社交媒体到个性化推荐,算法为他们提供了动力,控制着我们的注意力,塑造了我们的信念。考虑到它们的巨大重要性,这些算法的透明度和开放性至关重要,因为用户应知晓这些算法的工作原理及使用方法。

  1. ZKML 技术让许用户能为单个帖子的最终输出分数提供加密证明,以此来验证 Twitter 等平台是否真正使用他们声称的算法。为让科技公司担负责任,ZKP 提供了一条充满希望的途径,其应用范围从社交媒体扩展到各个领域,包括人工智能和医疗保健。

  1. @danieldkang/empowering-users-to-verify-twitters-algorithmic-integrity-with-zkml-65e56d0e9dd9">Daniel Kang 演示了 Twitter 如何为每条推文发布分数以验证排名是否准确。

私密计算

(ZKP)本身就很强大,但当与多方计算(MPC)、完全同态加密(FHE)和可信执行环境(TEE)等其他加密技术结合使用时,它们开辟了安全和私有设计的新领域。

Renegade 正在开发一个链上暗池,确保交易者在执行交易之前和之后享有完全的隐私保护。在传统设置中,当两方希望交换信息和资产时,他们必须依赖中央服务器来解密和处理数据。然而,如果任何一方在代币交换之前得知输出并中止连接,则可能会导致信息泄露和市场操纵。

为了解决这个问题,Renegade 引入了具有多个中继者的点对点八卦网络。当交易者寻求交易时,中继者会识别交易对手并建立 MPC 连接,从而保护交易信息免遭第三方泄露。

MPC 是一种加密技术,使多方能够协作计算函数输出,而无需泄露其输入。交易者可在不透露其全部余额的情况下交换资产,这一核心功能构成了完整暗池的基础,从而无需可信运营商。然而,MPC 协议本身并不能保证输入数据的有效性。Renegade 在 MPC 计算中生成 zk-SNARK 证明,确保交易者的余额与其声明相符。

交易者可以在 Renegade 上运行中继节点以获得完全的隐私保护

全同态加密支持加密数据的云计算,保护了敏感信息免遭第三方访问。同时,ZKP 提供了一种通过简洁的可验证证明来证明计算正确性的方法。

MPC、FHE 和 ZKP 的融合打开了新应用的大门。zkHoldem 通过为每次洗牌和发牌生成 ZK 证明,彻底改变了链上扑克游戏,确保了可证明的公平游戏。zkHoldem 提高了链上游戏完整性的标准,通过实施 MPC 技术来隐藏玩家的牌,甚至不让他们的服务器看到。

ZK 工具

验证系统

证明系统是一个两方协议,涉及一组规则和程序,使证明者能够说服验证者声明的真实性。开发人员可使用多个 ZKP 系统,每个系统都有其独特的优势和挑战:

  • zk-SNARKs(零知识简洁非交互式知识论证):
    • 优势:紧凑的证明大小;快速验证。
    • 挑战:需要“可信设置”——一种一次性初始化,如果处理不当,可能会导致虚假证明。
  • zk-STARKs(零知识可扩展透明知识论证):
    • 优势:无需可信设置;可防范量子威胁。
    • 挑战:较大的证明大小;计算需求提高。
  • Bulletproofs:
    • 优势:无需可信设置;相当小的证明大小。
    • 挑战:验证和创建比 zk-SNARK 更耗时。
  • PLONK:
    • 优势:拥有高效的算法和简化的设置。
    • 挑战:仍是一个正在进行的研究主题;不如已有的技术那样好。

软件

领域特定语言将抽象逻辑转换为可由证明系统使用的电路表示。DSL 以非常接近汇编语言的形式表达高级逻辑。有些(例如 Aztec 的 Noir)与多种验证系统兼容,它们因此而成为开发人员的绝佳选择。然而,这些语言是复杂的,这成为一大障碍,让电路设计对大多数开发人员而言具有挑战性。

一股创新浪潮正在席卷 ZKP 领域,许多团队都在打造高级语言,抽象出汇编语言的复杂性。

SnarkyJS(为 Mina 区块链量身定制的 TypeScript 框架)和 Polylang(由 Polybase Labs 与 Miden 的 VM 合作开发的另一个 TypeScript 框架)就是其中的两个案例。

总的来说,ZK 工具瞄准三大核心目标,即多功能性、人性化和性能。Solidity 对于生成 ZK 表示并不友好,因此 Starknet 团队创建了 Cairo,它是为创建基于 STARK 的智能合约而量身定制的。

以太坊的愿望之一是通过 0 型 zkEVM 将 ZK-EVM 集成到其核心协议中。然而,这一远大目标也伴随着一系列挑战,因为以太坊并不是为使 zk 易用而设计的,而且为以太坊区块生成证明的计算成本很高。RiscZero 最近宣布了他们的项目 Zeth,该项目能证明从每个 EVM 操作码和 EIP 到区块构建的以太坊的各个方面,但要将 ZK 纳入以太坊还有很长的路要走。

硬件

游戏行业的兴起激发了软件和硬件开发取得重大进步,改变了个人电脑和游戏机。1993年,Nvidia 进入该领域,专注于为 3D 加速量身定制 GPU,以满足强劲发展的游戏市场的需求。随着人工智能和机器学习 (ML) 热潮的兴起,Nvidia 认识到其 GPU 在加速这些领域的复杂计算方面尚未开发的潜力。因此,他们转向重新利用 GPU,以提高 AI 和 ML 任务的效率,最终获得了95%AI 芯片市场份额,主导着该市场。

同样,我们预计零知识 (ZK) 技术将迎来专用硅硬件的新时代。这些硬件(GPU、FPGA 和 ASIC)将加速证明的生成和验证,同时保持成本效益。

用户硬件上的生成 ZK 证明确实很慢,但对于维护隐私来说是必要的。在移动设备上使用 SHA2 对 10kb 数据进行哈希处理需要几毫秒,但生成 ZK 证明至少需要2分钟。

IngoyamaCysic这样的硬件加速团队可通过专门的硬件在云端生成证明并将证明返回给用户。

需要大量 zk 计算的协议还能与专业硬件提供商合作,确保最佳性能和有竞争力的价格。例如,Ulvetenna 运行着专为 ZKP 汇总计算而构建的 FPGA 集群。

这些初创公司提供了从在线软件即服务 (SaaS) 模式到向组织出售专用硬件等一系列选择。有些还提供咨询服务,用于根据应用的特定需求设计定制电路。

证明市场

对于需要 ZK 证明的新兴开发人员来说,与专业硬件提供商签订合约并寻找具有成本效益的解决方案可能会带来重大挑战。

RiscZero 的 Bonsai、Nil 的 Proof Market 和 Marlin 的 Kalypso 等证明市场作为桥梁,将需要 ZKP 生成器的初创公司与提供证明生成服务的初创公司连接起来。这些市场非常重视证明生成的两个重要方面:相关成本和生成证明所需的时间。

总的来说,有两个用户群——注重隐私的消费者和注重效率的初创公司

  • 客户端证明:个人希望生成 ZKP 来保护隐私,以保护他们的敏感信息免受中心化实体的影响。他们最好的选择是在移动设备或笔记本电脑上生成 ZKP,但由于这非常耗时,因此他们希望将其卸载到专用加速器上。研究人员正在积极探索使用 DIZK 等协议的私人委托方法,其目的是确保没有任何一个工作人员能够访问全部秘密,从而最大限度地提高隐私保护和安全性。
  • 服务器端证明:初创公司需要巨大的证明能力——例如为流经其系统的所有交易生成证明的去中心化交易所(DEX),并需要快速的处理能力以消除应用程序性能的延迟。

超越信任

通过 Polygon Ventures,我们有幸密切观察了 ZK 技术的演变。这段旅程使我们能够与 JordiDaniel 等先驱者合作,深入研究这项变革性技术的内部运作方式。

在熊市和牛市的周期性起伏中,基础设施往往在经济低迷时期成为无名英雄,为随后的经济复苏做好准备。回顾之前的牛市,ZK技术还处于萌芽阶段。快进到今天,我们见证了 ZK 应用程序的指数级增长、ZK 扩展的巨大进步以及显著扩展的去信任计算范式,这些发展确实鼓舞人心。

ZK技术一直在以惊人的速度发展;几年前看似不切实际的应用现已成为现实。新的 ZK 项目可以从各种库、DSL、zkVM 和其他工具中进行选择。——丹尼尔·卢巴罗夫,PLONKY2

我们正过渡到这样一个时代:曾经被认为绝对可靠的中央集权机构现在正受到越来越多的怀疑。虽然谷歌、推特和 Meta 等中心化的坚定支持者拥有策划和审查的权力,但很明显,变革之风正在酝酿。

与任何有前景的技术一样,ZK 也面临着挑战。保障 ZKP 安全性的过程需要时间,这让人想起以太坊早期的智能合约漏洞。尽管存在这些障碍,ZK 仍坚守着一个承诺——致力于从根本上改变我们彼此互动和信任的方式。

如果您正在这个领域构建创新的东西,我们很乐意联手并释放这个领域的巨大可能性。

十分感谢Nathan和Daniel提供的反馈。

披露:我们投资了此处列出的许多项目,包括 Space and Time、Airchains、Ingoyama、ZKLink、Eclipse 和 Gateway。

声明:

  1. 本文转载自[Polygon Ventures Newsletter],著作权归属原作者[Polygon Ventures team],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。
Start Now
Sign up and get a
$100
Voucher!
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.