重新解读零知识:为什么 99% 的 ZK 都不是真正的零知识

linx阅读:2024-09-20 11:52:08

这是对零知识技术**的误解之一。简而言之,大多数所谓的零知识(ZK)技术并不提供真正的隐私保护。那么,为什么会这样?

术语解析

这些术语究竟是什么意思?

根据**百科,“零知识证明”需要满足以下三个属性:

  • 完整性:如果陈述为真,诚实的验证者(即正确遵循协议的验证者)将被诚实的证明者确信这一事实。
  • 可靠性:如果陈述是错误的,则**作弊证明者都无法说服诚实的验证者该陈述是正确的,除非有一些小概率。
  • 零知识:如果陈述为真,验证者除了该陈述为真这一事实之外,不会获悉**其他信息。

让我强调一下,“零知识”意味着接收者获得原始数据的零(额外)知识。

为什么称为ZK却不是真正的零知识?

要实现“零知识”属性,协议必须提供完整的ZK隐私。除了证明者拥有数据之外,证明的接收者不得了解**原始数据。那么,如果零知识协议连ZK特性都不满足,又如何利用ZK技术呢?

这就是问题的关键,主要是因为“零知识”一词具有混淆性。能够实现零知识证明的技术称为零知识技术,但零知识技术也支持隐私之外的其他用例。一个重要的用例是简洁性:为大量数据生成一个小证明。因此,并非所有零知识用例都提供零知识属性,但它们仍然利用零知识技术来实现其目标。

快速了解:ZK Rollups

我们以ZK Rollups为例来说明ZK系统。ZK Rollup是一种扩展区块链功能的方法,将L2区块链连接到L1区块链。ZK Rollup中,定序器收集L2交易并生成证明,然后将证明发送到L1进行验证。一旦验证通过,交易就被视为在L2上完成。这使L2能够“继承”L1的安全性。

简洁性的作用

大多数利用零知识技术的项目只关心简洁性部分。事实上,约99%的ZK项目依赖于简洁性。尽管技术还可以提供隐私,但这一功能尚未得到广泛利用。简洁性允许ZK Rollups将大量交易“Rollup”到单个证明中,但这并不意味着隐私:证明会泄露有关原始交易的数据。

为什么不添加隐私?

在证明中添加隐私通常不是技术上困难的任务。它需要在证明过程中添加一些随机性来屏蔽输入。但困难在于系统架构。ZK证明并不是独立使用的,它们是更大系统的一部分,例如ZK Rollup。

让我们考虑一下如果在ZK Rollup中添加隐私会发生什么。L2的所有交易首先发送到定序器,定序器为它们生成证明。这要求用户将私人数据发送给定序器,违背了ZK隐私的目的。

如何解决?

要解决这个问题,需要在用户计算机上生成证明,以保护隐私。这引发了一系列问题,如定序器如何知道事务的作用和交易的有效性,以及如何解决冲突。这些问题并不小,有一些区块链(如Mina、Aztec、Aleo、Miden)正在努力实现真正的ZK隐私,但它们的架构与常规ZK Rollup有很大不同,需要多年的研究和开发。

结论

大多数ZK项目只关注简洁性,而不提供真正的ZK隐私。要实现ZK隐私,需要从一开始就考虑到隐私,而不是事后添加。

本文地址:https://licai.bestwheel.com.cn/qk/33688.html

文章标题:重新解读零知识:为什么 99% 的 ZK 都不是真正的零知识

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。