Umans Complexity Theory Lectures

Slides:



Advertisements
Similar presentations
The Equivalence of Sampling and Searching Scott Aaronson MIT.
Advertisements

On the Complexity of Parallel Hardness Amplification for One-Way Functions Chi-Jen Lu Academia Sinica, Taiwan.
Unconditional Weak derandomization of weak algorithms Explicit versions of Yao s lemma Ronen Shaltiel, University of Haifa :
Models of Computation Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Analysis of Algorithms Week 1, Lecture 2.
Complexity Theory Lecture 6
Derandomization & Cryptography Boaz Barak, Weizmann Shien Jin Ong, MIT Salil Vadhan, Harvard.
Approximate List- Decoding and Hardness Amplification Valentine Kabanets (SFU) joint work with Russell Impagliazzo and Ragesh Jaiswal (UCSD)
Foundations of Cryptography Lecture 2: One-way functions are essential for identification. Amplification: from weak to strong one-way function Lecturer:
Talk for Topics course. Pseudo-Random Generators pseudo-random bits PRG seed Use a short “ seed ” of very few truly random bits to generate a long string.
Uniform Hardness vs. Randomness Tradeoffs for Arthur-Merlin Games. Danny Gutfreund, Hebrew U. Ronen Shaltiel, Weizmann Inst. Amnon Ta-Shma, Tel-Aviv U.
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 11 Lecturer: Moni Naor.
CS151 Complexity Theory Lecture 8 April 22, 2004.
Foundations of Cryptography Lecture 8: Application of GL, Next-bit unpredictability, Pseudo-Random Functions. Lecturer: Moni Naor Announce home )deadline.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
CS151 Complexity Theory Lecture 7 April 20, 2004.
Perfect and Statistical Secrecy, probabilistic algorithms, Definitions of Easy and Hard, 1-Way FN -- formal definition.
1 Slides by Iddo Tzameret and Gil Shklarski. Adapted from Oded Goldreich’s course lecture notes by Erez Waisbard and Gera Weiss.
ACT1 Slides by Vera Asodi & Tomer Naveh. Updated by : Avi Ben-Aroya & Alon Brook Adapted from Oded Goldreich’s course lecture notes by Sergey Benditkis,
CS151 Complexity Theory Lecture 7 April 20, 2015.
Submitted by : Estrella Eisenberg Yair Kaufman Ohad Lipsky Riva Gonen Shalom.
Derandomizing LOGSPACE Based on a paper by Russell Impagliazo, Noam Nissan and Avi Wigderson Presented by Amir Rosenfeld.
CS151 Complexity Theory Lecture 8 April 22, 2015.
Lecturer: Moni Naor Foundations of Cryptography Lecture 6: pseudo-random generators, hardcore predicate, Goldreich-Levin Theorem, Next-bit unpredictability.
In a World of BPP=P Oded Goldreich Weizmann Institute of Science.
CS151 Complexity Theory Lecture 9 April 27, 2004.
1 On the Power of the Randomized Iterate Iftach Haitner, Danny Harnik, Omer Reingold.
Foundations of Cryptography Lecture 9 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 2 Lecturer: Moni Naor.
CS151 Complexity Theory Lecture 9 April 27, 2015.
On Constructing Parallel Pseudorandom Generators from One-Way Functions Emanuele Viola Harvard University June 2005.
Computation Model and Complexity Class. 2 An algorithmic process that uses the result of a random draw to make an approximated decision has the ability.
Umans Complexity Theory Lectures Lecture 17: Natural Proofs.
Pseudo-random generators Talk for Amnon ’ s seminar.
Umans Complexity Theory Lecturess Lecture 11: Randomness Extractors.
Pseudorandomness: New Results and Applications Emanuele Viola IAS April 2007.
Umans Complexity Theory Lectures Lecture 9b: Pseudo-Random Generators (PRGs) for BPP: - Hardness vs. randomness - Nisan-Wigderson (NW) Pseudo- Random Generator.
Pseudo-randomness. Randomized complexity classes model: probabilistic Turing Machine –deterministic TM with additional read-only tape containing “coin.
Umans Complexity Theory Lectures
B504/I538: Introduction to Cryptography
Probabilistic Algorithms
Cryptography Lecture 5 Arpita Patra © Arpita Patra.
Randomness.
Derandomization & Cryptography
Cryptography Lecture 13 Arpita Patra © Arpita Patra.
Umans Complexity Theory Lectures
Modern symmetric-key Encryption
Digital Signature Schemes and the Random Oracle Model
Pseudorandomness when the odds are against you
Cryptography Lecture 5.
Cryptography Lecture 6.
CS151 Complexity Theory Lecture 17 May 31, 2017.
B504/I538: Introduction to Cryptography
The Curve Merger (Dvir & Widgerson, 2008)
Cryptography Lecture 12 Arpita Patra © Arpita Patra.
CSE838 Lecture notes copy right: Moon Jung Chung
Cryptography Lecture 5 Arpita Patra © Arpita Patra.
CS154, Lecture 12: Time Complexity
On the Efficiency of 2 Generic Cryptographic Constructions
Cryptography Lecture 5.
Cryptography Lecture 5 Arpita Patra © Arpita Patra.
CS21 Decidability and Tractability
Cryptography Lecture 6.
Emanuele Viola Harvard University June 2005
CS151 Complexity Theory Lecture 8 April 26, 2019.
CS151 Complexity Theory Lecture 7 April 23, 2019.
Impossibility of SNARGs
CS151 Complexity Theory Lecture 5 April 16, 2019.
On Derandomizing Algorithms that Err Extremely Rarely
Pseudorandomness: New Results and Applications
Presentation transcript:

Umans Complexity Theory Lectures Lecture 9a: Pseudo-Random Generators (PRGs) for BPP Blum-Micali-Yao (BMY) PRG: using: Goldreich-Levin hard bit Yao's Lemma

Randomized complexity classes model: probabilistic Turing Machine Deterministic TM with additional read-only tape containing “coin flips” “p.p.t” = probabilistic polynomial time BPP (Bounded-error Probabilistic Poly-time) L  BPP if there is a p.p.t. TM M: x  L  Pry[M(x,y) accepts] ≥ 2/3 x  L  Pry[M(x,y) rejects] ≥ 2/3

further explore the relationship between BPP Next: further explore the relationship between randomness and nonuniformity Main tool: pseudo-random generators

Derandomization Goal: try to simulate BPP in subexponential time (or better) use Pseudo-Random Generator (PRG): PRG “good” if it passes (ad-hoc) statistical tests G seed output string t bits m bits

|Pry[C(y) = 1] – Prz[C(G(z)) = 1]| ≤ ε Derandomization ad-hoc tests not good enough to prove BPP has non-trivial simulations Our requirements: G is efficiently computable “stretches” t bits into m bits “fools” small circuits: for all circuits C of size at most s: |Pry[C(y) = 1] – Prz[C(G(z)) = 1]| ≤ ε

Simulating BPP using PRGs Recall: L  BPP implies exists p.p.t.TM M x  L  Pry[M(x,y) accepts] ≥ 2/3 x  L  Pry[M(x,y) rejects] ≥ 2/3 given an input x: convert M into circuit C(x, y) Simplification: pad y so that |C| = |y| = m Hardwire input x to get circuit Cx x  L  Pry[Cx(y) = 1] ≥ 2/3 x  L  Pry[Cx(y) = 1] ≤ 1/3

Simulating BPP using PRGs Use a Pseudo Random-Number Generator (PRG) G with output length m seed length t « m error ε < 1/6 fooling size s = m Compute Prz[Cx(G(z)) = 1] exactly evaluate Cx(G(z)) on every seed z  {0,1}t running time (O(m)+(time for G))2t

Simulating BPP using PRGs knowing Prz[Cx(G(z)) = 1], can distinguish between two cases: ε “yes”: 1/3 1/2 2/3 1 ε “no”: 1/3 1/2 2/3 1

Blum-Micali-Yao (BMY) PRG Initial goal: for all 1 > δ > 0, we will build a family of PRGs {Gm} with: output length m fooling size s = m seed length t = mδ running time mc error ε < 1/6 implies: BPP  δ>0 TIME(2nδ )  EXP) Why? simulation runs in time O(m+mc)(2mδ) = O(2m2δ) = O(2n2kδ)

Blum-Micali-Yao (BMY) PRG PRGs of this type imply existence of one-way-functions we’ll use widely believed cryptographic assumptions Definition: One Way Function (OWF): function family f = {fn}, fn:{0,1}n  {0,1}n fn computable in poly(n) time For every family of poly-size circuits {Cn} Prx[Cn(fn(x)) fn-1(fn(x))] ≤ ε(n) where ε(n) = o(n-c) for all c

Blum-Micali-Yao (BMY) PRG believe one-way functions exist e.g. integer multiplication, discrete log, RSA (w/ minor modifications) Definition: One Way Permutation (OWP): OWF in which fn is 1-1 In this case can simplify: “Prx[Cn(fn(x)) fn-1(fn(x))] ≤ ε(n)” to Pry[Cn(y) = fn-1(y)] ≤ ε(n)

First attempt attempt at PRG from one way function f: c = mδ Seed: y0  {0,1}t For i = 1,…,k-1 yi = ft(yi-1) G(y0) = yk-1yk-2yk-3…y0 has m=kt bits So k = m/t G(y0) computable in time at most ktc < mtc-1 = mc

First attempt output is “unpredictable”: no poly-size circuit C can output yi-1 given yk-1yk-2yk-3…yi with non-negl. success prob. if C could do this, then given yi can compute yk-1, yk-2, …, yi+2, yi+1 and feed to circuit C Result is poly-size circuit to compute yi-1 = ft-1(yi) from yi Note: we are using that ft is 1-1

First attempt attempt: y0  {0,1}t yi = ft(yi-1) G(y0) = yk-1yk-2yk-3…y0 ft ft ft ft ft G(y0): y5 y4 y3 y2 y1 y0 same distribution! ft ft ft-1 ft-1 ft-1 G’(y3): y5 y4 y3 y2 y1 y0

First attempt one problem: hard to compute yi-1 from yi but might be easy to compute single bit (or several bits) of yi-1 from yi could use to build small circuit C that distinguishes generator G’s output from uniform distribution on {0,1}m

|Pry[C(y) = 1] – Prz[C(G(z)) = 1]| ≤ ε First attempt second problem: we don’t know if “unpredictability” given a prefix is sufficient to meet fooling requirement: |Pry[C(y) = 1] – Prz[C(G(z)) = 1]| ≤ ε

Hard bits If {fn} is one-way permutation we know: no poly-size circuit can compute fn-1(y) from y with non-negligible success probability Pry[Cn(y) = fn-1(y)] ≤ ε’(n) We want to identify a single bit position j for which: no poly-size circuit can compute (fn-1(x))j from x with non-negligible advantage over a coin flip Pry[Cn(y) = (fn-1(y))j) ≤ ½ + ε(n)

Hard bits For some specific functions f we know of such a bit position j More general: function hn:{0,1}n  {0,1} rather than just a bit position j.

Hard bits Definition: hard bit for g = {gn} is family h = {hn}, hn:{0,1}n  {0,1} such that if circuit family {Cn} of size s(n) achieves: Prx[Cn(x) = hn(gn(x))] ≥ ½ + ε(n) then there is a circuit family {C’n} of size s’(n) that achieves: Prx[C’n(x) = gn(x)] ≥ ε’(n) with: ε’(n) = (ε(n)/n)O(1) s’(n) = (s(n)n/ε(n))O(1)

Hard bits Equivalent Definition: hard bit for g = {gn} is family h = {hn}, hn:{0,1}n  {0,1} such that if for all circuit families {C’n} of size s’(n): Prx[C’n(x) = gn(x)] < ε’(n) Then for all circuit families {Cn} of size s(n): Prx[Cn(x) = hn(gn(x))] < ½ + ε(n) with: ε’(n) = (ε(n)/n)O(1) s’(n) = (s(n)n/ε(n))O(1)

Goldreich-Levin To get a generic hard bit, first need to modify our one-way permutation Define f’n :{0,1}n x {0,1}n {0,1}2n as: f’n(x,y) = (fn(x), y)

Goldreich-Levin f’n(x,y) = (fn(x), y) Two observations: f’ is a permutation if f is if circuit Cn achieves Prx,y[Cn(x,y) = f’n-1(x,y)] ≥ ε(n) then for some y* Prx[Cn(x,y*)=f’n-1(x,y*)=(fn-1(x), y*)] ≥ ε(n) and so f’ is a one-way permutation if f is.

Goldreich-Levin The Goldreich-Levin function: GL2n : {0,1}n x {0,1}n  {0,1} is defined by: GL2n (x,y) = i:yi = 1xi parity of subset of bits of x selected by 1’s of y inner-product of n-vectors x and y in GF(2) Theorem (G-L): for every function f, GL is a hard bit for f’.

Distinguishers and predictors Distribution D on {0,1}n D ε-passes statistical tests of size s if for all circuits of size s: |PryUn[C(y) = 1] – Pry D[C(y) = 1]| ≤ ε circuit violating this is sometimes called an efficient “distinguisher”

Distinguishers and predictors Distribution D ε-passes prediction tests of size s if for all circuits of size s: PryD[C(y1,2,…, yi-1) = yi] ≤ ½ + ε circuit violating this is sometimes called an efficient “predictor” predictor seems stronger Yao showed essentially the same! important result and proof using Yao’s “hybrid argument”

Distinguishers and Predictors Theorem (Yao): if a distribution D on {0,1}n (ε/n)-passes all prediction tests of size s, then it ε-passes all statistical tests of size s’ = s – O(n).

Distinguishers and Predictors Proof: idea: proof by contradiction given a size s’ distinguisher C: |PryUn[C(y) = 1] – Pry D[C(y) = 1]| > ε produce size s predictor P: PryD[P(y1,2,…, yi-1) = yi] > ½ + ε/n work with distributions that are “hybrids” of the uniform distribution Un and distribution D

Distinguishers and Predictors given a size s’ distinguisher C: |PryUn[C(y) = 1] – Pry D[C(y) = 1]| > ε define n+1 hybrid distributions hybrid distribution Di: sample b = b1b2…bn from D sample r = r1r2…rn from Un output: b1b2…bi ri+1ri+2…rn

Distinguishers and predictors Hybrid distributions: D0 = Un: ... ... Di-1: Di: ... ... Dn = D:

Distinguishers and predictors Define: pi = PryDi[C(y) = 1] Note: p0=PryUn[C(y)=1]; pn=PryD[C(y)=1] by assumption: ε < |pn – p0| triangle inequality: |pn – p0| ≤ Σ1 ≤ i ≤ n|pi – pi-1| there must be some i for which |pi – pi-1| > ε/n WLOG assume pi – pi-1 > ε/n can invert output of C if necessary

Distinguishers and predictors define distribution Di’ to be Di with i-th bit flipped pi’ = PryDi’[C(y) = 1] notice: Di-1 = (Di + Di’ )/2 pi-1 = (pi + pi’ )/2 Di-1: Di: Di’:

Distinguishers and predictors randomized predictor P’ for ith bit: input: u = y1y2…yi-1 (which comes from D) flip a coin: d {0,1} Uniformly choose w = wi+1wi+2…wn  Un-i evaluate C(udw) if 1, output d; if 0, output d Claim: Pry  D,d,w Un-i[P’(y1…yi-1) = yi] > ½ + ε/n.

Distinguishers and predictors P’ is randomized procedure Hence there exist some fixed values d* , w* of its random bits d, w that preserves the success probability Final predictor P has d* and w* hardwired: may need to add  gate circuit for P: Size is s’ + O(n) = s as promised C d* w*

Distinguishers and predictors u = y1y2…yi-1 Claim: Pry  D,d,w Un-i[P’(y1…yi-1) = yi] > ½ + ε/n. Proof of claim: Pry  D,d,w Un-i[P’(y1…yi-1) = yi] = Pr[yi = d | C(u,d,w) = 1]Pr[C(u,d,w) = 1] + Pr[yi = d | C(u,d,w) = 0]Pr[C(u,d,w) = 0] = Pr[yi = d | C(u,d,w) = 1](pi-1) + Pr[yi = d | C(u,d,w) = 0](1 - pi-1)

Distinguishers and predictors u = y1y2…yi-1 Can show: Pr[yi = d | C(u,d,w) = 1] = Pr[C(u,d,w) = 1 | yi = d]Pr[yi=d] / Pr[C(u,d,w) = 1] = pi/(2pi-1) Pr[yi = d | C(u,d,w) = 0] = Pr[C(u,d,w) = 0 | yi= d]Pr[yi=d] / Pr[C(u,d,w) = 0] = (1 – pi’) / 2(1 - pi-1) Di Di’

Distinguishers and Predictors We know: Pr[yi = d | C(u,d,w) = 1] = pi/(2pi-1) Pr[yi = d | C(u,d,w) = 0] = (1 - pi’)/2(1 - pi-1) pi-1 = (pi + pi’)/2 pi – pi-1 > ε/n Success probability: Pr[P’(y1…i-1) = yi] = Pr[yi=d|C(u,d,w)=1](pi-1) + Pr[yi=d|C(u,d,w)=0](1-pi-1) = (pi/(2pi-1))(pi-1) + ((1 - pi’)/2(1 - pi-1))(1-pi-1) = ½ + (pi - pi’)/2 = ½ + pi/2 – (pi-1 – pi/2) = ½ + pi – pi-1 > ½ + ε/n. pi-1 = (pi + pi’ )/2 So pi’/2 = pi-1 – pi/2

The BMY Generator Recall Goal: for all 1 > δ > 0, family of PRGs {Gm} with output length m fooling size s = m seed length t = mδ running time mc error ε < 1/6 If one way permutations exist then WLOG there is a one way permutation f = {fn} with hard bit h = {hn}

The BMY Generator Generator Gδ = {Gδm}: t = mδ Seed: y0  {0,1}t For i = 1,…,m: yi = ft(yi-1) bi = ht(yi) Generator outputs: Gδ(y0) = bm-1bm-2bm-3…b0

The BMY Generator Finally ready to prove: Theorem (BMY): for every δ > 0, there is a constant c s.t. for all d, e, Gδ is a PRG with error ε < 1/md fooling size s = me running time mc Note: stronger than we needed sufficient to have ε < 1/6; s = m

|PryUm[C(y) = 1] – PrzD[C(z) = 1]| >1/md The BMY Generator Generator Gδ = {Gδm}: t = mδ; y0  {0,1}t; yi = ft(yi-1); bi = ht(yi) Gδm(y0) = bm-1bm-2bm-3…b0 Proof: Gδ is computable in time at most mtc < mc+1 For sake of contradiction: Assume Gδ does not (1/md)-pass statistical test C = {Cm} of size me: |PryUm[C(y) = 1] – PrzD[C(z) = 1]| >1/md

Pry[P(bm-1…bm-i) = bm-i-1] > ½ + 1/md+1 The BMY Generator Generator Gδ = {Gδm}: t = mδ; y0  {0,1}t; yi = ft(yi-1); bi = ht(yi) Gδm(y0) = bm-1bm-2bm-3…b0 Applying Yao’s Theorem: Transform this distinguisher into a predictor P of size me + O(m): Pry[P(bm-1…bm-i) = bm-i-1] > ½ + 1/md+1

Pry[P(bm-1bm-2…bm-i) = bm-i-1] > ½ + 1/md+1 The BMY Generator Generator Gδ = {Gδm}: t = mδ; y0  {0,1}t; yi = ft(yi-1); bi = ht(yi) Gδm(y0) = bm-1bm-2bm-3…b0 Procedure to compute ht(ft-1(y)) : set ym-i = y; bm-i = ht(ym-i) compute yj, bj for j = m-i+1, m-i+2…, m-1 as above evaluate P(bm-1bm-2…bm-i) f a permutation implies bm-1bm-2…bm-i distributed as (prefix of) output of generator: Pry[P(bm-1bm-2…bm-i) = bm-i-1] > ½ + 1/md+1

The BMY Generator Generator Gδ = {Gδm}: t = mδ; y0  {0,1}t; yi = ft(yi-1); bi = ht(yi) Gδm(y0) = bm-1bm-2bm-3…b0 We have: Pry[P(bm-1bm-2…bm-i) = bm-i-1] > ½ + 1/md+1 What is bm-i-1? bm-i-1 = ht(ym-i-1) = ht(ft-1(ym-i)) = ht(ft-1(y)) We have described a family of polynomial-size circuits that computes ht(ft-1(y)) from y with success greater than: ½ + 1/poly(m) Contradiction with assumption, proving BMY’s Theorem.

The BMY Generator same distribution ft ft ft ft ft G(y0): y5 y4 y3 y2

The BMY Generator Review: We have shown: If one-way permutations exist then BPP  δ>0 TIME(2nδ )  EXP time simulation is better than brute force, but just barely stronger assumptions on difficulty of inverting one way functions leads to better simulations…