案例库 · 研发与科研 · 技术决策 · 1985–1989
零知识证明:不泄露秘密,也能让人信服
Goldwasser、Micali 和 Rackoff 证明,你可以让人相信某个论断是真的,同时除了这个真值之外不泄漏任何其他信息。
麻省理工学院
解法
1985年,Shafi Goldwasser、Silvio Micali 和 Charles Rackoff 提出了交互式证明系统,并定义了其知识复杂性。核心问题是:验证者从证明中除了知道论断为真之外,还能学到多少?
证明你知道某事的最直接方式就是把它说出来——但那等于交出了秘密。另一种简单做法是让可信第三方为你作证,那只是把问题移到了别处。GMR 提出的方案是让证明者通过对话说服验证者,而验证者看到的整个过程,可以由一个模拟器在不知道秘密的情况下完整重现。
因为这个模拟器存在,验证者在数学上除了论断的真实性之外什么也学不到。1985年的 STOC 论文后来修订,发表在 1989年2月的《SIAM 计算杂志》上,成为经典。
生效的原因
- 模拟器表明,验证者除了论断为真以外什么也学不到
- 随机挑战让虚假证明无法通过
- 知识复杂性统一了关于证明和保密的思路
- 这个方法既适用于数论问题,也适用于图论问题
取得的成效让人信服,却不泄露额外信息神来之笔
可借鉴之处
证明可以在不交出秘密的情况下传递信心。先明确对方可能学到什么,然后证明协议最多只让学到这些:一个模糊的承诺,变成可检验的性质。
后续进展
零知识证明成长为现代密码学和复杂性理论的基石,正如 Goldreich 的综述《零知识:发明二十年之后》所记录。几十年后,同样的理念支撑了用于隐私区块链和可验证计算的 zk-SNARK。
资料来源
- The Knowledge Complexity of Interactive Proof-Systems
- Zero-Knowledge twenty years after its invention
发现哪里写错了?告诉我们。