非交互零知识证明:Fiat-Shamir Transform

非交互证明系统

R ⊆ X × Y R \subseteq X \times Y RX×Y是一个有效关系,那么关于 R R R的非交互系统是一个算法对 ( G e n , C h e c k ) (Gen,Check) (Gen,Check),定义如下:

  1. G e n Gen Gen:一个有效的概率算法,形如 π ← R G e n ( x , y ) \pi \leftarrow_R Gen(x,y) πRGen(x,y),其中 ( x , y ) ∈ R (x,y) \in R (x,y)R π ∈ P S \pi \in PS πPS,这里的 P S PS PS证明空间(proof space)
  2. C h e c k Check Check:一个有效的确定性算法,形如 t a g ← C h e c k ( y , π ) tag \leftarrow Check(y,\pi) tagCheck(y,π),其中 t a g ∈ { A c c e p t , R e j e c t } tag \in \{Accept,Reject\} tag{Accept,Reject}。如果 t a g = A c c e p t tag = Accept tag=Accept,我们称 π \pi π y y y有效证明(a valid proof)。

对于所有的证据声明对 ( x , y ) ∈ R (x,y) \in R (x,y)R,我们要求 G e n ( x , y ) Gen(x,y) Gen(x,y)的输出 π \pi π总是 y y y的有效证明(完备的)。

Fiat-Shamir Transform

Π = ( P , V ) \Pi=(P,V) Π=(P,V)是关于关系 R ⊆ X × Y R \subseteq X \times Y RX×Y的Sigma协议,并假设会话空间是 T × C × Z T \times C \times Z T×C×Z。令 H : Y × T → C H: Y \times T \rightarrow C H:Y×TC是一个Hash函数。我们定义Fiat-Shamir non-interactive proof system是算法对 F S − Π = ( G e n , C h e c k ) FS-\Pi = (Gen,Check) FSΠ=(Gen,Check),且 P S = T × Z PS = T \times Z PS=T×Z

  1. G e n Gen Gen
    1. 输入 ( x , y ) ∈ R (x,y) \in R (x,y)R
    2. 调用 P ( x , y ) P(x,y) P(x,y),获得承诺 t ∈ T t \in T tT
    3. 计算挑战 c : = H ( y , t ) c := H(y,t) c:=H(y,t),发送给 P ( x , y ) P(x,y) P(x,y),回应 z ∈ Z z \in Z zZ
    4. 输出证明 ( t , z ) ∈ P S (t,z) \in PS (t,z)PS
  2. C h e c k Check Check
    1. 输入 ( y , ( t , z ) ) ∈ Y × P S (y,(t,z)) \in Y \times PS (y,(t,z))Y×PS
    2. 计算挑战 c ← H ( y , t ) c \leftarrow H(y,t) cH(y,t)
    3. 调用 V ( y ) V(y) V(y),判断 ( t , c , z ) (t,c,z) (t,c,z)是否是关于 y y y的可接受会话
    4. 输出 V ( y ) V(y) V(y)的返回值 t a g ∈ { A c c e p t , R e j e c t } tag \in \{Accept,Reject\} tag{Accept,Reject}

安全性

Unpredictable commitments

( P , V ) (P,V) (P,V)是是关于 R ⊆ X × Y R \subseteq X \times Y RX×Y的Sigma协议,会话空间为 T × C × Z T \times C \times Z T×C×Z。我们说 ( P , V ) (P,V) (P,V)有** δ − \delta- δunpredictable commitments**,如果对于任意的 ( x , y ) ∈ R (x,y) \in R (x,y)R t ∗ ∈ T t^* \in T tT,在 P ( x , y ) , V ( y ) P(x,y),V(y) P(x,y),V(y)之间的交互产生的会话 ( t , c , z ) (t,c,z) (t,c,z)使得 t = t ∗ t=t^* t=t的概率至多为 δ \delta δ。如果 δ \delta δ可忽略,那么称 ( P , V ) (P,V) (P,V)unpredictable commitments

Non-interactive existential soundness

攻击游戏:游戏的双方是敌手(as P r o v e r Prover Prover)和挑战者(as V e r i f i e r Verifier Verifier)。令 Φ \Phi Φ是一个关于 R ⊆ X × Y R \subseteq X \times Y RX×Y的非交互证明系统,证明空间是 P S PS PS。敌手 A A A的输出是一个声明 y ∈ Y y \in Y yY以及一个证据 π ∈ P S \pi \in PS πPS

如果 C h e c k ( y , π ) = A c c e p t Check(y,\pi) = Accept Check(y,π)=Accept,但 y ∈ L R y \in L_R yLR,我们说 A A A赢得这个游戏。 A A A优势(advantage)定义为赢的概率,记为 n i E S a d v [ A , Φ ] niESadv[A,\Phi] niESadv[A,Φ]

安全定义:我们说协议 Φ \Phi Φ是存在性可靠的(existentially sound),如果对于任意的PPT敌手 A A A n i E S a d v [ A , Φ ] niESadv[A,\Phi] niESadv[A,Φ]的测度是可忽略的。

Non-interactive zero knowledge

模拟器(simulator):假设 Φ \Phi Φ使用的Hash函数 H : U → C H: U \rightarrow C H:UC随机预言机(random oracle, RO)的方式运行,那么模拟器是一个可交互图灵机 S i m Sim Sim,可以接受如下查询

  1. unjustified proof query:形如 y ∈ Y y \in Y yY S i m Sim Sim回应 π ∈ P S \pi \in PS πPS
  2. random oracle query:形如 u ∈ U u \in U uU S i m Sim Sim回应 c ∈ C c \in C cC

攻击游戏:游戏的双方是敌手(as V e r i f i e r Verifier Verifier)和挑战者(as P r o v e r Prover Prover)。令 Φ \Phi Φ是一个关于 R ⊆ X × Y R \subseteq X \times Y RX×Y的非交互证明系统,证明空间是 P S PS PS。假设 Φ \Phi Φ使用的Hash函数 H : U → C H: U \rightarrow C H:UC以随机预言机的方式运行,模拟器为 S i m Sim Sim。敌手 A A A可以做一系列的询问,

  1. justified proof query:形如 ( x , y ) ∈ R (x,y) \in R (x,y)R,挑战者回应 π ∈ P S \pi \in PS πPS
  2. random oracle query:形如 u ∈ U u \in U uU,挑战者回应 c ∈ C c \in C cC

而挑战者有两种策略,

  1. 实验 0 0 0real world):选择随机函数 O ∈ F u n s ( U , C ) O \in Funs(U,C) OFuns(U,C),对于justified proof query调用 G e n ( x , y ) Gen(x,y) Gen(x,y),对于random oracle query调用 O ( u ) O(u) O(u)
  2. 实验 1 1 1ideal world):对于justified proof query询问 S i m Sim Sim关于 y y y的证明,对于random oracle query询问 S i m Sim Sim关于 u u u的挑战

敌手 A A A的输出取自 { 0 , 1 } \{0,1\} {0,1},令 W b W_b Wb A A A在实验 b b b中输出为 1 1 1的事件。 A A A优势(advantage)定义为两种实验的概率差,记为 n i Z K a d v ( A , Φ , S i m ) : = ∣ P r [ W 0 ] − P r [ W 1 ] ∣ niZKadv(A,\Phi,Sim):=|Pr[W_0]-Pr[W_1]| niZKadv(A,Φ,Sim):=Pr[W0]Pr[W1]

安全定义:我们说协议 Φ \Phi Φ是提供非交互零知识(non-interactive zero knowledge, niZK),如果存在有效的模拟器 S i m Sim Sim,对于任意的PPT敌手 A A A n i Z K a d v [ A , Φ , S i m ] niZKadv[A,\Phi,Sim] niZKadv[A,Φ,Sim]的值是可忽略的。

Fiat-Shamir Transform

  • 完备性:Non-interactive Proof System的基本要求。
  • 可靠性: Π \Pi Π是关于 R ⊆ X × Y R \subseteq X \times Y RX×Y的Sigma协议, H H H是Hash函数,令 F S − Π FS-\Pi FSΠ是利用 H H H从协议 Π \Pi Π中派生的Fiat-Shamir非交互证明系统。如果 π \pi πexistentially sound的,且 H H HROM,那么 F S − Π FS-\Pi FSΠnon-interactive existential sound的。
  • 零知识性: Π \Pi Π是关于 R ⊆ X × Y R \subseteq X \times Y RX×Yspecial HVZK的、unpredictable commitments的Sigma协议, H H H是Hash函数,令 F S − Π FS-\Pi FSΠ是利用 H H H从协议 Π \Pi Π中派生的Fiat-Shamir非交互证明系统。如果 H H HROM,那么 F S − Π FS-\Pi FSΠnon-interactive zero knowledge的。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值