欧易OKX矿池接入教程
零知识证明有什么样的风险?零知识系统有哪些应用?
零知识证明虽然功能强大,并且在不断迭代中,但也存在以下不足:
并非 100% 保证信息真实:即使证明者在说谎时通过证明的概率非常低,ZKP 也不能保证声明 100%有效。验证人说谎的概率在每一次迭代中都会减少,但它永远不可能达到零。因此,零知识证明并不是数学意义上的、严格遵循数理逻辑的证明,它是概率性的,而非确定性的。
计算强度:使用的算法计算强度大,因为它们需要证明者和验证者之间进行许多互动(在交互式ZKP 中),或者需要大量的计算能力(在非交互式 ZKP 中)。这使得 ZKP 不适合于低性能设备或移动设备。
06.
零知识系统的应用
我们从一个简单的例子开始,论述 ZKP 为何有价值以及它们如何工作,然后再转向一些更复杂的案例。
一个简单的例子:租公寓
有一对夫妻想要租一间公寓,按照要求房产经纪人要对租客进行信用检查,需要租客提供银行账单、收入证明以及社保号码等信息。
但因为租客才刚刚认识房屋中介 ,并不认为对方会妥善会保护自己的隐私。自然不想让房屋中介和其团队看到自己详细的财务状况,尤其是租客也无法确定房屋中介的信息系统是否足够安全,从而确保黑客不会获取这些数据。
这个时候就可以引入零知识的思想来解决上述问题。
假设公寓每月的租金为 1000 美元,根据中介要求,当租客需要证明自己的收入至少是月租金的40 倍才有资格租住这套公寓。以下是租客接受测试的方式:
中介设置了 10 个信箱,分别标记了从 1 万美元到 10 万美元的 10 个整数,每个信箱上都有一个钥匙和一个插槽。中介将这 10 个信箱放进房间的同时,毁掉了其中 9 个信箱的钥匙,然后只拿走了标有 4 万美元信箱的钥匙。
中介离开房间后,租客带着 10 张纸走进了房间,并根据每个信箱的数字是多于还是少于自己的实际资产,在纸上分别标记“+”或“-”,并将纸条放置在对应的信箱中。假设租客的年收入为 7.5 万美元,所以他们在整个过程中在“+”的单据放在前面 7 个信息中,将“-”放入最后三个信箱里。
租客离开房间后, 中介回到房间,并用手中的钥匙打开了 4 万美元对应的信箱,在箱子里找到一张标记有 “+” 的纸条,中介因此能够确认租客的收入符合标准、有资格租到这套公寓,与此同时,他并不知道对方的实际经济能力。
更复杂的例子
区块链隐私
在加密货币的世界中,上述互动方式已经成为可能。今天有一些项目致力于使用 ZKP 来证明交易者的信用评分。还有一些项目正在为面向 ZKP 的资产和交易建立新的、通用的平台。还有一些人仍然专注于将基于 ZKP 的隐私带到以太坊。以太坊创始人 Vitalik 认为:“零知识证明是最强大的隐私解决方案,尽管技术实现难度最高,但在保护以太坊网络的隐私性和安全性上,效果最佳。”
比特币和以太坊等公共区块链的透明度使交易能够公开验证。然而,它也意味着几乎没有隐私。零知识证明可以为公共区块链带来更多隐私,例如,加密货币 Zcash 是 zk-SNARKs 的第一个项目实践,这是一种非交互式零知识证明形式,可以为数字货币提供最强的隐私性。
这些创新有望向那些一直以来在加密世界之外的用户开放加密货币及其应用程序。今天,企业并不会使用稳定币来运行国际工资单,尽管它们比电汇更有效率;在去中心化金融协议利润丰厚且收益高的市场中,许多金融机构也不会来寻求 alpha 收益。造成这种情况的一个关键原因是,像这样的公司不能在互联网上四处散布他们的财务信息和交易历史,他们不得不担心数据隐私。
那么为什么这些企业不使用 Zcash 之类的产品呢?或者面向隐私的稳定币?因为,这些企业除了担心数据安全之外,还要担心合规性。他们不能使用一直处于隐私范围的东西,因为他们没有审计报告来证明他们正在向已知的交易对手付款,而不是受制裁的行为者或恐怖组织。
如今正在开发的 ZKP 最酷的地方在于,它们不仅具备隐私功能,而且还支持信息的选择性披露。因此,你现在可以想象一个稳定币产品,它可以同时满足公司的数据和合规性需求:发行人可以拥有完整的审计追踪并能够验证资产持有人的合规身份,但在其他大多数人看来,他们在匿名账户之间完全私密地转移资金。
区块链扩容
除了隐私和选择性披露问题的应用,零知识证明系统也被用于区块链扩容。
区块链扩容的一个主要问题是,随着时间的推移,区块链存储的数据量变得巨大。区块链是一种可公开验证的账本,记录了加密货币所发生的一切。因此,如果你想验证账本,必须将计算机同步到整个账本,一直追溯第一笔交易。对于许多普通用户而言,实际执行此操作的内存和带宽要求高得令人望而却步。
区块链利用 ZKP 来解决这个问题。整个交易历史可以压缩到一个单一的证明,只需要验证证明,而不需要验证整个账本。该证明的尺寸不会超过几条推文,任何人的硬件设备都可以完成。
ZKP 也是用来扩容以太坊的重要工具。
区块链扩容技术提供商 StarkWare 团队的 co-founder Eli Ben Sasson 曾任以色列理工学院的资深教授,也曾是 Zcash 的创始科学家。他发明了基于 zk STARK(一种非交互式证明)的 zkRollup 技术,以解决以太坊的扩容问题,提高以太坊的吞吐量并降低了交易费用。zkRollups 减轻了必须直接存在于区块链账本上的内容的负担,用更便宜、更轻量级的数据证明取代了以前需要上链的所有数据。
虽然围绕 ZKP 的许多创新都是在加密货币领域开创的,并且用于这项创新的大部分资金都来自于此,但其影响和应用范围更广。
非区块链应用
云计算:零知识证明(不涉及加密货币)可以使云基础基础设施变得更加安全。用户可以享受云计算服务,而无需将敏感的消费者数据暴露给云提供商。许多金融服务、政府等机构尤其厌恶数据安全风险,因而这些行业在采用托管云基础设施方面一直是出了名的落后者,以至于无法获得更低的成本和更便捷的用户体验。如果零知识的应用可以使这些行业开始与云提供商合作,而无需信任这些提供商,将会带来一场巨大的变革。
金融:2017 年客户遍及 40 多个国家的 ING 银行(International Nederlanden Group,亦名荷兰国际集团),通过 ZKP 的方式来让客户证明他们某一项指标满足要求。例如,抵押贷款申请人可以证明其收入在满足要求标准的范围区间,而无需透露其确切的工资。一年后,ING 又将该隐私解决方案推进一步,不仅可以验证数字,还可以验证其他类型的信息,例如,银行可以验证一个新客户是否居住在欧盟国家,而客户无需透露自己具体居住的国家。
线上投票:线上投票必须满足一系列要求,才能实现与传统纸质投票相同或更高等级的安全性。这些要求主要来自于四个方面:(投票人经过)身份认证、诚实性、隐私性和可验证性。ZKP 允许选民匿名投票,以这种方式可以证明该过程是正确的,验证他们的投票是否包含在最终计票中,并确保在计票过程中没有产生对选票的操纵。
机器学习:在训练一个机器学习模型的过程中,除了提供大量的数据,还要回答“我的模型输出的结果是可信的吗?”这一问题。最简单的方法是记录整个计算过程、并进行“倒算推演”的反向验证。虽然理论上可行,但实际中这类验证过程不仅工作量庞大,还会使得这个模型在使用中的可迁移性减弱,因为一旦涉及到新的数据输入都必须进行一次这个流程,并不利于机器学习的大规模普及和应用,并且也存在数据可数据和算法模型泄漏的风险。得克萨斯州立大学的张玉鹏博士在去年的一篇论文中指出,零知识证明也可以被引入到机器学习模型的训练过程中,可以在保护数据库数据和算法模型的基础上来更快地验证某次输出的结果是否准确、可信。
核裁军:2016 年在美国能源部(DOE)普林斯顿等离子体物理实验室(PPPL)进行了第一次物理零知识证明的实验演示,该实验允许核查人员确认一个物体是否是核武器,而无需记录、分享或披露内部机密工作。
......
这些只是无数可能性中的几个例子。零知识证明前景可期,但有时候短期内可能现实远远不及预期,毕竟有严峻的技术、经济和社会挑战需要解决,任重而道远。