Web3 中的隐私很复杂,但归根究底是透明度和隐私之间的权衡,两者都不可或缺。而恰恰零知识证明,可以克服透明度和隐私之间的零和困境。
原文标题:《What is Privacy in Web3?》
撰文:Web3.com Ventures
编译:ChinaDeFi
Web3 中,最令人期待的是它的隐私性,其实隐私也是加密货币的最大卖点之一,它的地位和去中心化,匿名和无需信任是平齐的。但同时隐私也是该领域的最大痛点之一,比如用户依旧需要忍受 KYC,以及忍受易于被追踪的 PII 等。
对于隐私一直都有一个观点,很多人将加密的“隐私”视为是很多犯罪活动的借口和窗口。
Web3 的隐私是一个包罗万象的概念,所以一揽子的去判断它的好坏是比较困难并且没有实际意义的,我们需要把问题分解成更小的部分。
在本篇文章中,首先谈论的是网络层隐私、协议层隐私和用户层隐私,然后再探讨零知识证明等技术解决方案在 Web3 隐私领域怎样发挥作用。
隐私的第一个也是最古老的概念就是在网络层面。
网络层隐私,是通过区块链的底层共识机制和网络级设计选择来保证区块链网络上加密货币交易的隐私。我们也称它们为「隐私币」。
此类隐私概念的根源可以追溯到比特币协议,以及将“钱包地址”匿名化为 160 位加密哈希的想法。
Monero,是 2014 年创建的隐私优先区块链之一。Monero 主要是将用户钱包和交易隐藏在名为「环签名」的群中,给定“环”内的用户可以访问某个群签名的权利,并使用该群签名来签署交易。也就是说,在 Monero 网络上完成的交易,人们知道该笔交易来自哪个群组,但并不知道是哪个具体用户完成了交易。人们围在一起,为彼此提供了隐私。
另一个解决这个问题的项目是 ZCash,它是 zk 的零知识证明形式的早期实践者,这种形式是在最近得到了广泛的关注和普及。
零知识证明的基本概念就是,在不透露任何信息的情况下证明一件事情的真实性。
就 ZCash 而言,虽然默认情况下交易是透明的,但用户可以选择使用这些「零知识证明」来创建私人交易。当用户想要发送交易时,可以创建一个包含发送者的公共地址,接收者的公共地址和交易金额的交易消息,然后将其转换为 zk-SNARK 证明,而且这个证明是唯一发送到网络的东西,该 zk-SNARK 中包含了证明交易有效性的所有必要消息,但不会透露交易本身的任何细节。
它们两者的设计和实现都存在差异点,但是它们都保证了交易能在区块链级别上的隐私,但这种隐私也变成了一些犯罪活动的温床,渐渐的门罗币变成了非法金融活动的代名词。
这也是网络层隐私的最大缺点,交易的透明度与交易隐私之间存在零和权衡,简单地说,就是缺乏透明度。
协议层隐私,就是在运行着的区块链上的协议或应用程序上处理私人交易,而不是将私人交易硬编码到区块链网络的共识层。
由于像比特币等早期区块链网络的可编程性有限,因此构建“协议层隐私”非常困难,但随着以太坊的出现和「智能合约」的兴起,隐私保护协议找到了一条全新的途径。
最著名的例子莫过于 Tornado Cash,它是以太坊上的一个去中心化应用程序,它会将交易“混合”到一个池中以保证交易隐私。
Tornado Cash 协议大致分为三个主要步骤:
1. 存款:用户将资金发送到 Tornado Cash 智能合约。这样会启动一个带有随机生成的”匿名集“私人交易,匿名集是由同时进行交易的一组用户组成的。
2. 混合:Tornado Cash 将存入的资金与匿名集中的用户的资金混合在一起,这样会难以追踪原始发送者和接收者,此过程被称为是“混合”。
3. 提现:资金进行混合后,用户可以将资金提现到自己选择的新地址,切断原地址和接收地址之间的联系。用户可以通过直接从“新”地址向收款人发送资金。
2022 年 8 月,Tornado Cash 受到了美国政府的制裁,使得美国用户,公司和网络都无法使用它。USDC 的发行人 Circle,冻结了价值超过 75000 美元的与 Tornado Cash 地址相关的资金,GitHub 删除了 Tornado Cash 的开发者账户。
很多人觉得 Tornado Cash 的绝大多数的用户都是正常合法的使用,不能因为少数的不良使用者而一棒子打死。因为 Tornado Cash 是协议层隐私,不是网络层隐私,使得以太坊网络没有受到影响。
Aztec Network 开创了另一种协议层隐私方法,其侧重于 Rollup,以此来保护用户资金并支持私人交易。Aztec 的主要产品是 zk.money,该产品使用第 2 层深度递归零知识证明来实现扩展和隐私。其会有两个 ZKP,第一个 ZKP 证明交易的正确性,同时保证没有信息被泄漏。第二个 ZKP 用于 Rollup 本身,以便将批量交易的计算捆绑在一起,并确保所有这些都正确执行。
虽然基于 Rollup 的“协议层隐私”解决方案仍处于早期阶段,但它们代表了协议层隐私解决方案的下一步发展,因为基于 Rollup 的解决方案可以增强可扩展性。
Web3 隐私的第三种,也是最近兴起的一种。这种方法保证的不是用户交易的数据,而是保证单个用户的数据。
用户层隐私的关键点在于,通过关注网络本身的个人用户,项目会对用户进行有针对性的过滤,良性用户和他的地址可以自由地与区块链网络进行私密交互,而不良用户则可以被很快的过滤掉。
用户层隐私的核心见解是分离和重新思考用户自身与其链上钱包地址之间的关系。还有一个比较重要的一点是,用户到链的一对多映射:用户通常会控制多个钱包地址,这也被称为是链上身份碎片化。用户层隐私的关键是找到一种将用户的个人身份信息映射到所有这些碎片化的链上身份的安全方法。
Notebook Labs 就是这样的项目,它寻求使用零知识证明将分散的身份与用户的 pii 联系起来,同时提供以下保证:
该项目的两个核心原则,第一是重新思考大量分散的链上身份与现实世界人类用户之间关系的重要性,以及零知识证明在聚合和连接所有这些身份方面发挥的重要作用。
用户层隐私的另一个新兴解决方案是隐形钱包。隐私钱包的想法是基于链上身份碎片化的事实。隐形钱包是通过寻找一种算法来实现,该算法可以为用户的交易快速自动生成「一次性钱包」。
隐形钱包的主要优势是它不仅可以为主流代币的转账保证隐私,还可以保障小众代币和 NFT 的隐私。但这个想法还在讨论阶段,实施效果和法律方面都还有待观察。
Web3 中的隐私很复杂,但归根究底是透明度和隐私之间的权衡,两者都不可或缺。而恰恰零知识证明,可以克服透明度和隐私之间的零和困境。
很多时候,零知识证明被吹捧为解决任何隐私问题的万能药,但我们也应该知道其有几个比较严重的弱点。
ZKP 通常是需要高度专业化的电路,用于证明以特定方式构造的特定信息。但通常它们缺乏可扩展性和兼容性。其次,它们的创建、运行和维护成本都非常高,与等效的非 ZKP 程序相比,它们需要更多的计算能力。所以我们也不能神化 ZKP。
从根本上说,Web3 中的隐私不仅仅是一个工程问题,而是第一原则。 Web3 中的隐私应该是什么样子的呢?这是我们需要决定的最紧迫的问题。
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。