头条
本文盘点了 24 个主要运用了零知识证明技术的隐私项目。
撰文:angelilu,Foresight News
本周,以太坊开发者大会 Devconnect 在土耳其伊斯坦布尔举行,在上百个周边活动中与「zk」相关的活动数量占比高达五分之一,由此不难看出开发者对「zk」的重视程度。
加密世界似乎存在一个不成文的规定,即以 「zk-」开头的项目通常拥有强大的技术背景,这里所说的 zk 其实指的就是零知识证明(Zero-Knowledge Proof),ZKP 技术最初于上世纪八十年代在密码学领域首次提出,但由于缺乏比较实际的落地场景一直不温不火,直到近年区块链技术的提出才重露锋芒,目前除区块链外还在云计算、机器学习等领域得到了广泛应用。
零知识证明究竟是什么,a16z 合伙人 Michael Blau 在最近的文章中甚至将 ZKP 视为一个伟大的魔术,为了更好地理解这一概念,让我们将传统验证与零知识证明进行对比。
首选,传统验证与零知识证明在结构上都存在两个角色和一个事件,两个角色中一个叫做证明者,另一个叫做验证者,证明者的任务是向验证者证明某个事件的真实性。
在区块链领域,ZKP 的特性使其在解决隐私和扩容这两大核心问题上具有重要价值。就扩容来说,以 ZKP 为基础的 zk-Rollup 技术一直是 Vitalik 看好的扩容路线,诸如 StareWare、zkSync 和 Scroll 这样的项目都是通过零知识证明来提高以太坊的扩容能力。
相较而言,零知识证明在解决隐私上受到的关注度相对较低,尽管隐私一直是区块链技术领域最为敏感和受关注的话题之一。虽然区块链自身具有一定的匿名性,其公开的账本结构让所有交易都能被任何人查阅,当交易地址与实体联系起来,通过对交易的分析可能就会暴露该实体的隐私信息,因此在很多细分领域仍需要隐私加持。
零知识证明技术在这里发挥了至关重要的作用。通过使用零知识证明,交易双方能够在不暴露任何额外信息的情况下证明交易,不仅能保护用户隐私,还能在一定程度上防止欺诈和非法活动。如今区块链隐私应用的需求远远未被充分挖掘,细分赛道也没有太大关注度,本文将主要关注零知识证明技术在隐私方面的应用和影响。
下文盘点了 24 个主要运用了零知识证明技术的隐私项目,主要分为 Layer 1 公链、Layer 2、开发者工具、应用等四个类别。
隐私公链可以理解成同时构建公链加隐私,这类公链主要运用了三大技术来为其网络补充隐私功能,分别是:零知识证明(ZKP)、安全多方计算(MPC)和可信执行环境(TEE)。Oasis 和 Secret Network 是当前发展相对成熟的隐私公链项目,但值得注意的是,这两个项目并未直接采用零知识证明技术。由于零知识证明技术的高度复杂性,其研发进度相对缓慢,而现实应用则更为稀缺。这一状况暗示了该领域仍具有巨大的未来潜力,但尚缺乏明确的市场领导者。
Aleo
Aleo 是使用零知识证明支持隐私和可编程的区块链,其构建了一个默认为私有、开源的区块链,来补充区块链所缺乏的隐私保护。Zexe 架构是其零知识证明的解决方案,通过先离线计算,再产生能证明计算正确而不披露计算细节的线上交易,从而使交易可被任何人在极短的时间内验证。作为公链,Aleo 有自己的虚拟机 snarkVM、编程语言 Leo、开发环境 Aleo Studio 和 PoSW 共识算法,在零知识证明领域赛道具有巨大市场潜力。
Aleo 于 2019 年成立,目前已获得了近 3 亿美元融资,还未启动主网,此前宣称于 2023 年 7 月启动主网的计划似乎已被推迟,目前测试网三的激励部署提交计划于 8 月 21 日刚刚截止,看来主网启动仍需时日。
Zcash
Zcash 是最早的「匿名币」,率先提出了部署 zk-SNARK 来实现屏蔽传输并提供比匿名交易更强大的隐私保证的想法,其专注于隐私和匿名性的去中心化支付,它使用 zk-SNARK 零知识证明技术证明链下数据同时隐藏链上数据内容,让用户可创建隐藏用户交易金额以及发送者和接收者地址的私人交易。Zcash 开启了 ZKP 在隐私币领域的创造性使用,提供在区块链上可监控的透明地址(t 地址)和完全加密且无法追踪的屏蔽地址(z 地址)。
Mina
Mina 自称是世界上最轻的区块链,它的大小被设计为在使用量增长的情况下保持不变,使用 ZKP 将区块链状态压缩到很小的大小(~22 KB),且 Mina 使用零知识简洁非交互 zk-SNARKs 来为 Web3 带来访问和隐私。其智能合约 zkApps 使用加密技术来保护用户隐私,允许用户通过证明个人数据的真实性来进行交互,而不是直接共享这些数据。这不仅增加了用户的安全性和隐私,还减轻了开发者保护敏感数据的责任。并且其 zkApps 使用 Typescript 这门通用编程语言来作为智能合约语言,降低了开发门槛,但可能由于 zk 的复杂性且不兼容 EVM,目前生态并不繁荣。
近期 Mina 宣布主网将迎来重大升级,主网将引入 ZK 智能合约,开发者可使用 o1js 更轻松地对 zkApp 进行编程。当前正在为升级做准备,测试网分为 4 个阶段,包括 zkApp 端到端(E2E)测试、外部安全审计、协议与性能测试、为即将到来的升级做准备,目前前两个阶段已完成。
Horizen
Horizen 是一个由零知识证明支持的区块链平台,配备 zk-SNARKs 以做到选择性隐私,使用户具备可选匿名功能。Horizen 兼容 EVM,具有以太坊虚拟机 Horizen EON。
其最大的特色是它的架构由主链和侧链组成,主链和侧链可以通过其跨链传输协议 (CCTP) 进行 ZEN 币的跨链传输。但因受监管环境影响,Horizen 从今年 4 月开始宣布从主链和 ZEN 中删除隐私,预计于 9 月开始弃用 主链屏蔽池,从 Horizen 主链级别上取消对具有透明输入(T 地址 -> Z 地址)的屏蔽交易的支持。但也不是完全不支持隐私,侧链将被专注用于可扩展的数据隐私。
Horizen 的这种变革可以看到隐私公链在监管环境恶劣的当下提出的治理自救。同时,也可以看到监管环境对隐私的影响,Tornado Cash 创始人被捕事件也在给各大隐私协议敲警钟。
Dusk
Dusk 是一个具有隐私保护功能的 Layer 1 区块链协议,专为满足商业合规性而设计。其网络安全性由一种名为 Succinct Attestation 的新型权益证明(PoS)共识机制来保证,该机制还满足金融场景中对结算一致性的重要需求。
Dusk 的特点是兼具隐私性与合规性,Dusk 提供保证客户隐私的身份验证(KYC)解决方案,该算法基于 PLONK 的 ZK 算法。
Iron Fish
Iron Fish 是一个去中心化、基于工作量证明 (PoW)、抗审查且可公开访问的区块链项目,受到基于 zk-SNARK 的 Sapling 协议的启发,旨在为每笔交易提供隐私保证。和其他可选的隐私公链不同,Iron Fish 要隐藏的包括交易信息、挖矿信息、钱包信息等,除了私钥所有者以外,任何的第二方都看不到,可谓是绝对的隐私。
Manta Network
Manta 是波卡生态内首个基于 zk-SNARK 的 Web3 隐私保护网络,其有自己的基于 UTXO 的钱包地址体系,用户可以进行隐私资产的存储、转账和兑换,Manta 的主要产品包括隐私支付 MantaPay、具有隐私功能的 zkSBT、隐私钱包 Manta Wallet 等。
Findora
Findora 是一个基于零知识证明的隐私保护区块链,具有可编程性,使开发人员能够在其链上构建注重隐私的应用程序(zkDapps),部署可根据特定 dApp 的需求进行定制的模块化子网,让用户能够通过 zkDapps 控制其链上数据的可见性。此外,其具有 EVM 兼容性,通过其跨链传输功能可以充当第 2 层来扩展以太坊隐私。Findora 最近推出了一个游戏特定链 (GSC),是一个为零知识 Web3 游戏提供开发环境的新子网。
Namada
Namada 是一个用于链间资产不可知隐私的权益证明 L1,旨在使用零知识证明技术支持多链用户持有的任何类型(可替代和不可替代)的资产进行屏蔽转移。其开发公司 Anoma Foundation 于 5 月宣布完成 CMCC Global 领投的 2500 万美元融资。
MobileCoin
MobileCoin(MOB)是一种设计用于日常交易的加密货币,移动优先,除了发送者和接收者之外,没有人可以看到交易的详细信息。MobileCoin 通过零知识证明技术达到隐私,其采用了一种称为 Bulletproofs 的特殊 ZKP,为加密值构建「范围证明」,Bulletproof 是简短的非交互式 ZKP。
除了从头开始构建一条集成隐私特性的全新公链,许多项目也选择利用零知识技术为现有的公链增加隐私保护层,为现有公链在保证隐私的同时解决扩容问题,或者是使用零知识技术和区块链结合解决具体问题,与公链相比更具可组合性。
Starknet
Starknet 是由 StarkWare 推出的基于以太坊的去中心化 ZK rollup,旨在通过利用 zk-STARK 证明技术提高区块链的可扩展性和隐私性。
Aztec
Aztec 是基于 ZK Rollup 的隐私和扩容解决方案,其具有两层零知识电路的 zk-zkRollup,一层 zk 用于加密私人用户交易,第二层 zk 用于压缩交易,使 Aztec 能够简洁地证明大量加密状态转换,并且不兼容 EVM。其于 3 月宣布要关停其隐私基础设施 Aztec Connect,未来开发中心转移至开发零知识通用语言 Noir 和区块链。
Aztec 最新的进展为正在构建隐私抽象,以为开发者提供智能合约隐私,支持默认匿名、私有状态读 / 写功能、私人智能合约功能执行。
Ola
Ola 是具有可扩展性的隐私保护、合规友好型 ZK-ZKVM Rollup 平台,主打可编程性隐私、可编程性扩容和多语言的兼容性,旨在成为可为所有可编程 Layer 1 区块链补充隐私和扩容功能的 Layer2,图灵完备,并支持存储访问操作。
主要产品部分包含 ZK 友好的虚拟机 Ola-VM 和 智能合约语言 Ola-lang:Ola-lang 是基于 ZK-VM 的通用语言(GPL),可编程性更高,可以根据项目需求部署任何智能合约,无论是公共的还是私有的。ZK 友好的虚拟机 Ola-VM 利用精简指令集计算机(RISC)架构,通过全功能的 zk 友好型设计和非确定性计算支持,实现更高性能。这两大组件的代码上周正式在土耳其 DevConnect 期间开源。
Ola 于今年 7 月完成了 300 万美元种子轮融资,近期在其证明系统中支持了 Poseidon2 hash,相比原始的 Poseidon hash,带来了超过 40% 的 prover 性能提升。并且 Ola 在土耳其 DevConnect 期间宣布开放 Ola Dev Testnet 白名单申请,为开发者和普通用户参与 Ola 提供渠道,其公开测试网及主网将于明年陆续上线。
Espresso Systems
Espresso Systems 是连接各 Layer 2 扩容解决方案的去中心化定序器和数据可用性系统,支持 Optimistic Rollup 和 ZK Rollup。在隐私方面,其采用零知识证明等技术开发了可配置资产隐私智能合约 CAPE 并已开源,使数字资产创建者能够配置谁可以查看有关他们创建的资产的托管和转移的数据。用户可以创建新的代币并包装现有的以太坊代币,以赋予它们所需的隐私属性。
zkPass
zkPass 是一种用于隐私数据验证的隐私保护协议。它建立在多方计算(MPC)、零知识证明(ZKP) 和三方传输层安全技术(3P-TLS) 的基础上。zkPass 提供 TransGate,使用户能够有选择地私下验证其在 Web3 世界的 HTTPS 网站上的数据。它可以涵盖各种数据类型,例如合法身份、财务记录、医疗保健信息、社交互动、工作经验、教育和技能认证等。该项目由 Binance Labs 孵化,于今年 8 月完成了 250 万美元融资。
NuLink
NuLink 致力于研发开箱即用的隐私保护解决方案,通过 API 让去中心化应用的开发人员可以通过其方案实现隐私。NuLink 网络的架构包括应用层、密码层、存储层、区块链层和观察者网络。预计到 2024 年推出 ZKP 支持的数据可用性机制和通过 FHE 支持的隐私数据计算。
Railgun
Railgun 是一个基于以太坊平台构建的隐私和匿名解决方案,可直接和 DEX、借贷和智能合约应用程序交互,Railgun 通过零知识证明技术(Zero-Knowledge Proofs)实现对用户财务状况、个人身份和行为模式的隐私保护,支持选择性透明度,允许用户在必要时有针对性地公开某些身份或财务信息,如面对审计或合规需求时。
该系统特色在于其三大核心功能:Add(添加)、Split(拆分)、和 Remove(移除),这三种操作都是基于零知识证明构建的,分别提供不同级别的隐私和匿名性。用户可以根据自身需求灵活选择这些操作,并且有选项将多个操作组合成一个事务,以达到降低以太坊网络手续费(Gas Fee)的目的。
Sismo
Sismo 利用零知识证明 (ZKP) 和隐私保护技术,使用户能够聚合其身份并有选择地向应用程序披露个人数据。Sismo Connect 是证明方案之上的开发人员友好层,开发人员通过请求和验证 ZK 证明,可访问个人数据而不会侵犯用户隐私。和其他着重于数据隐私的协议相比,Sismo 更着重于身份隐私。
Tornado Cash
Tornado Cash 是一个隐私交易工具,通过零知识证明(ZKP)技术,特别是 zk-SNARKs,来实现交易的匿名性,基础的工作原理是混币。由于其隐私交易特性,Tornado Cash 常和黑客攻击和洗钱联系在一起,慢雾去年的报告称 Tornado Cash 收到以太坊网络上洗钱总额的近 75%。
Tornado Cash 也是最近陷入监管风波,8 月 24 日美司法部逮捕了 Tornado Cash 联合创始人 Roman Storm,且 Roman Storm 与 Tornado Cash 另一名联创 Roman Semenov 被指控共谋洗钱、违反制裁以及经营无牌汇款业务。
Elusiv
Elusiv 是一个基于零知识的合规隐私协议,目前基于 Solana 构建,其利用 zk-SNARKS 来实现私密交易,同时强调去中心化合规,可让用户自由选择使用 Elusiv 公开哪些交易。今年 3 月 Elusiv 上线 Solana,目前已在 Solana 推出隐私代币交易功能。
zkBob
zkBob 是基于稳定币的隐私解决方案,部署在 Polygon 和 Optimism 上,使用零知识证明技术在资金转移中实现匿名发送者、接收者和金额,支持在 15 个以上 EVM 兼容网络使用,其代币 BOB 是具有可选隐私功能的多链和多抵押品稳定币。
Brine
Brine 是 一个订单薄隐私交易 DEX,通过 StarkWare 的 zk-STARK 证明技术实现隐私交易,其采用链上和链下双组件设计,零知识证明技术用在隐私及链下交易向链上传输有效性证明两个方面。
其于今年 6 月推出主网,当前总交易量约 5 亿美元,并于今年 9 月以 1 亿美元估值完成 Pantera Capital 领投的 1650 万美元融资,StarkWare、Spartan Group 等参投。
zkMe
zkMe 是一个去中心化的 Web3 凭证网络,通过零知识证明技术来实现安全、私密的凭证颁发和验证,注重端到端的零知识处理和选择性信息披露。当用户(凭证持有者)使用 zkMe 创建 DID 时,他们会获得一个唯一 SBT,SBT 以加密方式与其公钥绑定,用作身份证明,通过 ZKP 使用户能够在不泄露任何敏感信息的情况下验证其身份。
ZK-Team
ZK-Team 是以太坊基金会 9 月公布的入选 ERC-4337 账户抽象资助轮的 18 个项目之一,由加拿大区块链公司 PriFi Labs 推出,是隐私保护抽象帐户的概念验证,允许组织在管理团队成员的同时维护他们的个人隐私。通过零知识证明,ZK-team 实现的交易可确保团队成员的不同地址及其相关配额的机密性。
在对以上项目分析后可知 a16z 投资了 Aleo、Iron Fish、Nym,红杉资本投资了 Iron Fish、Espresso Systems 等,ZK 隐私项目在市场需求、技术创新和长期价值等方面吸引顶级风投的关注,大量投资进一步证明了该领域的潜力和重要性。
从资金角度看,Aleo 是迄今为止获得最高融资的隐私公链项目,因此市场对其预期较高,但由于项目主网上线时间反复推迟也逐渐减少了项目的关注度。Aleo 最近已成功进入了其测试网的第三阶段。一旦其主网顺利启动,将是隐私技术领域的一个重要里程碑。
以上几个主流隐私公链都是在 2018 年和 2019 年推出的,究其原因,首先在 2018 年和 2019 年区块链和密码学的基层技术逐渐成熟,使零知识证明更易用于区块链领域。其次在合规方面,2018 年 5 月欧盟《通用数据保护条例》(GDPR)正式生效,加之其他隐私法规的实施,企业和个人越来越重视数据隐私,推动了隐私公链的需求。市场因素也不容忽视,2017 年区块链和加密货币市场经历了一轮大繁荣,使得市场有较为充裕的资金,且较以太坊和比特币而言,隐私特性成为了一个明确的竞争优势,使得部分资金流向隐私公链。
但大部分使用了 ZKP 技术的基础设施还是在 2021 年之后成立的,可见隐私公链的日趋饱和及普通公链对隐私的需求越来越明显,近两年涌现了越来越多的 ZKP 基础设施。
零知识证明目前有多种实现方式,大类上分有 zk-SNARKS、zk-STARKS、PLONK 以及 Bulletproofs。在本文提到的所有项目中,zk-SNARKs 使用最多,zk-SNARKs 用于证明给定的计算已正确执行同时保持输入的私密性,其特点是证明大小相对小,而 zk-STARKS 无需初始可信设置的场景。
PLONK 是属于 zk-SNARK 证明系统中的一个变形,PLONK 的可信设置是通用的,这意味着它可以启动一次并被所有电路重复使用。它也是可更新的:人们总是可以添加新的随机性,直到确信设置没有受到损害。Bulletproofs 是一个一般性的零知识证明,主要用于范围证明,一般用在机密交易里。
如上所示,不同算法又具有不同的技术特征。所以不少项目在其实现逻辑中采用了混合的零知识证明算法。以可编程性隐私和扩容方案 Ola 为例,其使用 Starky 作为作为证明生成算法,选择了 Plonky2 作为递归电路算法,两者的共同点是它们都基于 STARK,这意味着两者都不需要第三方可信设置。
可编程性指的是隐私项目使其他开发人员或组织都能构建和扩展其隐私功能的特性,零知识证明技术和专门开发的编程语言帮助开发者构建具有隐私性的应用程序。随着隐私需求的增加,隐私项目中的可编程性越来越受到开发人员和用户的青睐,上文中介绍的 Aleo、Aztec 等都具有可编程的特点。
可编程性有两种形式:ZKDSL 和 ZKVM,ZKDSL 可让开发者直接编写底层电路约束,降低编写电路和 zkDapp 的门槛,例如 Aztec 的编程语言 Noir 和 Aleo 的编程语言 Leo 都采用了 ZKDSL 的形式,然而 ZKDSL 的特性决定了其表达能力仍然存在固有的限制。另一种形式是 ZKVM 对于可编程性来说是更好选择,采用 ZKVM 的包括 Ola 等协议,其智能合约语言 Ola-lang 基于 ZKVM 构建。
在区块链隐私设计领域中,通常存在两种主要的数据结构模型:UTXO(Unspent Transaction Output)模型和 Account(账户)模型。
大多数隐私协议在设计上采用了 UTXO 模型, Zcash 基于 UTXO 的 Note 结构可以轻松隐藏交易发送者和接收者信息。Actec、Railgun、Ola 等也采用了 Note 结构,但几个项目也有略微的不同,各有优缺点。
Aztec 的隐私设计依赖于 UTXO(Unspent Transaction Output)模型,这使其在简单的隐私交易方面表现优秀,但限制了复杂智能合约的开发可能性。目前,Aztec 主要的应用是其自家开发的 zk.money,一个基于零知识证明的隐私支付平台。尽管该平台表现出色,但 UTXO 模型的局限性意味着其他项目如果想集成 Aztec 的隐私特性,需要通过一个专门设计的接口——Aztec Connect 网关合约来实现。这个网关合约充当了一个桥梁,使得外部项目能够更容易地与 Aztec 进行集成,尽管这样做可能会引入额外的复杂性和开销。
如前文在可编程性部分提到的内容,若在 Aztec 的隐私上引入可编程性是否能解决限制复杂智能合约开发的问题,例如 Ola,其在设定上未选择 DApp 特定隐私,而是引入可编程性,开发人员可以自由选择部署公共合约(基于 Account)、隐私合约(基于 Note)、普通合约(基于 Account & Note),使得项目的,不仅能满足多样化的隐私需求,还能给开发人员提供更大的灵活性和创造性空间。
隐私协议当前面临最大的挑战就是强监管的寒蝉效应,2022 年 8 月美国财政部外国资产控制办公室 (OFAC)宣布对 Tornado Cash 实施制裁,Tornado Cash 在被制裁后资金流入量显著下降,在 30 天内下降 68%。今年 8 月美国司法部逮捕了 Tornado Cash 联合创始人 Roman Storm,并指控其和另一名联创共谋洗钱、违反制裁以及经营无牌汇款业务等。
因为隐私特性,隐私协议成为了黑客的必备工具,朝鲜黑客利用 Tornado Cash、Railgun 等隐私协议进行洗钱, 因此,隐私赛道的加密货币经历了多轮「下架潮」。隐私协议的合规性设计就尤为重要,Vitalik 近期也在其论文中提出了「隐私池」的概念来平衡隐私协议的监管和合规,使用户能够公开证明关于他们的提款可能来自哪些存款的信息,但又不失隐私。
目前许多项目都有「view key」功能,允许用户选择性地披露他们的交易信息,然而,大多数协议并未能强制执行查看密钥功能,这导致用户的隐私保护程度难以确保。此外,这些协议通常采用附录式私有树设计,这种设计难以为合规性目的提供必要的可追溯性。
值得注意的是,Ola 采用了可更新的 Private Tree 设计和查看密钥功能,Ola 的 Private Tree 是可更新的、支持追踪交易路径的,使得隐私披露变得更加自动化且符合合规性要求。通过这一设计,用户能够更加灵活地管理他们的隐私,并在需要时与监管机构共享必要的信息,同时仍然保持着高度的隐私保护。
然而,零知识证明技术并非毫无瑕疵。其实施需要大量的计算资源,这可能会对系统的效率产生一定影响。因此,当前的研究和开发中,如何在确保隐私的同时,不降低系统性能,成为了一个重要的挑战。
在 Web3 时代,隐私的重要性显而易见。用户对于保护敏感信息的需求使得隐私公链和隐私应用程序成为 Web3 领域的不可或缺的一部分。这些隐私公链提供了强大的编程语言和完善的开发工具,吸引着开发者积极参与构建。然而,隐私基础设施面临的最大风险之一是尚不能确定其未来需求的规模。此外,也不能排除各个公链或项目在未来直接推出原生的隐私保护机制,从而可能对第三方的隐私领域项目造成冲击。目前,像 Aleo、Espresso Systems 等备受社区关注的项目仍处于测试网阶段,其发展前景尚未确定。因此,隐私领域的发展仍需密切关注市场和技术的演进。