摘要:零知识证明是一种在不暴露语句本身的情况下证明语句有效性的方法。“证明者”是试图证明声明的一方,而“验证者”负责验证声明。那么为何我们需要零知识证明呢?

本文导读,为什么我们需要零知识证明?零知识证明有什么用处?零知识证明是一种在不暴露语句本身的情况下证明语句有效性的方法。“证明者”是试图证明声明的一方,而“验证者”负责验证声明。零知识证明首次出现在1985年的一篇论文中,“交互式证明系统的知识复杂性”它提供了当今广泛使用的零知识证明的定义:零知识协议是一种方法,通过该方法,一方(证明者)可以向另一方(验证者)证明某事是真的,除了该特定陈述为真的事实之外,不透露任何信息。那么为何我们需要零知识证明呢?下面一起来看看。


图片[1] - 为什么我们需要零知识证明?零知识证明有什么用处?


为什么我们需要零知识证明?

零知识证明代表了应用密码学的一个突破,因为它们有望提高个人信息的安全性。考虑如何向另一方(如服务提供商)证明索赔(如“我是X国公民”)。你需要提供“证据”来支持你的主张,比如国家护照或驾照。

但是这种方法也有问题,主要是缺乏隐私。与第三方服务共享的个人身份信息(PII)存储在中央数据库中,容易受到黑客攻击。随着身份盗窃成为一个关键问题,人们呼吁采取更多的隐私保护手段来共享敏感信息。

零知识证明解决了这个问题,因为它不需要揭示信息来证明声明的有效性。零知识协议使用语句(称为“见证”)作为输入来生成其有效性的简洁证明。这种证明提供了强有力的保证,即声明是真实的,而不会暴露创建声明时使用的信息。

回到我们之前的例子,你需要证明你的公民权的唯一证据是零知识证明。验证者只需检查证明的某些属性是否成立,就可以确信基础陈述也成立。


零知识证明有什么用处?

匿名支付

信用卡支付通常对多方可见,包括支付提供商、银行和其他相关方(例如,政府机构)。虽然金融监控有利于识别非法活动,但它也损害了普通公民的隐私。

加密货币旨在为用户提供一种私人点对点交易的方式。但大多数加密货币交易都可以在公共区块链上公开看到。用户身份通常是假名,或者被故意链接到真实世界的身份(例如,通过在Twitter或GitHub个人资料中包含ETH地址),或者可以使用基本的链上和链下数据分析与真实世界的身份相关联。

有专门为完全匿名交易设计的“隐私币”。注重隐私的区块链,如ZCash和Monero,屏蔽交易细节,包括发送者/接收者地址、资产类型、数量和交易时间表。

通过在协议中加入零知识技术,注重隐私的区块链网络允许节点在不需要访问交易数据的情况下验证交易。

零知识证明也被应用于区块链上的匿名交易。一个例子是Tornado Cash,这是一种分散的非托管服务,允许用户在以太坊上进行私人交易。Tornado Cash使用零知识证明来模糊交易细节,并保证财务隐私。不幸的是,因为这些是“选择加入”隐私工具,它们与非法活动相关联。为了克服这一点,隐私最终必须成为公共区块链的默认设置。


身份保护

当前的身份管理系统将个人信息置于风险之中。零知识证明可以帮助个人验证身份,同时保护敏感细节。

零知识证明在以下情况下特别有用分散身份。分散身份(也称为“自我主权身份”)使个人能够控制对个人标识符的访问。证明你的公民身份而不暴露你的税号或护照细节是零知识技术如何实现去中心化身份的一个很好的例子。

【以太币】以太币eth今日行情实时动态_以太币历史最高价格


证明

使用在线服务需要证明您的身份和访问这些平台的权利。这通常需要提供个人信息,如姓名、电子邮件地址、出生日期等。您可能还需要记住长密码,否则可能会失去访问权限。

然而,零知识证明可以简化平台和用户的认证。一旦使用公共输入(例如,证明用户的平台成员资格的数据)和私有输入(例如,用户的详细资料)生成了zk证明,当用户需要访问服务时,用户可以简单地出示它来认证他们的身份。这改善了用户体验,并使组织不必存储大量用户信息。


可验证的计算

可验证计算是零知识技术改进区块链设计的另一个应用。可验证计算允许我们将计算外包给另一个实体,同时保持可验证的结果。该实体提交结果以及验证程序被正确执行的证明。

可验证计算对于在不降低安全性的情况下提高区块链的处理速度至关重要。要理解这一点,需要了解以太坊扩展解决方案的差异。

链上扩展解决方案如分片,需要对区块链的基础层进行大量的修改。然而,这种方法非常复杂,实现中的错误会破坏以太坊的安全模型。

离线扩展解决方案不需要重新设计核心以太坊协议。相反,他们依靠外包计算模型来提高以太坊基础层的吞吐量。


下面是它在实践中的工作原理:

以太坊不是处理每一个事务,而是将执行卸载到一个单独的链上。

处理完事务后,另一个链返回应用于以太坊状态的结果。

这里的好处是以太坊不需要做任何执行,只需要将外包计算的结果应用到它的状态。这减少了网络拥塞,也提高了事务速度(离线协议为更快的执行进行了优化)。

该链需要一种方法来验证链外事务,而不需要重新执行它们,否则链外执行的价值就失去了。

这就是可验证计算发挥作用的地方。当节点在以太坊外执行交易时,提交一个零知识证明,证明链外执行的正确性。这种证明(称为有效性证明)保证交易是有效的,允许以太坊将结果应用于其状态——无需等待任何人对此提出异议。

零知识汇总和验证是两个离线伸缩解决方案,使用有效性证明来提供安全的可伸缩性。这些协议离线执行数千个交易,并提交证据在以太坊上验证。一旦证明被验证,这些结果可以立即应用,允许以太坊处理更多的交易,而不增加基础层的计算。


总结

零知识证明是一种在不暴露语句本身的情况下证明语句有效性的方法,零知识证明代表了应用密码学的一个突破,因为它们有望提高个人信息的安全性。零知识证明可用于匿名支付,可以帮助个人验证身份,同时保护敏感细节。使用在线服务需要证明您的身份和访问这些平台的权利,而且可验证计算是零知识技术改进区块链设计的另一个应用。

在哪里可以通过私人交易购买加密货币资产呢?