# ArkStream Capital: 详解 zk 在扩容和隐私保护赛道的投资机会 ( 二 )


By [ArkStrean Capital](https://paragraph.com/@arkstrean-capital) · 2022-08-24

---

**零知识证明和扩容** 目前来看，区块链所有设计的出发点，本质都是围绕区块。交易构成区块数据，共识机制决定区块生成、验证和顺序。按照交易的角度思考，交易经过用户私钥签名发起，经由网络广播，进入全网交易内存池，区块构造者/MEV搜索者/定序器挑选交易，提交交易列表给区块构造者，区块构造者/区块生产者向网络提交区块，区块验证者验证区块合法有效以后确认上链。按照区块的角度思考，区块要完成构造、提交上链和上链确认三个步骤。去中心化的设计机制，会为交易或区块的每个环节增加全网成本和安全性，以此实现机器信任。合法的最长区块链，我们称之为主链/一层网络/基层链/Layer1。

在软件设计开发领域，设计模式有单一职责、设计架构有分层架构，设计原则有高内聚低耦合，这一切的理论和指导为的都是以模块化的思想重构软件。区块链的模块化，可以从数据可用（数据层）、逻辑执行（执行层）和共识机制（共识层）三个主要层面进行划分。如果将扩容对应到这三个层面，那么，分别会有数据层扩容、执行层扩容和共识层扩容。为了简化，我们按照主链变动与否，分为链上扩容和链下扩容。链上扩容方案有增加区块大小、分片、调整共识机制。链下扩容方案有隔离见证、状态通道、侧链、Plasma、Rollup。DeFi的爆发和NFT的盛行让以太坊网络的扩容需求日益激增，2021年12月，Vitalik发布了《Endgame》，描绘了以太坊的未来将会是中心化出块、去中心化验证以及多Rollup并存的。在 Vitalik的大力支持下，Rollup成为了以太坊链下扩容的主流方案。在众多的Rollup细分方案中，按照技术类型，可分为Optimisitc Rollup（ORU）和ZK Rollup（ZKR），他们之间主要的区别是交易有效性保证方案不一样，Optimistic采用博弈的欺诈证明，ZK Rollup采用数学的零知识证明。

不管是Optimistic Rollup、还是ZK Rollup，它们都要在继承以太坊的安全性和数据可用性前提下，处理大量的交易和支持智能合约的通用计算。Optimistic Rollup是将大量的交易数据进行压缩，然后把压缩以后的交易数据和状态根提交到以太坊。另外，Optimistic Rollup网络设有挑战者的角色，它们可以对提交到以太坊的数据进行欺诈证明，然后再经由Optimistic Rollup网络共识回滚无效的交易。至于ZK Rollup，批量处理交易数据的时候，使用了零知识证明技术，在保证了交易数据有效性的基础上，直接将证明提交到以太坊，即时达成状态的最终一致性。在智能合约通用计算方面，Optimistic Rollup是直接延用以太坊EVM，而ZK Rollup的团队要么是研发zkVM、要么是采取zkEVM的道路，所以，dApp的项目可以在Optimistic Rollup无缝迁移，而在ZK Rollup网络大部分都需要做可大可小的改动。

不同种类的Rollup，设有特别的网络参与者，ORU有提出欺诈证明的挑战者，ZKR有进行计算和聚合零知识证明的计算证明者和聚合者。Layer2通过将二层网络的交易批量处理（Rollup）以后，提交到一层网络特定的智能合约，由此获得一层网络的安全性和数据可用性。此时，一层网络的去中心化程度、区块验证机制都会成为二层网络交易有效性的背书。

在Layer2网络技术方案和架构，相比于采用博弈模型的ORU，采用零知识证明，能进行数学验证的ZKR将更有技术优势，只是后者发展相对缓慢，需要更多的时间，因此也有大量的项目在这个领域进行前瞻式的探索。接下来，我们将探讨多个ZKR相关项目。

Starkware：基于自研STARK协议，发明Cairo电路编程语言及其zkVM的技术服务商。产品线有专用型的StarkEx和通用型的StarkNet。StarkEx定位是服务特定应用需求的二层网络扩容引擎，已经服务不少客户，例如Sorare、Immutable、dYdX（V3）、DeversiFi（[rhino.fi](http://rhino.fi)）、Celer等，现在也有超过6亿美金的TVL、2亿多的交易量等业务数据。

StarkNet定位是通用的、可组合的、去中心化的ZKR。整个StarkNet的核心参与者：StarkNet OS、STARK Prover和Blockchain Dispatcher。StarkNet OS类似于EVM在以太坊的角色，承担交易排序和交易零知识证明计算任务分派。STARK Prover是交易零知识证明的证明方，负责计算证明。Blockchain Dispatcher是L1/L2网络之间通信的桥梁。

![Figure1: StarkNet Intro](https://storage.googleapis.com/papyrus_images/b43a54b39568403d54e67a71da393ea885fb7692df9e734a9df8c04235f8c8ab.png)

Figure1: StarkNet Intro

![Figure2: StarkNet Messaging Mechanism L2->L1](https://storage.googleapis.com/papyrus_images/741b9267beea42c26d74edc5a22de1b75c529e1f08e4eb6c0175ce53f93c7d67.png)

Figure2: StarkNet Messaging Mechanism L2->L1

StarkNet官方网关StarkGate已经发布上线，会不定期开放限制额度的存取款体验，现在桥接的资产总数大概为775个ETH。Cairo语言风格偏向Golang和Python之间，新增电路编程语言的原生类型：Field Element（felt），开发通用库偏少，主要是官方提供。不支持zkEVM，也即不支持Solidity代码的直接编译部署，需要先通过Warp转译器转成Cairo代码再做部署，Solidity部分特性明确不支持，其中影响比较大的是SHA256。StarkNet的生态项目涵盖钱包、DEX、DAO等多个赛道，以原生项目为主，和以太坊dApp项目重合度较低，具体可以参考官方生态网站。从区块浏览器可以看到，目前没有频繁的交易数量，每个Block的平均交易数是115笔左右。

StarkNet发布了多次Alpha版、当前处于Constellations阶段，正在研究和实现去中心化的StarkNet OS和StarkNet Prover。

![Figure3: StarkNet Decentralization Roadmap](https://storage.googleapis.com/papyrus_images/eaf011e45afdd9e2459ba644aecf9d02752ef7613349be9f66e7c82e6d04c517.png)

Figure3: StarkNet Decentralization Roadmap

zkSync：基于PLONK协议（1.0版本）和自研无需可信设置的、透明的RedShift协议（2.0版本/未来），支持Solidity/Vyper编程的zkEVM的ZKR。zkSync 1.0之前推出Zinc电路编程语言和对应的SyncVM（zkVM），现在基本停滞，改为支持Solidity/Vyper编程的zkEVM，也即zkSync 2.0。现在处于zkSync 2.0测试网迭代阶段，未来100天将会发布主网和实现zkEVM开源。除了数据上链的zkRollup方案，zkSync也推出数据不上链的zkPorter方案。zkSync 2.0用Operator操作者和System Contracts系统合约的设计完成L2到L1合约部署功能、L2/L1通信功能等。当前的Operator操作者由zkSync团队运行，未来将进行去中心化改造。由于zkSync宣称EVM字节码的兼容性，且作为社区驱动型项目，zkSync获得不少以太坊知名dApp项目方支持，例如1inch、Yearn Finance、Aave、Chainlink和The Graph等。zkSync的生态项目可以通过官方生态网站查询，Live状态的有钱包、衍生品交易所和桥等。从区块浏览器可以看到，提交确认的区块有接近10万，总交易数超过1千万，平均每个区块交易数为100笔。zkSync 2.0测试网运行约有半年，一直在进行zkEVM的实现和以太坊JSON-RPC的兼容。zkSync的2.0版本可能是最快上线的兼容zkEVM的ZK Rollup，待其上线后，将很大程度上降低用户门槛，进一步吸引用户使用该L2网络。

![Figure4: zkSync 2.0 100 Days to Mainnet](https://storage.googleapis.com/papyrus_images/069bd2406a067bce17ff039e7c49130b99537281d644c040c5dd29fda776179e.png)

Figure4: zkSync 2.0 100 Days to Mainnet

Scroll：原生zkEVM方案、集成ZK各项前研技术（多项式承诺、Lookup Table、递归证明）和GPU/ASIC硬件加速的ZKR。Scroll的L2网络由Node（Replayer、Sequencer、Coordinator）和Roller组成，以及对应的L1上面的Bridge和Rollup智能合约。推荐大家直接阅读官方发表的架构讲解文章，非常通俗易懂。这里我们简单说说：Sequencer接收L2交易，处理L2交易列表，构造区块和状态根，Coordinator监控区块和分发区块的执行栈给Roller，Roller计算zkEVM的电路和生成聚合电路证明，再返回给Coordinator，Coordinator通过Replayer提交到L1的Rollup合约，Replayer也承担L1/L2通信桥的功能。由于Scroll和以太坊基金会PSE（Privacy & Scaling Explorations）共同在隐私和扩容问题研究一年多时间，Scroll的zkEVM方案非常原生。从Scroll公开的代码仓可以看出，zkEVM方案是与PSE一致联动的，而L2的Node会基于以太坊Go-Ethereum（Geth）实现。近期Scroll有Pre-alpha测试网的注册。

![Figure5: Scroll Architecture](https://storage.googleapis.com/papyrus_images/1aa778a30fd485ff83274d3cbbe230ec1aa80d741ded8c1a9579e1c5831b603e.png)

Figure5: Scroll Architecture

![Figure6: Scroll Workflow](https://storage.googleapis.com/papyrus_images/7f6d437f4ae6e1135ba9d74804d353b70e02e8b0e8da49c2a2f83515213a9f13.png)

Figure6: Scroll Workflow

Polygon(MATIC)：最开始提出的时候是以太坊的侧链，在转变策略后，Polygon并购了多个L2解决方案，开始进行大范围的扩容探索，这里我们将对其中几个涉及zk的L2方案进行简单的介绍。

![Figure7: Polygon Scaling Solutions](https://storage.googleapis.com/papyrus_images/ca8c77e3dbec70cd6570a25bc179656dd17302cf879a8795eb903162d67653d0.png)

Figure7: Polygon Scaling Solutions

Polygon zkEVM（Hermez）：Hermez 1.0采用去中心化竞价模型的PoD（Proof of Donation）共识机制以及ZKR做的主打支付功能L2，主网在21年3月上线，区块浏览器，断断续续有批量产生的交易。Hermez 2.0调整为zkEVM方案的L2，共识机制升级为PoE（Proof of Efficiency）。Hermez 2.0的L2架构图如下，可以看出和Scroll的架构很类似，我们就不再复述L2各方角色交互的基本流程和作用。在zkEVM发挥核心作用的是zkProver（同比Scroll的Roller），我们一块看看zkProver的内部组成。zkEVM以多项式形式表达状态流转（参考上一篇文章的虚拟机部分，多项式形式/约束直接理解为零知识证明的电路）。

![Figure8: Skeletal Overview of zkEVM](https://storage.googleapis.com/papyrus_images/1c4a6e461f5d9b5c31753788e5ffa9cf87fc2e4cbc57782e701d1b1301b38976.png)

Figure8: Skeletal Overview of zkEVM

zkProver内部包含Main State Machine Executor（Executor）， Secondary State Machines（STARK Recursion Component）， STARK Builder（CIRCOM Library）和SNARK Builder（zk-SNARK Prover），括号为另一种理解方式，参考图。

1.  Main State Machine Executor：是将交易的EVM字节码用zkASM（zero-knowledge Assembly language）进行解释和设置多项式约束，与此同时， Polynomial Identity Language（PIL）用于编码多项式约束。
    
2.  Secondary State Machines：将zkEVM的交易对应的状态流转进行拆分，用对应多个状态机去计算和验证交易的正确性。
    
3.  STARK Proof Buidler：计算生成符合STARK多项式约束的证明（计算速度快）。
    
4.  SNARK Proof Builder：计算STARK的SNARK证明（缩小证明的大小），PLONK/Groth 16暂定。
    

![Figure9: A Simplified zkProver Diagram](https://storage.googleapis.com/papyrus_images/0d911995755706ca33f356de95c6cfecf5c0243e5081334736b32224fd2863aa.png)

Figure9: A Simplified zkProver Diagram

![Figure10: Simplified Data Flow in the zkProver](https://storage.googleapis.com/papyrus_images/e8b6c56f1aac0a13b76bdf973e23247373bec729c8a32153dd9bb8d44cd44acc.png)

Figure10: Simplified Data Flow in the zkProver

至于Hermez zkASM/PIL等介绍，都可以在官方资料文档看到，很齐全，并且各个功能模块的代码仓已经开源且有持续维护。

![Figure11: Polygon zkEVM Open Source](https://storage.googleapis.com/papyrus_images/9fe6a39450476aebff82cfe3957cbac1cba99407f492e57bb080c02f0df8092a.png)

Figure11: Polygon zkEVM Open Source

概括而言，Hermez 2.0是结合Plonkup Lookup、Starkware的STARK协议，采用新汇编方案实现的zkEVM型、PoE共识去中心化的L2。计划2022年Q3发布测试网，2023年发布主网。

Polygon Zero：基于Plonk协议和FRI技术的自研Plonky2，zkEVM兼容的L2。Polygon花费4亿美元收购的Mir项目更名而来。Zero的资料主要是在Mir的官网和Polygon的博客查看。Zero宣称的特点是支持递归、高效快速、证明大小很小。项目代码仓一直在更新，且其中包含evm的模块。由于资料较少且时间久远，暂时不清楚Zero未来的路线，目前来看，Plonky2的架构可能更偏向于技术服务型的框架，近期宣布开源Plonky2。

![Figure12: Polygon Zero Processing A Block](https://storage.googleapis.com/papyrus_images/35ea770652c4c777120158f0a064369ba21135d03ce319d313bfb1f4a723f746.png)

Figure12: Polygon Zero Processing A Block

Polygon Miden：基于STARK协议，支持多语言开发（含Solidity）、兼容EVM，推出电路编程语言Miden Assembly汇编及其Miden VM的L2。Miden VM是Distaff VM的进化版，集成了Facebook开源的证明系统库Winterfell。从官网的架构图，Miden有Operator的设计，但这部分内容、EVM兼容和L2路线和进展都没找到任何官方资料文档。Miden现在的代码仓以VM为主，兼容EVM部分也没有看到说明和实现方案。

![Figure13: Polygon Miden Intro](https://storage.googleapis.com/papyrus_images/ca076fb963cca8618589a173b7a7c4e14c20c2877836ec90bf1049f297cab290.png)

Figure13: Polygon Miden Intro

Polygon Nightfall：主打隐私的、混合了Optimistic和ZK两种Rollup方式的企业级L2。本质依然是ORU的L2，但是结合了ZKP的技术加强隐私保护。Nightfall是由安永公司创建，与Polygon合作是为了在企业级区块链方面进行更多的探索。主网计划在2022年发布。

![Figure14: Polygon Nightfall Intro](https://storage.googleapis.com/papyrus_images/1e6638a2a60dcb17df388d4bc7a9f45738701b7a2dbb271fb148b514801421a5.png)

Figure14: Polygon Nightfall Intro

Mina：除了L2，还有一些项目基于ZKP对L1进行扩容上的探索，比如Mina，一个基于递归SNARK开发的轻量级区块链（L1）。整个区块链网络维护最新区块的SNARK证明即可保证整个区块链的正确性，大小维持在22KB。网络有维护完整数据的Archive Node，执行共识机制生产区块的出块者和处理零知识证明计算的SNARK生产者。Mina提出用TypeScript编写的zkApp，如果要实现对应zkApp业务逻辑，需要开发者实现内部的Prover和Verifier函数。Mina主网在2021年3月发布上线，网络架构和L2的批量交易类似，Archive Node相当于数据可用层的维护者，出块者相当于定序器，SNARK生产者类似于Scroll的Roller、Hermez 2.0的zkProver角色，但是zkApp的应用定位比较局限，既没有zkVM的通用性，也不支持zkEVM。后续可以继续跟进Mina的zkApp迭代进展。

综上，ZK在扩容领域的技术发展依然在如火如荼进行中，尤其是zkEVM的实现，L2网络架构的实现和去中心化改造。从ETHGasstation近30天前二十燃烧Gas合约大户来看，主要是Opensea、DeversiFi、Uniswap、USDT、USDC、Metamask Swap、Axie Infinity、NFT Worlds等项目。L2要想得到广泛应用，必须获得这些DEX、NFT的MarketPlace、GameFi，以及金融衍生品等具有高频交易场景的项目支持。尽管部分L2项目的生态处于领先，但是，zkEVM的落地，很有可能实现弯道超车，导致L2赛道的重新洗牌。zkEVM的落地有利于吸引L1现有项目的迁移，很多Web3开发者也正摩拳擦掌，期待在以太坊网络上构建更大规模、更高频交互的颠覆性产品。

**零知识证明和隐私** 如果说Web3代表着个体主权的觉醒，那么，隐私将是Web3不可或缺的一环。随着行业的发展，DeFi的可组合性和NFT给社交带来的变化，都让我们越发感受到了资产所有权相对于中心化托管的安全和便利，而链上完全透明的信息则进一步激发了我们对隐私保护的需求。但面对各个国家不断升级的监管政策，隐私保护怎么做，做到什么程度，则是一个值得讨论的问题。

近期，美国财政部出台政策直接对以太坊生态的隐私支付平台Tornado Cash进行制裁，进而导致与Tornado Cash交互过的地址被USDC发行商Circle拉入黑名单，以及Tornado网站页面、代码仓Github、官方电报、官方Discord等一并关停。我们认为，人人都有保护自己隐私的诉求和权力，隐私产品的滥用并不意味着它们自身带有原罪，隐私产品的设计初衷是在于保护用户常规的转账支付隐私。不可否认，不法分子/黑客对其的使用的确带来很多问题，但关键并不是取缔隐私产品，而是努力寻找办法兼顾隐私和合法合规，例如ZCash对于全球AML/CFT反洗钱标准的兼容尝试以及Tornado Cash提供的资产合规证明工具。

现在加密行业里涉及的隐私实现方案，因为各自的使用场景不同（隐私支付、隐私交易和隐私通用计算），选用的方案也有不少差异，主要涉及到的有以下6类：

1，混币CoinJoin/混币器Mixer：主要是用于隐匿支付，基于UTXO模型，本质是创作多笔相同的输入和输出的代币转账来达到隐匿支付。可以在一定程度实现隐匿支付。不过，如果真要地址分析和控制，大不了是控制全部输出的取款地址即可。为了克服混币方案的问题，达世币是提出隐私支付层的概念，让隐私支付层参与存款地址的混合，以及减少存取地址之间的关联。Tornado则是结合ZKP切断存取地址之间的关联。

2，环签名：多个地址组成环，环内某个地址的签名可以不依赖其他地址即触发环签名，以及实现环内地址签名的隐私性。门罗币最早的方案。

3，同态加密：直接对密文进行计算和输出结果。我们认为该项技术属于前沿型技术，和零知识证明类似，但是对于密文操作的开销非常大。现在在这个技术方向探索的有Polychain Capital和Coinbase Ventures投资的Sunscreen。

4，安全多方计算（MPC）：在没有可信第三方参与的前提下，让多个参与方可以安全不泄露地进行计算。万向区块链董事长肖风博士发起的PlatON在这方面有比较长时间的研究使用。

5，TEE（Trusted Execution Environment）：可信执行环境，类似于黑盒子的概念，将输入传入TEE，然后TEE执行出结果以后，加密输出。现有使用该项技术的主要是Oasis和Secret Network。

6，ZKP：利用零知识证明技术实现隐私支付和隐私通用计算。隐私支付的新项目有Iron Fish，PoW网络+UTXO模型+Groth16的zk-SNARK，和ZCash的设计很相似，没有提到是否支持隐私编程。隐私通用计算项目最出名的是Aleo、Aztec和Espresso。

讲完基本的实现方案，我们挑选一些涉及到零知识证明的项目展开学习和分析。

Tornado Cash：我们经常看到的介绍是，用户向Tornado存款，取得存款凭证，然后在取款的时候，任意用户（地址）使用存款凭证即可取出资金，如此实现的隐私支付交易。这样的说明是从使用体验角度出发的，但是，并没有深入到Tornado的内核。Tornado实现隐私的技术有两点：混淆资金进出的整存整取资金池，切断存取地址关联的ZKP。

混币池相对容易理解，所以，我们将分析重心放在ZKP。由于现在Tornado的前端网站和代码仓都关停，难以找到官方的资料，所以，我们直接从链上交易和合约代码进行分析，用户实际与Tornado要做的操作只有两种：存款和取款。这都是通过Tornado Cash的路由合约进行，路由合约会调用具体存取金额（1ETH/10ETH等）的合约。存款操作Tornado返回用户Note，向链上提交Commitment。取款操作向链上提交Proof、Root、NullifierHash。这几个参数，它们由Tornado的中心化代码构造生成，是理解ZKP使用的关键。

我们将Tornado类比为一个负责存取款的银行，以太坊类比为公开的金库，即可较为容易地理解用户在Tornado 的操作步骤：

1，存款：用户填写存款单据，银行使用单一专门的保险箱（Commitment）保管存款单据，并且根据随机编号生成两个密码，一个密码用于给保险箱上锁，一个密码用于记录资金的存取状态，然后，将上锁的、具有资金存取状态的保险箱放入公开金库的某个秘密随机位置。银行将保险箱、随机编号和保险箱存放位置信息返回用户；（Note）

2，取款：用户把随机编号和保险箱存放位置告诉银行，银行可以通过计算得知：保险箱的秘密随机位置（Root），资金的存取状态（NullifierHash），以及保险箱的开锁密码（Proof）。一切检查验证无误的情况下，完成取款以及更新资金存取状态；

通过Mixer混币器和零知识证明，Tornado在以太坊主网上实现了隐私支付的功能，且在发行代币后，TVL达到了10亿美金的体量，可见其巨大的影响力和用户需求。

![Figure15: Tornado Cash TVL and MarketCap](https://storage.googleapis.com/papyrus_images/41aa1e36f654c7faf5ff9652bb6dbf0563fa0de8e9b70ba8d7a2d49e93ecdf02.png)

Figure15: Tornado Cash TVL and MarketCap

Aztec：主打隐私保护和隐私资产互操作性的zk-Rollup Layer2网络，采用自主研发的Plonk协议，推出了zk.money隐私支付产品，近期推出连接桥Aztec Connect，未来将会推出Plonk Rollup的扩容二层网络。在Plonk Rollup二层网络里，将会推出电路编程语言Noir支持隐私智能合约。Plonk协议需要进行可信设置，不过，Aztec采用了MPC（多方安全计算）解决可信设置。MPC的可信设置是让多个值得信赖的公众知名人士共同去背书。Aztec在2020年1月用点火仪式完成了MPC的可信设置。产品的迭代路线是逐层推进的，从早期的zk.money，到近期的Aztec Connect，以及未来的Plonk Rollup，Aztec团队在一步一步地完善自己的产品定位，以及对应Plonk协议的调整和优化（TurboPlonk、UltraPlonk）。在Aztec 1.0时期对于Aztec协议做了大幅的介绍，现在是Aztec 2.0时期，官网找不到太多网络整体的设计，所以，我们沿用Aztec 1.0的文档进行学习。

zkAsset：隐私资产，于EIP1724提出，用于将以太坊公开透明的资产转为隐私资产，通过零知识证明确认资产转入Note注册表以后会铸造对应的zkAsset，类似于Secret的Shield资产（类似于Tornado Cash的存款过程，不过，Aztec在链上进行增加了隐私资产的概念）。

Aztec Cryptography Engine（ACE）：将证明分发给验证和根据证明验证结果更新Note注册表的状态。

各种Validator（Join Split、Bilateral Swap Validator......）：验证者工具（类似于SDK），可以让开发者集成做隐私资产的互操作。例如：Join Split可以拆分合并Note。

![Figure16: Aztec 1.0 Architecture](https://storage.googleapis.com/papyrus_images/d9e998444878ba20795374ee5da787411bf0e910c6fd6fe9f0313aedcf25415b.png)

Figure16: Aztec 1.0 Architecture

在2021年6月上线后，Aztec的TVL峰值一度到达1400万美金，而现在稳定在400万美金左右。相比于Tornado的体量，Layer2的隐私网络受众似乎要小很多，一定程度上可能受制于其更高的门槛。且受Tornado事件的影响，与以太坊主网产生交互的其他隐私产品也受到了一些牵连， 这可能是日后需要开发者们探讨的问题。

Aleo：Aleo是为用户和交易增加隐私功能，同时兼顾可编程性的新型Layer1区块链网络，内置的SnarkOS（去中心化的操作系统），类似于EVM的角色。提出ZEXE（Zero Knowledge EXEcution）的概念，和TEE的定义很相似，只是用零知识证明去实现。具有可选的隐私模型，对开发者提供一整套的开发工具链。Leo语言，Aleo Studio（IDE）、Aleo Package Manager。最新激励测试网从单纯的PoW共识调整为PoSW（Proof of Succinct Work），将零知识证明的计算转移成为出块的条件。现在在Aleo的区块链浏览器可以查看验证状态的转变、以及对交易记录进行零知识证明计算的Proof。

![Figure17: The Future of Zero Knowledge with Aleo](https://storage.googleapis.com/papyrus_images/a9d27c67e00463c5d873a54eeaa787a73c0ca393fc3c75f2f4002a79df3087cf.png)

Figure17: The Future of Zero Knowledge with Aleo

Espresso：对于Aleo和Aztec各自的特点都有所研究和改进，基于ZK Rollup的L2和可配置资产隐私的L1双层网络。可配置隐私资产允许资产创建者设置资产的收发地址、收发数量、持有数量等的隐私查看规则和资产冻结规则。对于ZEXE的概念提出自己的VERI-ZEXE，对于Aztec的TurboPlonk和UltraPlonk提出自己优化版的PLONK，并将Rust实现版代码命名为Jellyfish和开源。当前，Espresso的L1网络正在研发。可配置资产隐私在以太坊测试网内测，或者可以通过官网安装包进行本地体验。

![Figure18: Espresso Systems Configurable Asset Privacy for Ethereum](https://storage.googleapis.com/papyrus_images/80f76f9a3011e3a036db2dc5d5907211781a04f270f3d889883ffb5342142569.png)

Figure18: Espresso Systems Configurable Asset Privacy for Ethereum

Zecrey：双层网络，支持多链ZKR的L2、以及具有跨链功能和隐私保护的L1，但是不支持zkEVM/zkVM。L1的隐私是基于BulletProofs协议改良版（LNCS）/ Sigma协议的混淆资金池，直接在公链层面向用户提供隐私转账和隐私交易的功能。L2的ZKR使用的是PLONK协议。参考官方白皮书的架构图，有一大部分是L1/L2进行ZKR的设计，我们拿出来分析学习。

Layer-2 Commiter：收集交易和构造L2区块。

Block Monitor：L2区块状态更新者。

Prover Network：L2交易Rollup之后，进行ZKP证明的计算网络。

TSS-based Verifier Network：验证者网络，将收集Prover Network的证明，然后提交到L1的智能合约。

Tx Monitor / Layer-2 State Monitor / Executor：L1/L2的桥。

L2到L1进行ZKR的时序设计基本一致，部分角色命名和分工略有不同：

Committer收集交易，构造L2区块，Prover Network监听区块，为Committed状态的区块计算证明，TSS-based Verifier Network收集证明，将证明提交到L1的智能合约，Block Monitor监听L1区块打包情况，确认后更新L2区块状态。

Zecrey现在处于测试网研发阶段，已经集成Ethereum、Polygon、NEAR、Avalanche和BSC五个公链测试。从官网路线图看，2022年Q3将会发布主网。

![Figure19: Zecrey System Architecture](https://storage.googleapis.com/papyrus_images/7818f2d52a21b43fd8dd02a6d5af6975dcb6242d36600e108a1219a1394e465e.png)

Figure19: Zecrey System Architecture

Manta Network：波卡生态的包含多资产隐私支付协议和AMM隐私交易协议的DeFi隐私协议栈（隐私平行链）。参考官方的架构图，可以作为波卡生态各个平行链的隐私中转站。具体隐私方案分别是：基于Zcash的UTXO隐私支付模型，增加了多资产的支持以及隐私支付通道的技术。使用类似ZEXE的方案实现AMM隐私交易，内置了零知识证明的电路。

![Figure20: Manta Architecture (Implemented as a Parachain)](https://storage.googleapis.com/papyrus_images/27108637e7fe4a351466f5c7314dfe6a442987240a202ba2df05fa58c65fc110.png)

Figure20: Manta Architecture (Implemented as a Parachain)

Anoma Network：以Intent（意图）为中心、有可组合性的隐私保护，可以去中心化发现对手方、解决多链原子结算交易的一层网络。Anoma架构是参考Cosmos的，使用Tendermint BFT共识机制，首个主权独立链（Fractal Instance）是Namada。我们用订单薄的交易所类比理解Anoma。Anoma的Intent相当于用户的挂单，挂单可以公开（Transparent）、隐藏（Shielded）或者加密（Private），挂单需要由Anoma的Solver进行撮合结算（Settle），撮合成功的挂单形成Anoma的交易。Anoma提出自己的AnomaVM，对应高级函数式编程语言Juvix和VampIR电路编程语言，AnomaVM内置支持ZKP电路生成和FHE（全同态加密）。

![Figure21: The lifecycle of a transparent, shielded, and private intent in the Anoma architecture](https://storage.googleapis.com/papyrus_images/4b1be25c58179a93c29b6f5b0b34013bd4d33b9ef06c555113b275802b10def2.png)

Figure21: The lifecycle of a transparent, shielded, and private intent in the Anoma architecture

Iron Fish：基于Zcash的Sapling协议，以PoW作为共识的隐私支付公链。进行了多轮激励测试网，预计2022年Q4上线主网。

基于以上项目的信息，我们可以看到，在隐私保护的领域，零知识证明主要应用在隐私支付和隐私网络的场景中，且大多并非单独使用，而是结合了Mixer，TEE，MPC等其他隐私保护的技术。

![Figure22: Web3 Privacy Ecosystem](https://storage.googleapis.com/papyrus_images/7591c94d5c6f13afc4662f6c7861ccf15c1cce40a488b7c39a4cda762b7a350a.png)

Figure22: Web3 Privacy Ecosystem

隐私保护赛道依然有不少的项目在探索研发，尤其是最终面向用户的隐私应用方向，结合DeFi、NFT等应用场景，还有很多延伸的空间，我们也就不一一列举。回到最初的话题，隐私产品的出现是基于用户的需求，当我们朝着Web3前进时，无论是基于区块链的去中心化金融体系，还是未来Web3的社交场景，我们都希望能够把更多的链下行为置于链上，那对于用户隐私保护的需求就会越发强烈。在众多隐私保护解决方案中，ZKP扮演着重要的作用，这也是我们去深度研究的原因。

**零知识证明的投资方向** 在前面的章节，我们花了较多的篇幅整理和学习了零知识证明在扩容和隐私方向的项目，零知识证明相关的扩容和隐私项目在一级市场也获得了资本的青睐，我们对这两个赛道项目的公开融资数据进行整理，分别如下两图：

![Figure23: Zero Knowledge Investments In Scaling](https://storage.googleapis.com/papyrus_images/536806f9047f94f58c8dedcfec1601076e95f5fe3446c1ead5e114a469b9a064.png)

Figure23: Zero Knowledge Investments In Scaling

![Figure24: Zero Knowledge Investments in Privacy Protection](https://storage.googleapis.com/papyrus_images/2ed3a8214020493f2a16007444564c80b852ef9a10fc45d03b68950b602e4b8f.png)

Figure24: Zero Knowledge Investments in Privacy Protection

可以看出， ZK扩容项目估值最高的是Starkware，高达80亿，ZK隐私项目最高的是Aleo，估值14.5亿。考虑到项目在隐私和扩容叙事可以并行出发，甚至一些隐私项目是双层网络，所以，难以比较两个赛道的平均融资金额。单从最高估值而言，扩容赛道在一级市场的认可度是高于隐私赛道。扩容赛道之中，在协议、电路语言、zkVM和服务项目等多方面有优势的Starkware无疑是资本市场的宠儿。另外，其他主打zkEVM兼容的扩容项目，也同样获得资本市场的热爱。隐私赛道之中，在电路语言、开发者工具链等方面有优势的Aleo比起研发PLONK和PLookup技术的Aztec更为吃香，也侧面说明资本市场对于商业落地型项目的偏重。

二级市场方面，由于币价波动较大，ATH的流动性基本不足，我们简单参考FDV的区间。ZKR型扩容项目暂未发币，我们借用（ORU）项目Optimism进行对标，OP的FDV是20亿到95亿；而在隐私保护赛道，ZCash在15亿到45亿之间，Oasis在7亿到59亿之间，Tornado的FDV则从刚上线时的30亿，一路下跌到现在仅9000万。由此可以看出二级市场对于扩容赛道项目的认可，基本和公链处于同一个层级，而对于隐私赛道则相对比较保守。

由于ZK这项技术在学术研究层面不断创新突破，在工程实践层面也不断推进落地，因此，投资机构一直都非常钟爱和热衷。不仅如此，除了本文提到的两个主要赛道，ZK也可以用于其他场景，例如轻量区块链（Mina）、去中心化身份（Polygon ID）和隐私预言机网络（Chainlink的Deco）。从众多知名ZK项目之中，我们观察到这些不同的项目发展路线和生态发展路线，或多或少都是在构建二层的公链。与公链的研发技术栈类似，ZK项目涉及的技术栈依然涵盖方方面面：零知识证明协议、电路编程语言、语言应用库/包、语言开发调试工具链（IDE）、zkVM/zkEVM设计实现、去中心化共识机制等。

在面对使用零知识证明的扩容和隐私项目时，我们提炼了一些简单的思考列表，汇总如下，用于和项目沟通交流学习。

1，不同的零知识证明协议有各自的优缺点，出于什么考虑进行选择？

2，假设是zkVM型项目，要怎么高效、安全地设计开发者友好的电路编程语言？

3，假设是zkVM型项目，如何搭建一套开发者生态的工具链产品？

4，假设是zkEVM项目，是否支持EVM链的智能合约无缝迁移，对于跨合约之间的调用是否有限制（可组合性）？

5，ZK计算Proof的时候，怎样可以采用FPGA/GPU等硬件进行加速？

6，项目之中，Prover和Verifier都承担什么作用，是否中心化控制，未来是否有去中心化的设计变化？

7，…共识机制，代币经济设计，合规性设计等其他问题

零知识证明作为亟需沉淀的高新技术，非一日之功，资本的迅速入场并不能带来基础技术的迅速发展。因此，项目标的的选择上面，我们会倾向于寻找当下成熟ZK项目的生态项目或者实力强劲的学术型研究组织。比特币是点对点的电子现金支付系统，以太坊是智能合约的世界计算机，彷佛一切都那么相似，ZKP起源于支付领域的探索，正逐步朝着通用计算的领域发展。作为加密行业的用户和参与者，我们期待看到更多优秀的ZKP项目涌现，如果你有任何好的想法，也欢迎随时跟我们沟通联系。

参考链接 [https://mirror.xyz/0x8C4d5E90196325FB22Fff37C97D7984a37e51D11/dhOEzNXqotPftpjf2gh7Hz7qZwu3lQRWYmlE\_sSe7is全景式解读Web3隐私赛道现状、演变逻辑与典型玩家](https://mirror.xyz/0x8C4d5E90196325FB22Fff37C97D7984a37e51D11/dhOEzNXqotPftpjf2gh7Hz7qZwu3lQRWYmlE_sSe7is%E5%85%A8%E6%99%AF%E5%BC%8F%E8%A7%A3%E8%AF%BBWeb3%E9%9A%90%E7%A7%81%E8%B5%9B%E9%81%93%E7%8E%B0%E7%8A%B6%E3%80%81%E6%BC%94%E5%8F%98%E9%80%BB%E8%BE%91%E4%B8%8E%E5%85%B8%E5%9E%8B%E7%8E%A9%E5%AE%B6) |链捕手

[https://docs.starknet.io/docs/intro](https://docs.starknet.io/docs/intro)

[https://v2-docs.zksync.io/dev/](https://v2-docs.zksync.io/dev/)

[https://scroll.mirror.xyz/nDAbJbSIJdQIWqp9kn8J0MVS4s6pYBwHmK7keidQs-k](https://scroll.mirror.xyz/nDAbJbSIJdQIWqp9kn8J0MVS4s6pYBwHmK7keidQs-k)

[https://docs.hermez.io/zkEVM/Overview/Overview/](https://docs.hermez.io/zkEVM/Overview/Overview/)

[https://mirprotocol.org/blog/Scalability-on-Mir](https://mirprotocol.org/blog/Scalability-on-Mir)

[https://aztec-protocol.gitbook.io/zkproofs-proposal/](https://aztec-protocol.gitbook.io/zkproofs-proposal/)

[https://docsend.com/view/ntcsmt7meu84gcqk](https://docsend.com/view/ntcsmt7meu84gcqk) Zecrey: A Turn-key Solution for Cross-chain and Privacy

[https://eprint.iacr.org/2021/743.pdf](https://eprint.iacr.org/2021/743.pdf) MANTA: a Plug and Play Private DeFi Stack

[https://betterprogramming.pub/understanding-zero-knowledge-proofs-through-the-source-code-of-tornado-cash-41d335c5475f](https://betterprogramming.pub/understanding-zero-knowledge-proofs-through-the-source-code-of-tornado-cash-41d335c5475f)

[https://github.com/anoma/whitepaper/blob/main/whitepaper.pdf](https://github.com/anoma/whitepaper/blob/main/whitepaper.pdf) Anoma: a unified architecture for full-stack decentralized applications

![](https://storage.googleapis.com/papyrus_images/884867d1e2ff6045a3385bb369c1d9adf3f5c1fbaeee4d3dd35bd6a6fc1c9419.png)

ArkStream Capital是由原生加密货币人士创立的一级市场基金，集投资，战略咨询与增长为一体，致力于推动web3.0的独角兽成长们。ArkStream Capital团队来自UBS, 埃森哲，腾讯，谷歌等公司，投资项目包括AAVE, FTX, Republic, Pocket, LiveArtX 等。

Website：[https://arkstream.capital/](https://arkstream.capital/) Medium: [https://arkstreamcapital.medium.com/](https://arkstreamcapital.medium.com/) Twitter: [https://twitter.com/ark\_stream](https://twitter.com/ark_stream)

---

*Originally published on [ArkStrean Capital](https://paragraph.com/@arkstrean-capital/arkstream-capital-zk-2)*
