# 为什么我们关心零知识证明？

By [AKLabs](https://paragraph.com/@aklabs-2) · 2023-02-17

---

为什么我们关心零知识证明？
-------------

### 简单介绍和潜在机会的概述

### 数字时代中的隐私问题

**近年来，区块链技术的去中心化、不可变、可审计和透明的特性得到广泛认可。Verum Capital 促进了区块链技术从医疗保健和制造业到银行和金融再到艺术和娱乐等各个行业的新实验。无论行业或其优先事项如何，对隐私的担忧都很普遍。当今的 Web 2.0 巨头已将隐私问题变成了数字时代的慢性病，因为他们的商业模式通常倾向于尽可能多地收集用户的数据。这些年来，因为各种各样的原因，造成了无数数据泄露的悲剧，造成了许多安全问题。**

**即使用户在意个人数据的隐私问题，但是当个人数据对于他们选择的在线服务必不可少时，他们别无选择。我们产生的数据通常会被那些中心化巨头收集并从中获取利益。2022 年 11 月，**[**谷歌同意向一个由 40 个州组成的联盟支付创纪录的 3.92 亿美元和解金**](https://www.nytimes.com/2022/11/14/technology/google-privacy-settlement.html)**，以解决即使在用户关闭位置跟踪后仍未经用户同意继续跟踪用户数据的行为。我们根本没有对个人隐私数据使用权的控制。**

**对零知识证明的兴趣日益增长**

**隐私问题意识的增强既是对零知识重新产生兴趣的原因也是其结果。区块链和零知识的交集开始颠覆隐私话题。**

**在**[**Devcon VI**](https://www.youtube.com/watch?v=hBupNf1igbY)**上，Vitalik Buterin 做出了大胆的预测：“在接下来的 10 年里，我认为重要的是要认识到 ZK-SNARKs 至少是与区块链一样重要的技术。” 显然，Vitalik 认为零知识 (ZK) 技术非常重要。更重要的是，他建议 ZK 将成为使区块链扩容到许多应用程序所需 TPS 级别（每秒数十万笔交易）的必要组成部分。根据 Vitalik 的说法，即使没有区块链，ZK-SNARKs 也可以成为社会“划时代收益”的基础，因为该技术可以做到在为人们提供隐私保障的同时提供数据的计算。**

**可能导致以下应用的出现：**

*   **向人们完全证明偿付能力的金融系统**
    
*   **可信任的匿名投票**
    
*   **大型科技公司的开源 AI 算法，以及他们实际对如何使用该算法的保证**
    

### 什么是零知识证明？

**零知识证明 (ZKP) 是一种在不暴露陈述本身的情况下证明陈述有效性的方法。“证明者”是试图去证明其声明的一方，而“验证者”负责验证该声明。ZKP 的种子是在 1980 年代由三位 MIT 研究人员（Shafi Goldwasser、Charles Rackoff 和 Silvio Micali）播下的，当时他们提出了“交互式证明系统的知识复杂性”的概念，该概念提供了当今广泛使用的 ZKP 的定义：**

**_“零知识协议是一种方法，通过这种方法，一方（证明者）可以向另一方（验证者）证明某事是真实的，除了这个特定陈述是真实的事实之外，不会透露任何信息。”_**

**根据**[**以太坊基金会的说法，**](https://ethereum.org/en/zero-knowledge-proofs/)**零知识协议必须满足以下标准：**

1.  **完整性：如果输入有效，零知识协议总是返回“真”。因此，如果底层陈述是真实的，并且证明者和验证者诚实行事，则证明可以被接受。**
    
2.  **可靠性：如果输入无效，理论上不可能欺骗零知识协议返回“真”。因此，说谎的证明者无法欺骗诚实的验证者相信无效的陈述是有效的（除非概率很小）。**
    
3.  **零知识：验证者对超出其有效性的陈述一无所知（他们对陈述“零知识”）。此要求还阻止验证者从证明中导出原始输入（语句的内容）。**
    

### ZK技术的进步

**用更专业的术语来说，零知识证明是控制一组多项式计算的算术电路，这可以代表一些程序。这些多项式描述的信息量越大，控制它们的门就越复杂。为了减少证明者暴力破解验证者的可能性，电路的可能输出范围必须非常大，在密码学中，这个概念被称为抗碰撞性。然而，问题是要获得如此大范围的输出，需要门控（计算）更多的多项式，这意味着安全性既慢又昂贵。**

**直到最近。2011 年，ZK-SNARKs 作为一种有效缩放多项式数量的解决方案出现了（因此信息能够被验证者验证）。**

**ZK 技术的进步超出了预期，现在正被应用于多种实际问题中。他们的技术分为多种方法，例如 ZK-SNARK、STARK 和 Bulletproof。**

### 区块链和零知识

**区块链提供审查抵抗和保证执行，但以可扩展性和隐私为代价。ZK 技术是一种天然的补充。例如，ZK-SNARKs 通过提供可扩展性和隐私来填补这一空白，并创造机会来创建新的应用程序和用例，否则这些是不可能的。因此，ZKP 将通过两种主要方式改变区块链空间：扩展 DLT 和实现隐私。**

### 1.可扩展性

**Web3 产品需要在速度和简单性方面与 Web2 产品竞争才能获得大规模采用。他们的用户体验需要包括高交易量，这在以太坊上目前还没有实现。可以通过将计算移出链来提高交易速度。根据**[**以太坊基金会**](https://ethereum.org/en/zero-knowledge-proofs/)**：**

**“_可验证计算是零知识技术用于改进区块链设计的应用。可验证计算允许我们将计算外包给另一个实体，同时保持可验证的结果。该实体将结果连同证明程序已正确执行的证据一起提交_。”**

**最常见的**[**链下扩展**](https://bdtechtalks.com/2019/09/16/blockchain-scaling-on-chain-vs-off-chain/#:~:text=Off%2Dchain%20scaling%20means%20creating,internet%20is%20built%20in%20layers.)**技术是 ZK rollups，在较小程度上是 validiums。ZK rollups 通过将 1000 笔链下交易编译到他们选择的 ZK-Rollup 中来服务第 2 层 (L2) 协议。**

**_“ZK-Rollup 然后可以将交易发送到以太坊进行验证。一旦证明得到确认，这些结论可能会立即投入使用，从而使以太坊能够处理更多的交易，而无需执行更多的基础层处理。”_**

**ZK rollups 使开发人员能够构建具有以太坊安全性和不变性的 dApp，具有更高的吞吐量和更快的交易速度，通过 ZK 技术将个人信息隐藏在链外的能力来保护用户，并通过批量发布交易来降低最终用户的成本。**

**示例：身份验证和桥接**

**目前，您必须先确定您的身份和访问互联网服务的权利，然后才能使用这些服务，并且经常需要提供姓名、电子邮件地址、出生日期等个人数据。为避免失去访问权限，您可能还需要记住冗长的密码。**

**但是，零知识证明可以使系统和用户的身份验证更加简单。当用户需要访问该服务时，他们可以简单地提交他们使用公共输入（例如证明其平台成员身份的信息）和私人输入（例如他们的个人信息）创建的 ZK 证明。因此，用户将获得更好的整体体验，企业也不必存储那么多的用户数据。**

**ZKP 还可用于将现有的 TradFi 数据连接到加密货币中，以帮助引导 DeFi 应用程序，例如借贷，目前主要限于超额抵押贷款。**

### 2.隐私

**信任和隐私是 web 2.0 中紧密相关的概念，因为您的身份和其他敏感数据经常被披露给服务提供商。通常，服务提供商拥有并保留这些数据。Web3 承诺完全控制您的身份和数据。区块链技术和零知识计算通过确保私人数据永远不会以未加密的形式暴露，进一步增加了隐私。**

### 示例：匿名付款

**付款提供商通常能够查看付款详细信息。金融监督有助于发现非法行为，但也会损害隐私。**

**加密货币的目的是为消费者提供一种进行匿名、点对点交易的方式。然而，大多数加密货币交易都可以在开放区块链上轻松访问。用户身份通常是假名的，可以通过简单的链上和链下数据分析连接到真实世界的身份，或者可以有目的地链接到它们（例如，通过将 ETH 地址放在 Twitter 或 GitHub 个人资料上）。**

**对于完全匿名的交易，有“隐私币”。优先考虑隐私的区块链，如 ZCash 和 Monero，隐藏交易信息，包括发送方和接收方地址、资产类型、数量和交易时间。**

**以隐私为中心的区块链网络使节点能够通过将零知识技术集成到协议中来验证交易而无需访问交易数据。**

**开放区块链上的交易也通过零知识证明匿名化。Tornado Cash 是一种去中心化的非托管工具，它使用户能够在以太坊上进行私人交易，这就是一个例子。为确保财务保密和隐藏交易细节，Tornado Cash 使用零知识证明。不幸的是，由于这些隐私工具是“选择性加入”的，因此它们与非法活动有关。为了解决这个问题，隐私的优先级最终需要高于开放区块链。**

### 示例：身份保护

**由于当前的身份管理系统，有关个人的信息处于危险之中。零知识证明可用于验证身份，同时保护私人信息。**

**在去中心化身份的背景下特别有用的是零知识证明。管理对个人标识符的访问的能力由去中心化身份提供，通常称为“自我主权身份”。零知识技术如何支持去中心化身份识别的一个很好的例子是能够在不泄露您的税号或护照信息的情况下证明您的公民身份。**

**为避免护照、出生证明、驾驶证等身份证明文件的取证困难，身份管理也可采用无密码验证方式。ZKP 协议可能会被用于匿名化个人数据以遵守 GDPR 等法律或检查欺诈预防系统中的用户凭证。**

### 示例：安全

**资产安全是区块链交易的主要关注点。不熟悉加密货币的人可能会担心我们的资产不再有保障，因为权威的角色（作为“担保人”）已经不存在了。**

**实际上，由于账本存储在众多节点上，区块链技术不仅确保我们是唯一负责我们资产的人（非托管），而且还降低了风险。此外，零知识通过以下方式提高了安全标准：**

*   **除用户外，没有其他人可以访问加密数据；**
    
*   **证明者的证伪会产生不同的最终根，验证者会拒绝；**
    
*   **由于链上数据的可用性，即使所有验证者和证明者都想作恶，账户状态也可以被逆转和更正；**
    
*   **对于零知识证明，经常使用额外的检查和强化技术，例如使用第三方监控器进行额外的验证。**
    

### 下一步是什么？

**尽管 ZKP 已经存在了几十年，但 ZK-SNARKs 直到 2011 年才出现，并且在 2014 年才应用于区块链。在过去的几年/几个月/几周内，ZK 技术已经有了无数的改进，在Elena Burger 的 A16Z 文章“**[**去中心化速度：零知识证明的进展**](https://a16z.com/2022/04/15/zero-knowledge-proofs-hardware-decentralization-innovation/)**”，我们强烈建议您了解该技术的发展历程。**

**这是零知识的早期阶段，在这个领域有许多引人入胜且有影响力的创新项目。在短短几年内，一个蓬勃发展的 ZK dApp 生态系统和支持 web3 隐私和可扩展性的 ZK 生态系统已经形成。因此，未来看起来一片光明。**

**关注AK Labs Twitter**

[https://twitter.com/0xAKLabs](https://twitter.com/0xAKLabs)

---

*Originally published on [AKLabs](https://paragraph.com/@aklabs-2/wcwO5aejphOBa7yvZR3h)*
