关于zero knowledge proof形式化定义的疑问

首先,存在这样的M使
关于zero knowledge proof形式化定义的疑问
【关于zero knowledge proof形式化定义的疑问】 因为如果P是honest prover的话,transcript本身就是个对于x有效的proof. M直接照抄就好。
我想,题主自己的想做的定义与原本的定义的关系,就和CDH和DDH之间的关系一样。
考虑这个事件:
关于zero knowledge proof形式化定义的疑问
这个意思应该是说让M从x及公共信息z中,直接产生一个对任意输入x的正确proof。
如果这样的M存在,则M自己就可以充当原始定义中的simulator。
反之,如果M只能区分两个ensemble,则无法保证一定可以通过这样的M,制造出一个多项式时间的M‘, 使M’能造出正确proof.
题主的自己的回答中有一个问题,就是第三行对事件
关于zero knowledge proof形式化定义的疑问
进行的概率判断。
现在唯一已知的是原始定义成立。
令D为针对关于zero knowledge proof形式化定义的疑问
关于zero knowledge proof形式化定义的疑问
的一个distinguisher. D用自己的challenge text E 作为参数调用M
由于D并不知道{proof(x)}以及certificate, (因为若D知道{proof(x)},且此集合大小为poly(n),则D可以在{proof(x)}中查找E,找到了就当E是View,找不到就当E是S(x,z))
此外,从已知条件也没法说明D有一个Vrfy-Oracle,使得对于所有属于L的x,Pr = 1-negl(n).
所以D无法在pt时间内判断M(E) = proof(x)是否成立,也就是说,D无法将M的回答有效转化为自己的输出。这样,也就没办法从关于zero knowledge proof形式化定义的疑问
出发,用reduction确定关于zero knowledge proof形式化定义的疑问
的范围
=============题目更新之后的回答===========================
回顾一下ZK的Intuition:
“不泄露知识”是一个IPS中,P应该具有的性质,其意义是:
无论在于P交互之前还是之后,V能计算的信息不变。
即,反过来说,如果信息y是P的输出,则y也一定可以在V与P交互之前算出来。
这个衍生出一个decisional的定义。
具体来说,用分布、概率来刻画,就是原始定义中,以下两个随机变量:
1) P的应答,V的random tape
2) 模拟器S输出的伪应答和伪random tape
所对应的分布是很难区分的。
如果题主想给computatioanal ZK做一个constructional定义,那么需要刻画下面这个性质:
关于zero knowledge proof形式化定义的疑问
用文字描述,就是“如果信息y是P的输出,则y也一定可以在V与P交互之前(即在M知道x但不知道secret的情况下)算出来。”
这个明显会比decisional的定义强,且不一定好实现。
对定义2的分析,考虑事件
关于zero knowledge proof形式化定义的疑问


推荐阅读