零知识意义(也称为零知识证明)是一种发生在证明者和验证者之间的验证方法。在零知识证明系统中,证明者能够向验证者证明他们拥有特定信息(例如数学方程的解)的知识,而无需透露信息本身。现代密码学家可以使用这些证明系统来提供更高级别的隐私和安全性。这种证明通常被称为 ZK 协议。
零知识证明的想法最初起源于 1985 年麻省理工学院的一篇论文,由 Shafi Goldwasser 和 Silvio Micali 撰写。他们证明了可以在不披露数字或任何其他信息的情况下证明数字的某些属性。本文还得出结论,证明者和验证者之间的交互可以减少证明给定定理所需的信息量。
为了使 ZK 证明合法,有两个基本要求,即完整性和稳健性必须满足。完整性是指证明者以高度可能的准确性证明对相关信息的了解的能力。为了使证明可靠,验证者必须能够可靠地确定证明者是否实际拥有信息。最后,为了真正做到零知识,证明必须做到完整性和可靠性,证明者和验证者之间不会泄露任何信息。
零知识证明主要用于以下应用:隐私和安全至关重要。身份验证系统可以结合 ZK 证明来验证凭据或身份,而无需直接透露它们。举个简单的例子,它可以用来验证一个人是否拥有计算机系统的密码,而无需暴露密码。
区块链中零知识证明的一个众所周知的用途是零知识简洁的非交互式知识论证(zk-SNARK)。因此,Zcash 等注重隐私的加密货币能够为其用户提供具有更高隐私级别的区块链交易。自 2017 年拜占庭更新以来,以太坊也在使用 zk-SNARK 证明。
总之,零知识意义是一种发生在证明者和验证者之间的验证方法,这种方法提供了更高的级别隐私和安全。




















