# ZKP

By [Untitled](https://paragraph.com/@0x28e620540c38b1235bfbd58353bab5b00eb54d1e) · 2022-04-07

---

**零知识证明（ZKP）核心原理介绍**

•ZKP分类：零知识证明（ZKP）是一类在证明人不泄露有效信息的情况下证明自己具备相应知识的证明方式，目前的主流技术路径有zk-SNARK和zk-STARK两类，且仍在不断迭代中

•zk-SNARK：zk-SNARK利用了多项式性质、椭圆曲线同态加密、全局初始可信设置等原理，具备零知识、非交互和简洁性的特点

•zk-STARK：zk-STARK采用哈希函数来隐藏信息，通过Merkle Tree来实现可信证明，无需初始可信任设置，有较好的可拓展性、透明性及抵抗量子攻击的能力

**主流ZKP技术路线对比**

•关键可比要素：验证时间、证明大小和可信设置是衡量ZKP技术路径最重要的三个因素，证明时间长短的影响相对较小（证明多是并行的：不同用户可同时分别构造自己的证明，因此相应时间敏感度不高

），而量子计算攻击抗性更多是商业噱头（我理解量子计算机威胁相对远期，且对整体区块链生态包括比特币都会有颠覆性影响，ZKP项目方选择路线时更多还是出于实用主义考虑，不会着重关注抗量子攻击能力）

![](https://storage.googleapis.com/papyrus_images/919930da79a86ab961c46bbac90e1e2380a5432a31f3627480f0a6dd5c7b7fa7.png)

•路径表现：ZKP各路径各有侧重，在时间、大小和安全性上有不同的取舍，其中zk-SNARK速度快证明小，但需要可信设置，zk-STARK无需可信设置，但速度与证明大小有一定劣势

•路径优化：不同路径均尝试改进自身劣势，但只是局部的取舍优化，不改变路线本质；现阶段zk-SNARK通过改进trusted setup过程提升了通用性和可信度，业内认为其已经不影响实际使用

“随着Plonk之类的路径出现，zk-SNARK可以使用通用初始信用设置了，初始设置的麻烦程度基本已经可以接受， 而且zk-SNARK证明大小比zk-STARK小很多，验证时间恒定，更适合用于以太坊二层扩容。”

•前景判断：发展前景上看，zk-SNARK与zk-STARK各有优劣，会在较长时间内共存，从实用主义出发对两条路径均可接受

——zk-STARK的优势在于无需初始信任设置，能对抗量子攻击，但目前量子攻击尚远，且行业进行零知识证明路径选择时不会太考虑量子攻击的问题

——zk-SNARK的优势在于生态活跃（看discord twitter相关的社群活跃度能看出来），证明大小显著更小，验证时间短

**ZKP主要应用**

•应用场景分类：ZKP在区块链领域的应用集中在隐私和zk-rollup两大方向，其他应用场景相对边缘且玩家不多

•隐私：隐私的需求开始发展，先从机构和大户入手

•Rollup：Rollup是以太坊扩容的长期解决方案之一，其中op-rollup路线存在提款期长、gas费高的劣势,大家普遍更看好zk-rollup的长期发展潜力；zk-rollup可分为通用型和专用型项目，通用型技术栈头部玩家为StarkWare和zkSync（分别由zk-STARK和zk-SNARK驱动）

---

*Originally published on [Untitled](https://paragraph.com/@0x28e620540c38b1235bfbd58353bab5b00eb54d1e/zkp)*
