Investor's wiki

零知识证明

零知识证明

零知识证明,有时也称为 ZK 协议,是一种发生在证明者和验证者之间的验证方法。在零知识证明系统中,证明者能够向验证者证明他们拥有特定信息(例如数学方程的解)的知识,而无需透露信息本身。现代密码学家可以使用这些证明系统来提供更高级别的隐私和安全性。

1985 年麻省理工学院的一篇论文首次描述了零知识证明的概念,该论文由 Shafi Goldwasser 和 Silvio Micali 发表。他们证明了可以在不披露数字或任何其他信息的情况下证明数字的某些属性。本文还介绍了证明者和验证者之间的交互可以减少证明给定定理所需的信息量的数学意义重大发现。

ZK 证明必须满足两个基本要求,即完整性和可靠性。完整性是指证明者以高度可能的准确性证明对相关信息的了解的能力。为了使证明可靠,验证者必须能够可靠地确定证明者是否实际拥有信息。最后,为了成为真正的零知识,证明必须在证明者和验证者之间永远不会传递相关信息的情况下实现完整性和健全性。

零知识证明主要用于隐私和安全至关重要的应用程序。例如,身份验证系统可以使用 ZK 证明来验证凭证或身份,而无需直接泄露它们。举个简单的例子,它可以用来验证一个人是否拥有计算机系统的密码,而无需透露密码是什么。

在加密货币和区块链技术的世界中可以找到零知识证明的一个突出的现实世界用例。使用一种称为零知识简洁非交互式知识论证 (zk-SNARK) 的证明, Zcash等注重隐私的加密货币能够为其用户提供具有更高隐私级别的区块链交易。自 2017 年拜占庭更新以来,以太坊也在使用 zk-SNARK 证明。