一文纵览 ZK 生态
July 15th, 2022

英文原文链接:Chainlink 官方 Blog

封面图片来源:Gemini

TL;DR

  1. ZK 简介
  2. ZK 与 Optimistic Rollup 区别
  3. 基于 ZK 的架构、有效性证明
  4. 基于 zk-STARK 实例
  5. 基于 zk-SNARK 实例
  6. ChainLink 信任最小化服务
  7. ChainLink DECO
  8. 总结

正文:

零知识(后文简称 ZK)技术是密码学的一个分支,目前旨在克服一层区块链所固有扩容和隐私障碍。依靠 ZK 技术,区块链项目能够处理更大规模的交易,在保护用户数据的同时仍然能够验证身份,并支持复杂的计算。同时让企业采用区块链技术时保护其知识产权,让企业应用再无后顾之忧。

什么是零知识证明(Zero-Knowledge Proof)?

ZK proof 使被验证方能够在不透露相关信息的前提下,证明他们知道或拥有某项数据。一个 "证明者" 利用系统输入信息创建一个证明,而 "验证者" 在无需看到这些信息的前提下,便可确认该证明是被正确计算的。从本质上讲,ZK proof 实现了在完全保留数据隐私的前提下,验证一个数据集的有效性(真实性)。

本文中我们将探讨基于 ZK 的解决方案的一些独特优势,如何使用 ZK 技术,如zkSNARK 和 zkSTARK ,以帮助开发人员建立跟完善的 dApp,在保护用户隐私的同时扩展 Web3 生态系统,以及 Chainlink 信任最小化服务如何使这些协议更加去中心化、可靠且安全。

为什么使用基于 ZK 的网络?

ZK 解决方案为开发者提供了一个利用现有一层区块链(如以太坊)安全性的方法,同时通过更高的吞吐量和更快的交易速度使 dApp 得以扩展,通过将用户的个人信息隐藏在链外来保护用户,并通过分批发布交易来降低终端用户的成本。最终实现与 Web2 应用相媲美的性能和功能,同时享受全部去中心化所带来的好处(无信任摩擦成本)。

比较 ZK 扩容解决方案和 Optimistic Rollup

Optimistic Rollup 是另一种二层扩容技术。截至 2022 年 6 月 29 日,根据分析网站 L2Beat 的数据,基于 Optimistic Rollup 占以太坊 2 层网络 TVL 的 74.3 %,基于 ZK 的解决方案占25.9%。

ZK 扩展解决方案和 Optimistic Rollup 的根本区别在于交易的验证方式。Optimistic Rollup 使用欺诈证明( Fraud Proof ),只有在对一层区块链上发布的状态变化提出异议时才会产生,而零知识解决方案在每一批链上信息广播后都会发布有效性证明。这意味着,基于 ZK 的协议数据总是可信的,其代价是消耗更多的 gas 来验证基链上数据的有效性证明。

然而,将 zk-rollup 与链外数据相结合可以提高 gas 的消耗效率。这些改良版的基于 ZK 的解决方案被称为 validiums 和 volitions 。它们可以帮助推动企业采用区块链技术,同时保护用户信息和商业机密。

两种不同类型的二层解决方案之间的另一个主要区别是资本效率。在 Optimistic Rollup 中,交易最终完成和提款处理的标准窗口期是一个星期,而在 ZK 解决方案中,用户可以在十分钟之内提取资金。

基于 ZK 的解决方案

2层扩容方案可以使用有效性证明或欺诈证明,并在链上或链下存储数据
2层扩容方案可以使用有效性证明或欺诈证明,并在链上或链下存储数据

架构

Zk-Rollup

Zk-Rollup 将许多交易捆绑在一起,并将它们发布到一层区块链上,并有一个证明来验证该计算的有效性。在链上发布的证明被称为有效性证明,可以是 SNARK 或 STARK 。当这些证明在一层区块链上被验证后,Zk-Rollup 就有了新的状态。

Validium

Validium 将有效性证明与链外数据存储相结合,以提高可扩展性。有效性证明仍然发布在基础链上,而数据则存储在链外。这大大提高了吞吐量,降低了 gas 成本。

虽然这是个比 zk-rollup 更有效和可扩展架构,但随之而来的风险是作恶者会污染数据,导致最终普通用户无法提取他们的资金。这种数据可用性问题正在被 PoS 类型的系统所克服,该系统使用代币激励措施,以确保数据被大量不同的节点所存储,并始终可用。值得注意的是,作恶者仍可以阻止交易,但他们不能直接窃取用户资金。

Volition

Volition 结合了 zk-rollup 和 validium,并允许用户在任何一种扩容方案中进行选择(也因此得名),因为它们共享一个 StateRoot 。即使在 volition 的 validium 侧有一个成功的恶意攻击,zk-rollup 侧的资金仍然是安全的。

这使得愿意为 zk-rollup 的更高安全性来支付更多费用的实体能够与喜欢 volition 的更低交易成本的参与者进行自然互动,例如在 DEX 上,做市商提供数以亿计的流动性,而零售交易者可能只有几个小的头寸。

有效性证明

SNARK

SNARK 是 “zero-knowledge succinct non-interactive argument on knowledge” 的缩写。

SNARK 是一种加密证明的类型,体积小,容易验证。SNARK 使用椭圆曲线生成一个加密证明,它假定从一个公开的已知基点找到一个随机椭圆曲线元素的离散对数是不可行的。计算椭圆曲线比计算 STARK 使用的散列函数的计算成本要低,这就是为什么基于 SNARK 的协议可以有更高的 gas 效率。

STARK

STARK 是 "zero-knowledge scalable transparent argument of knowledge." 的缩写。

STARK 是一种加密证明,在证明者和验证者之间几乎不需要互动。与 SNARK 相比,STARK 的关键优势在于它们提供更多的算力,从而使验证更迅速,并且更容易扩展。另外,使用哈希函数使它们具有抗量子性 (量子计算机无法破解)。

值得注意的是, STARK 是由 Eli Ben-Sasson 发明的,他是 StarkWare 的联合创始人, StarkEx 和 StarkNet 的核心团队成员。

ZK 项目

零知识项目概览

使用不同零知识解决方案的项目实例
使用不同零知识解决方案的项目实例

基于zk-STARK的项目

StarkEx

StarkEx 是一个建立在以太坊上的二层扩容方案,它使用 STARK 证明来验证自托管( self-custodied )的交易,使得交易和支付应用可以在其上建立。建立在 StarkEx 上的项目,如 DeversiFi 、 Sorare 和 dYdX 已经产生了数以亿计的交易和数千亿美元的交易总额。然而, StarkEx 不支持智能合约功能,无法实现 dApp 的全部功能。

StarkNet

StarkNet 是一个通用的平台,使开发者能够在基于以太坊的 zk-rollup 上部署智能合约。以太坊元老级应用 Aave 和 Maker 都将在 StarkNet 上推出新版本。值得注意的是,StarkEx zk-rollup 可以在 StarkNet 之上启动,以提高应用程序的可扩展性。

为了充分利用 STARK 可能带来的高级计算及处理能力和可扩展性, StarkWare 为生成 STARK 证明创造了一种新的高效且图灵完整的编程语言,称为 Cairo 。这意味着 StarkWare 需要用文档、框架和配套的工具来引导一个开发者生态系统。

Immutable X

Immutable X 是为 NFT 交易、铸造而构建的平台,它使用 StarkEx 的特殊 zk-rollup 实现。该平台已经支持了数以千万计的 NFT 铸造和交易,即使在以太坊的网络拥堵时期,也一直保持着 0 gas。

Immutable X 也将在 StarkNet 上推出。 Immutable X 不会直接将其证明发布到以太坊上,而是将其发布到 StarkNet 上,然后通过 StarkNet 的 rollup 功能递归发布到以太坊上。然后Immutable X 可以利用 StarkEx 在 StarkNet 上面启动应用链,本质上是为生态项目提供了一个 “第三层” 的扩容方案。

基于 zk-SNARK 的项目

Zcash

Zcash,曾经名为 ZeroCash ,指的是用于支持其隐私保护交易的 ZK proof ,是较早的加密资产之一,帮助开创了零知识技术在行业中的使用。

Loopring 路印

Loopring 是一个建立在以太坊上的 Layer2 DEX ,支持订单簿交易,且自托管。由 Chainlink Price Feeds 提供喂价,它已为十多万用户提供服务,并促成了数十亿的交易量。

zkSync 1.0

zkSync 是以太坊上的一个 rollup ,与 StarkEx 一样,不支持智能合约。该协议是由 Matter Labs 创建的。

zkSync 2.0

与 StarkNet 类似, zkSync 2.0 是一个二层以太坊扩容方案,使用支持智能合约的 volition 架构。 zkSync 使用 zk-SNARK 来验证交易,并使用 zkPorter ,一个权益证明系统,以实现数据可用性。 zkSync 2.0 和 StarkNet 之间的主要区别,除了他们的有效性证明,就是 zkSync 2.0 是兼容 EVM 的。 1inch 、 Alchemix 和 Curve 正计划在 zkSync 2.0 上推出。

ZigZag

ZigZag 协议是一个 DEX,正是由于 zk-rollup 的可扩展性,使得为 ERC-20 交易对提供订单簿交易成为可能,与大多数 DEX 不同,它使用自动做市商(AMM)设计。

zkSync 注册清单中的任何代币都可以在 ZigZag 上市。该协议目前在 zkSync 1.0 上运行,但已计划在 zkSync 2.0 和 StarkNet 上推出。

Mina

Mina 协议是一个轻量级的区块链,使用 SNARK 来产生大小限制在 22kb 的区块。项目可以在 Mina 上建立具有完整智能合约功能的应用程序。

ZK 技术可以为项目带来跟强有力的安全屏障,并通过可靠的、去中心化的 Chainlink 预言机服务实现其应用的自动化。

整个 Web3 生态系统的协议可以使用 Chainlink 信任最小化服务来访问任何外部 API ,并利用安全的链外计算来构建更高级的应用。

零知识协议可以通过以下方式为其 dApp 赋能:

  • 高度准确的市场数据

    Chainlink Price Feed 以可靠且精确的未加系统支撑 DeFi 运作,这些数据被用来支持去中心化的稳定币、借贷协议、交易平台和更多的用例。

  • 可验证的随机性

    Chainlink VRF 生成的随机性由加密证明支持,然后在链上交付和验证。NFT 平台可以将这种随机性用于 fair mint,而区块链游戏可以用它来创造真实的、不可预测的随机场景。

  • 智能合约自动化

    Chainlink Keepers 是一个去中心化的交易自动化服务,可用于自动触发关键的智能合约功能,如结算限价单,执行清算,重新调整代币等等。

  • Proof of Reserve

    Chainlink Proof of Reserve 为储备资产提供基于密码学定理的自动验证,实现零知识协议,以降低风险,提高透明度,并辅助预防 DeFi 的系统性故障。

  • 跨链通信

    跨链互操作性协议(CCIP)为协议提供了一个通用的、开放的标准,用它来打造安全的跨链应用,可以在 Web3 上传输代币、发送消息和展开各类活动。

DECO 赋能

一个项目不一定要使用 Zk-rollup 、 validium 或 volition 才能从零知识技术中受益。目前, DECO 正在开发中,它使用 ZK proof 来在 HTTPS/TLS 系统中的数据传输过程中保持数据隐私和防篡改。

启用 DECO 的 Chainlink 预言机节点可以证明数据的事实,而不透露该数据。 启用 DECO 的 Chainlink 预言机节点可以证明来自可信服务器的数据真实性,且不暴露链上的数据内容;由于 TLS 监管链的存在,同时也能确保数据源的有效性 。

这实现了广泛的高级用例,去中心化身份(DID)协议如 CanDID ,使用户能够管理他们的证书,而不是依赖第三方。它还可以启用一个 DeFi 平台,通过与既定机构检查用户的信用度是否符合他们的要求,而不需要查看任何个人数据,从而支持非足额抵押贷款服务。

由此 DECO 为协议提供安全保障,使用户能够在链上系统中安全地使用个人信息,而不必在链上提供这些数据。

总结

与一层区块链和去中心化的预言机网络一起,ZK proof 将改变区块链行业,使项目能够在保护用户隐私的同时建立高度可扩展的,以及建立低成本的高级应用程序。

虽然有其他二层解决方案可能为某些应用提供更好的架构,但随着区块链行业走向大规模采用,ZK proof、validiums 和 volition 将在个人和企业中捕获大量的用户。

译者:@Cedric_appren

Subscribe to Cedric
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from Cedric

Skeleton

Skeleton

Skeleton