前言
前面几篇博客,讲了一大堆有的没的,主不过主要都是一些零散的基础的知识
接下来打算慢慢进入零知识(终于要写到了,负基础学这玩意补了太多前置知识)
零知识分类
主要分为三类
- 完备零知识(Perfect Zero Knowledge,PZK)
- 计算零知识(Computation Zero Knowledge,CZK)
- 统计零知识(Statistics Zero Knowledge,SZK)
完备零知识
令$(P,V)$为某个语言L的交互式证明系统,若对于任意的PPT交互机V^*^,都存在一个PPT算法S,使得
$$ \forall x \in L,S(x) ≌ (P,V^*)(x) $$
则称$(P,V)$是完备零知识的,此时S称为V^*^与P交互的完备模拟器
两个分布不可区分
计算零知识
令$(P,V)$为某个语言L的交互式证明系统,若对于任意的PPT交互机V^*^,都存在一个PPT算法S,使得
$$ \forall x \in L,S(x,z) ≌_c (P,V^*(z))(x) $$
则称$(P,V)$是计算零知识的,此时S称为V^*^与P交互的模拟器
也就是两个分布在计算上不可区分
统计零知识
又称为几乎完备零知识对于两个分布,其统计差别是可以忽略不计的
后记
这篇博客好像全是散的概念,没有什么总结或者结论,单纯的介绍概念,也没有证明(因为有些证明我确实看不懂)
不过有一些值得注意的概念,如果说P==NP,那么对于所有NP中的语言L而言,都可以用PZK来证明
参考文章
$[1]$ 零知识证明(六):不可区分性与单向函数 - Snowolf's Island (snowolf0620.xyz)
$[2]$ (英)Wenbo Mao 著;王继林,伍前红等译。现代密码学理论与实践 $[M]$. 北京:电子工业出版社.2004.
$[3]$ (以)Odeb Goldreich 著;温巧燕,杨义先译。密码学基础 $[M]$. 北京:人民邮电出版社.2003.
$[4]$ The 9th BIU Winter School on Cryptography | BIU Cyber Center