


































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Zero knowledge proofs, specifically focusing on interactive proof systems and the graph isomorphism problem. It includes an illustration of the concept using a cave door example, a protocol for graph nonisomorphism, and a discussion on formalizing zero knowledge proofs. The document also touches upon the quadratic residue problem and its relation to the blum-blum-shub generator.
Typology: Study notes
1 / 42
This page cannot be seen from the preview
Don't miss anything!



































This is based on Chapter 12 of Trappe and Washington & Chapters 12 and 13 of “Cryptography: Theory & Practice/1e” by D. Stinson
1-1, onto
1-1, onto
@@ @@ @
Same set up as IP. But Pat does not want to reveal any details of the proof.
A Perfect Zero-Knowledge Proof for Graph Isomorphism.
Input G 1 = ({ 1 ,... , n }, E 1 ) and G 2 = ({ 1 ,... , n }, E 2 ). Pat claims G 1 ∼= G 2 If correct, let σ : G 1 ∼= G 2
Repeat n times Pat chooses a random permutation π of { 1 ,... , n } and Computes H = π(G 1 ) and sends H to Vanna. Vanna chooses i
ran ∈ { 1 , 2 } and sends i to Pat. Pat If i = 1 then Pat sets ρ : = π So H = ρ(G 1 ). else Pat sets ρ : = π ◦ σ So H = ρ(G 2 ). Pat sends ρ to Vanna. Vanna checks that H = ρ(Gi). If not, REJECT.
End repeat
Vanna ACCEPTS Completeness, Soundness, ZK: On board
Transcript:
I (G 1 , G 2 ) I all messages between Pat and Vanna I Vanna’s random numbers T = [(G 1 , G 2 ), (H 1 , i 1 , ρ 1 ),... , (Hn, in, ρn)]
A forgery algorithm for the G.I. Protocol
Set: { 1 ,... , n } T : = [(G 1 , G 2 )] For j : = 1 to n do: Choose ij
ran ∈ { 1 , 2 } Choose ρj, a random perm. of { 1 ,... , n }. Compute Hj = ρj(Gij ) T : = T + +[(Hj, ij, ρj)] Return T
Informally, no one can tell a forged transcript from the real thing. Formally...
Legendre symbol For prime p and a ∈ Zp,
( a p
=def
0 , if a /∈ Z∗ p; 1 , if (∃b ∈ Z∗ p)[ a ≡ b^2 (mod p) ] − 1 , otherwise.
Jacobi symbol For n = pe 11... pe kk and a ∈ Zn,
(a n
=def
∏k i=
( (^) a pi
)ei . When n = p · q,
(a
n
0 , if a /∈ Z∗ p; 1 , if
(a p
(a q
− 1 , otherwise.
Let QR(n) =def { y^2 mod n y ∈ Z∗ p }.
The Quadratic Residue Problem Given: n = p · q with p & q prime and x ∈ Z∗ n with
(x n
Question: Is x ∈ QR(n)?
Input n and x ∈ Z∗ n (Pat claims x ∈ QR(n).
Repeat blog 2 nc times.
Pat Chooses v
ran ∈ Z∗ n. Computes y = v^2 mod n. Sends y to Vanna. Vanna Chooses i
ran ∈ { 0 , 1 }. Sends i to Pat. Pat Computes z = uiv mod n, where u is the square root of x.
Note: z^2 = u^2 iv^2 =
xy, if i = 1; y, if i = 0. Vanna Checks whether z^2 = xiy mod n and REJECTS if not.
End Repeat
Vanna ACCEPTS Proof of soundness, completeness, & ZK on board
3 k < ≤ m − 1GOALS: fast, secure
IDEA: The bits produced by the PRG should look random to an ordinary opponent.
DEFINITION Suppose:
I p 0 and p 1 are two prob. distr. on Z2 I A : Z 2 → { 0 , 1 } — computed by a polytime (in `) algorithm I > 0 I For j = 0, 1 , define EA(pj) =
~z∈Z` 2 pj(~z)^ ·^ Prob[A(~z^ = 1|~z)] I A is an -distinguisher of p 0 and p 1 iff |EA(p 0 ) − EA(p 1 )| ≥ . I p 0 and p 1 are -indistinguishable iff 6 ∃ an -distinguisher for them.
)-PRBG and f (s 0 ) = (z 1 ,... , z)z 1 ...zi− 1
p 1 (z 1... zi− 1 ) · Prob[zi = Bi(z 1... zi− 1 )|z 1... zi− 1 ] ≥
Recall the linear congr. generator from before: f For i = 1,... , 9 , Bi(z 1 ,... , zi− 1 ) = 1 − zi− 1. It turns out that Bi is a 629 -next bit predictor for f.
THEOREM Suppose Bi is an -next bit predictor for an (k, )-PRBG f and p 0 & p 1 as before and A as below. Algorithm for A(z 1... z) If (Bi(z 1... zi− 1 ) = zi) then return 1 else return 0. Then A is an -disting. of p 0 and p 1.
Proof Not too hard.
THEOREM Suppose is an -disting. of p 0 & p 1 (as before). Then for some i ∈ { 1 ,... , − 1 } there is an /-next bit pred. Bi for f.
Proof Harder (see Stinson, 1e, pp. 368-370).
The Quadratic Residue Problem Given p and q prime, n = p · q, and z ∈ Z∗ n 3
(z n
Question: Is z ∈ QR(n) (or is z ∈ QR(n))?
I There is no known polytime algorithm for the QR Problem. I If we could factor ( n = pq, then we can easily compute z p
(or similarly,
(z q
I So we can test if z ∈ QR(n) by seeing if
(z q
Observation: There doesn’t seem to be any easier way of solving the QR problem than to factor n.
I p and q, two distinct k/ 2 -bit primes with p ≡ q ≡ 3 (mod 4). I n = p · q.
The BBS Generator
I s 0 ∈ QR(n), a seed I For i = 1,... , , set: (a) si = s^2 i− 1 mod n (b) zi = si mod 2 I Define f (s 0 ) = (z 1... z)
Security Theorem IF the (k, )-BBS Generator can be -distinguished from-random bits Then there is a good probablistic polytime algorithm for the Quadratic Residues problem. (Not known, but believed unlikely.)