Foundation of Cryptography (0368-4162-01), Lecture 3 Hardcore - - PowerPoint PPT Presentation

foundation of cryptography 0368 4162 01 lecture 3
SMART_READER_LITE
LIVE PREVIEW

Foundation of Cryptography (0368-4162-01), Lecture 3 Hardcore - - PowerPoint PPT Presentation

The Information Theoretic Case The Computational Case Foundation of Cryptography (0368-4162-01), Lecture 3 Hardcore Predicates for Any One-way Function Iftach Haitner, Tel Aviv University November 22, 2011 The Information Theoretic Case The


slide-1
SLIDE 1

The Information Theoretic Case The Computational Case

Foundation of Cryptography (0368-4162-01), Lecture 3

Hardcore Predicates for Any One-way Function Iftach Haitner, Tel Aviv University November 22, 2011

slide-2
SLIDE 2

The Information Theoretic Case The Computational Case

Definition 1 (hardcore predicates) An efficiently computable function b : {0, 1}n → {0, 1} is an hardcore predicate of f : {0, 1}n → {0, 1}n, if Pr[P(f(Un)) = b(Un)] ≤ 1 2 + neg(n), for any PPT P.

slide-3
SLIDE 3

The Information Theoretic Case The Computational Case

Definition 1 (hardcore predicates) An efficiently computable function b : {0, 1}n → {0, 1} is an hardcore predicate of f : {0, 1}n → {0, 1}n, if Pr[P(f(Un)) = b(Un)] ≤ 1 2 + neg(n), for any PPT P. Theorem 2 (Goldreich-Levin) Let f : {0, 1}n → {0, 1}n be a OWF, and define g : {0, 1}n × {0, 1}n → {0, 1}n × {0, 1}n as g(x, r) = f(x), r. Then b(x, r) = x, r2, is an hardcore predicate of g. Note that if f is one-to-one, then so is g.

slide-4
SLIDE 4

The Information Theoretic Case The Computational Case

Section 1 The Information Theoretic Case

slide-5
SLIDE 5

The Information Theoretic Case The Computational Case

Definition 3 (min-entropy) The min entropy of a random variable X, is defined H∞(X) := min

y∈Supp(X) log

1 PrX[y].

slide-6
SLIDE 6

The Information Theoretic Case The Computational Case

Definition 3 (min-entropy) The min entropy of a random variable X, is defined H∞(X) := min

y∈Supp(X) log

1 PrX[y]. Examples X is uniform over a set of size 2k

slide-7
SLIDE 7

The Information Theoretic Case The Computational Case

Definition 3 (min-entropy) The min entropy of a random variable X, is defined H∞(X) := min

y∈Supp(X) log

1 PrX[y]. Examples X is uniform over a set of size 2k (X | f(X) = y), where f : {0, 1}n → {0, 1}n is 2k to 1 and X is uniform over {0, 1}n

slide-8
SLIDE 8

The Information Theoretic Case The Computational Case Pairwise independent hashing

Pairwise independent hashing Definition 4 (pairwise independent hash functions) A function family H from {0, 1}n to {0, 1}m is pairwise independent, if for every x = x′ ∈ {0, 1}n and y, y′ ∈ {0, 1}m, it holds that Prh←H[h(x) = y ∧ h(x′) = y′)] = 2−2m.

slide-9
SLIDE 9

The Information Theoretic Case The Computational Case Pairwise independent hashing

Pairwise independent hashing Definition 4 (pairwise independent hash functions) A function family H from {0, 1}n to {0, 1}m is pairwise independent, if for every x = x′ ∈ {0, 1}n and y, y′ ∈ {0, 1}m, it holds that Prh←H[h(x) = y ∧ h(x′) = y′)] = 2−2m. Lemma 5 (leftover hash lemma) Let X be a random variable over {0, 1}n with H∞(X) ≥ k and let H be a family of pairwise independent hash functions from {0, 1}n to {0, 1}m, then SD((h, h(x))h←H,x←X, (h, y)h←H,y←{0,1}m) ≤ 2(m−k−2))/2.

slide-10
SLIDE 10

The Information Theoretic Case The Computational Case Pairwise independent hashing

Pairwise independent hashing Definition 4 (pairwise independent hash functions) A function family H from {0, 1}n to {0, 1}m is pairwise independent, if for every x = x′ ∈ {0, 1}n and y, y′ ∈ {0, 1}m, it holds that Prh←H[h(x) = y ∧ h(x′) = y′)] = 2−2m. Lemma 5 (leftover hash lemma) Let X be a random variable over {0, 1}n with H∞(X) ≥ k and let H be a family of pairwise independent hash functions from {0, 1}n to {0, 1}m, then SD((h, h(x))h←H,x←X, (h, y)h←H,y←{0,1}m) ≤ 2(m−k−2))/2. * We typically simply write SD((H, H(X)), (H, Um)), where H is uniformly distributed over H.

slide-11
SLIDE 11

The Information Theoretic Case The Computational Case efficient function families

efficient function families Definition 6 (efficient function family) An ensemble of function families F = {Fn}n∈N is efficient, if the following hold:

  • Samplable. F is samplable in polynomial-time: there exists a

PPT that given 1n, outputs (the description of) a

uniform element in Fn.

  • Efficient. There exists a polynomial-time algorithm that

given x ∈ {0, 1}n and (a description of) f ∈ Fn,

  • utputs f(x).
slide-12
SLIDE 12

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

hardcore predicate for regular OWF Lemma 7 Let f : {0, 1}n → {0, 1}n be a d(n) ∈ 2ω(log n) regular function and let H = {Hn} be an efficient family of Boolean pairwise independent hash functions over {0, 1}n. Define g : {0, 1}n × Hn → {0, 1}n × Hn as g(x, h) = (f(x), h), then b(x, h) = h(x) is an hardcore predicate of g.

slide-13
SLIDE 13

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

hardcore predicate for regular OWF Lemma 7 Let f : {0, 1}n → {0, 1}n be a d(n) ∈ 2ω(log n) regular function and let H = {Hn} be an efficient family of Boolean pairwise independent hash functions over {0, 1}n. Define g : {0, 1}n × Hn → {0, 1}n × Hn as g(x, h) = (f(x), h), then b(x, h) = h(x) is an hardcore predicate of g. How does it relate to the computational case?

slide-14
SLIDE 14

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

hardcore predicate for regular OWF Lemma 7 Let f : {0, 1}n → {0, 1}n be a d(n) ∈ 2ω(log n) regular function and let H = {Hn} be an efficient family of Boolean pairwise independent hash functions over {0, 1}n. Define g : {0, 1}n × Hn → {0, 1}n × Hn as g(x, h) = (f(x), h), then b(x, h) = h(x) is an hardcore predicate of g. How does it relate to the computational case? Proof: We prove the claim by showing that Claim 8 SD ((f(Un), H, H(Un)), (f(Un), H, U1)) = neg(n), where the rv H = H(n) is uniformly distributed over Hn.

slide-15
SLIDE 15

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

hardcore predicate for regular OWF Lemma 7 Let f : {0, 1}n → {0, 1}n be a d(n) ∈ 2ω(log n) regular function and let H = {Hn} be an efficient family of Boolean pairwise independent hash functions over {0, 1}n. Define g : {0, 1}n × Hn → {0, 1}n × Hn as g(x, h) = (f(x), h), then b(x, h) = h(x) is an hardcore predicate of g. How does it relate to the computational case? Proof: We prove the claim by showing that Claim 8 SD ((f(Un), H, H(Un)), (f(Un), H, U1)) = neg(n), where the rv H = H(n) is uniformly distributed over Hn. Does this conclude the proof?

slide-16
SLIDE 16

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 Proof: For y ∈ f({0, 1}n) := {f(x): x ∈ {0, 1}n}, let the rv Xy be uniformly distributed over f −1(y) := {x ∈ {0, 1}n : f(x) = y}.

slide-17
SLIDE 17

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 Proof: For y ∈ f({0, 1}n) := {f(x): x ∈ {0, 1}n}, let the rv Xy be uniformly distributed over f −1(y) := {x ∈ {0, 1}n : f(x) = y}. SD((f(Un), H, H(Un)), (f(Un), H, U1)) =

  • y∈f({0,1}n)

Pr[f(Un) = y] · SD

  • (f(Un), H, H(Un) | f(Un) = y)

, (f(Un), H, U1 | f(Un) = y)

slide-18
SLIDE 18

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 Proof: For y ∈ f({0, 1}n) := {f(x): x ∈ {0, 1}n}, let the rv Xy be uniformly distributed over f −1(y) := {x ∈ {0, 1}n : f(x) = y}. SD((f(Un), H, H(Un)), (f(Un), H, U1)) =

  • y∈f({0,1}n)

Pr[f(Un) = y] · SD

  • (f(Un), H, H(Un) | f(Un) = y)

, (f(Un), H, U1 | f(Un) = y)

  • =
  • y∈f({0,1}n)

Pr[f(Un) = y] · SD ((y, H, H(Xy)), (y, H, U1))

slide-19
SLIDE 19

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 Proof: For y ∈ f({0, 1}n) := {f(x): x ∈ {0, 1}n}, let the rv Xy be uniformly distributed over f −1(y) := {x ∈ {0, 1}n : f(x) = y}. SD((f(Un), H, H(Un)), (f(Un), H, U1)) =

  • y∈f({0,1}n)

Pr[f(Un) = y] · SD

  • (f(Un), H, H(Un) | f(Un) = y)

, (f(Un), H, U1 | f(Un) = y)

  • =
  • y∈f({0,1}n)

Pr[f(Un) = y] · SD ((y, H, H(Xy)), (y, H, U1)) ≤ max

y∈f({0,1}n) SD((y, H, H(Xy)), (y, H, U1))

slide-20
SLIDE 20

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 Proof: For y ∈ f({0, 1}n) := {f(x): x ∈ {0, 1}n}, let the rv Xy be uniformly distributed over f −1(y) := {x ∈ {0, 1}n : f(x) = y}. SD((f(Un), H, H(Un)), (f(Un), H, U1)) =

  • y∈f({0,1}n)

Pr[f(Un) = y] · SD

  • (f(Un), H, H(Un) | f(Un) = y)

, (f(Un), H, U1 | f(Un) = y)

  • =
  • y∈f({0,1}n)

Pr[f(Un) = y] · SD ((y, H, H(Xy)), (y, H, U1)) ≤ max

y∈f({0,1}n) SD((y, H, H(Xy)), (y, H, U1))

≤ max

y∈f({0,1}n) SD((H, H(Xy)), (H, U1))

slide-21
SLIDE 21

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 cont. Since H∞(Xy) = log(d(n)) for any y ∈ f({0, 1}n),

slide-22
SLIDE 22

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Proving Claim 8 cont. Since H∞(Xy) = log(d(n)) for any y ∈ f({0, 1}n), The leftover hash lemma yields that SD((H, H(Xy)), (H, U1)) ≤ 2(1−H∞(Xy)−2))/2 = 2(1−log(d(n)))/2 = neg(n).

slide-23
SLIDE 23

The Information Theoretic Case The Computational Case hardcore predicate for regular functions

Further remarks Remark 9 We can output Θ(log d(n)) bits, g and b are not defined over all input length.

slide-24
SLIDE 24

The Information Theoretic Case The Computational Case

Section 2 The Computational Case

slide-25
SLIDE 25

The Information Theoretic Case The Computational Case

Proving Goldreich-Levin Theorem Theorem 10 (Goldreich-Levin) Let f : {0, 1}n → {0, 1}n be a OWF, and define g : {0, 1}n × {0, 1}n → {0, 1}n × {0, 1}n as g(x, r) = f(x), r. Then b(x, r) = x, r2, is an hardcore predicate of g. Note that if b(x, r) is (almost) a family of pairwise independent hash functions.

slide-26
SLIDE 26

The Information Theoretic Case The Computational Case

Proving Goldreich-Levin Theorem Theorem 10 (Goldreich-Levin) Let f : {0, 1}n → {0, 1}n be a OWF, and define g : {0, 1}n × {0, 1}n → {0, 1}n × {0, 1}n as g(x, r) = f(x), r. Then b(x, r) = x, r2, is an hardcore predicate of g. Note that if b(x, r) is (almost) a family of pairwise independent hash functions. Proof: Assume ∃ PPT A, p ∈ poly and infinite set I ⊆ N with Pr[A(g(Un, Rn)) = b(Un, Rn)] ≥ 1 2 + 1 p(n), (1) for any n ∈ I, where Un and Rn are uniformly (and independently) distributed over {0, 1}n.

slide-27
SLIDE 27

The Information Theoretic Case The Computational Case

Proving Goldreich-Levin Theorem Theorem 10 (Goldreich-Levin) Let f : {0, 1}n → {0, 1}n be a OWF, and define g : {0, 1}n × {0, 1}n → {0, 1}n × {0, 1}n as g(x, r) = f(x), r. Then b(x, r) = x, r2, is an hardcore predicate of g. Note that if b(x, r) is (almost) a family of pairwise independent hash functions. Proof: Assume ∃ PPT A, p ∈ poly and infinite set I ⊆ N with Pr[A(g(Un, Rn)) = b(Un, Rn)] ≥ 1 2 + 1 p(n), (1) for any n ∈ I, where Un and Rn are uniformly (and independently) distributed over {0, 1}n. We show ∃ PPT B and p′ ∈ poly with Pry←f(Un)[B(y) ∈ f −1(y) ≥ 1 p′(n), (2) for every n ∈ I.

slide-28
SLIDE 28

The Information Theoretic Case The Computational Case

Proving Goldreich-Levin Theorem Theorem 10 (Goldreich-Levin) Let f : {0, 1}n → {0, 1}n be a OWF, and define g : {0, 1}n × {0, 1}n → {0, 1}n × {0, 1}n as g(x, r) = f(x), r. Then b(x, r) = x, r2, is an hardcore predicate of g. Note that if b(x, r) is (almost) a family of pairwise independent hash functions. Proof: Assume ∃ PPT A, p ∈ poly and infinite set I ⊆ N with Pr[A(g(Un, Rn)) = b(Un, Rn)] ≥ 1 2 + 1 p(n), (1) for any n ∈ I, where Un and Rn are uniformly (and independently) distributed over {0, 1}n. We show ∃ PPT B and p′ ∈ poly with Pry←f(Un)[B(y) ∈ f −1(y) ≥ 1 p′(n), (2) for every n ∈ I. In the following fix n ∈ I.

slide-29
SLIDE 29

The Information Theoretic Case The Computational Case

Focusing on a good set Claim 11 There exists a set S ⊆ {0, 1}n with

1

|S| 2n ≥ 1 2p(n), and

2

α(x) := Pr[A(f(x), Rn) = b(x, Rn)] ≥ 1

2 + 1 2p(n), ∀x ∈ S.

slide-30
SLIDE 30

The Information Theoretic Case The Computational Case

Focusing on a good set Claim 11 There exists a set S ⊆ {0, 1}n with

1

|S| 2n ≥ 1 2p(n), and

2

α(x) := Pr[A(f(x), Rn) = b(x, Rn)] ≥ 1

2 + 1 2p(n), ∀x ∈ S.

Proof: Let S := {x ∈ {0, 1}n : α(x) ≥ 1

2 + 1 2p(n)}. It follows that

Pr[A(g(Un, Rn)) = b(Un, Rn)] ≤ Pr[Un / ∈ S] ·

  • 1

2 + 1 2p(n)

  • +Pr[Un ∈ S]
slide-31
SLIDE 31

The Information Theoretic Case The Computational Case

Focusing on a good set Claim 11 There exists a set S ⊆ {0, 1}n with

1

|S| 2n ≥ 1 2p(n), and

2

α(x) := Pr[A(f(x), Rn) = b(x, Rn)] ≥ 1

2 + 1 2p(n), ∀x ∈ S.

Proof: Let S := {x ∈ {0, 1}n : α(x) ≥ 1

2 + 1 2p(n)}. It follows that

Pr[A(g(Un, Rn)) = b(Un, Rn)] ≤ Pr[Un / ∈ S] ·

  • 1

2 + 1 2p(n)

  • +Pr[Un ∈ S]

  • 1

2 + 1 2p(n)

  • + Pr[Un ∈ S]
slide-32
SLIDE 32

The Information Theoretic Case The Computational Case

Focusing on a good set Claim 11 There exists a set S ⊆ {0, 1}n with

1

|S| 2n ≥ 1 2p(n), and

2

α(x) := Pr[A(f(x), Rn) = b(x, Rn)] ≥ 1

2 + 1 2p(n), ∀x ∈ S.

Proof: Let S := {x ∈ {0, 1}n : α(x) ≥ 1

2 + 1 2p(n)}. It follows that

Pr[A(g(Un, Rn)) = b(Un, Rn)] ≤ Pr[Un / ∈ S] ·

  • 1

2 + 1 2p(n)

  • +Pr[Un ∈ S]

  • 1

2 + 1 2p(n)

  • + Pr[Un ∈ S]

We will present q ∈ poly and a PPT B such that Pr[B(y = f(x)) ∈ f −1(y) ≥ 1 q(n), (3) for every x ∈ S.

slide-33
SLIDE 33

The Information Theoretic Case The Computational Case

Focusing on a good set Claim 11 There exists a set S ⊆ {0, 1}n with

1

|S| 2n ≥ 1 2p(n), and

2

α(x) := Pr[A(f(x), Rn) = b(x, Rn)] ≥ 1

2 + 1 2p(n), ∀x ∈ S.

Proof: Let S := {x ∈ {0, 1}n : α(x) ≥ 1

2 + 1 2p(n)}. It follows that

Pr[A(g(Un, Rn)) = b(Un, Rn)] ≤ Pr[Un / ∈ S] ·

  • 1

2 + 1 2p(n)

  • +Pr[Un ∈ S]

  • 1

2 + 1 2p(n)

  • + Pr[Un ∈ S]

We will present q ∈ poly and a PPT B such that Pr[B(y = f(x)) ∈ f −1(y) ≥ 1 q(n), (3) for every x ∈ S. Fix x ∈ S.

slide-34
SLIDE 34

The Information Theoretic Case The Computational Case Perfect case

The perfect case α(x) = 1 For every i ∈ [n], it holds that A(f(x), ei) = b(x, ei), where ei = (0, . . . , 0

i−1

, 1, 0, . . . , 0

n−i

).

slide-35
SLIDE 35

The Information Theoretic Case The Computational Case Perfect case

The perfect case α(x) = 1 For every i ∈ [n], it holds that A(f(x), ei) = b(x, ei), where ei = (0, . . . , 0

i−1

, 1, 0, . . . , 0

n−i

). Hence, xi = x, ei2 = A(f(x), ei)

slide-36
SLIDE 36

The Information Theoretic Case The Computational Case Perfect case

The perfect case α(x) = 1 For every i ∈ [n], it holds that A(f(x), ei) = b(x, ei), where ei = (0, . . . , 0

i−1

, 1, 0, . . . , 0

n−i

). Hence, xi = x, ei2 = A(f(x), ei) We let B(f(x)) = (A(f(x), e1), . . . , A(f(x), en))

slide-37
SLIDE 37

The Information Theoretic Case The Computational Case Easy case

Easy case: α(x) ≥ 1 − neg(n) Fact 12

1

∀r ∈ {0, 1}n, the rv (r ⊕ Rn) is uniformly dist. over {0, 1}n

2

∀w, y ∈ {0, 1}n, it holds that b(x, w) ⊕ b(x, y) = b(x, w ⊕ y)

slide-38
SLIDE 38

The Information Theoretic Case The Computational Case Easy case

Easy case: α(x) ≥ 1 − neg(n) Fact 12

1

∀r ∈ {0, 1}n, the rv (r ⊕ Rn) is uniformly dist. over {0, 1}n

2

∀w, y ∈ {0, 1}n, it holds that b(x, w) ⊕ b(x, y) = b(x, w ⊕ y) Hence, ∀i ∈ [n]:

1

∀r ∈ {0, 1}n it holds that xi = b(x, r) ⊕ b(x, r ⊕ ei)

slide-39
SLIDE 39

The Information Theoretic Case The Computational Case Easy case

Easy case: α(x) ≥ 1 − neg(n) Fact 12

1

∀r ∈ {0, 1}n, the rv (r ⊕ Rn) is uniformly dist. over {0, 1}n

2

∀w, y ∈ {0, 1}n, it holds that b(x, w) ⊕ b(x, y) = b(x, w ⊕ y) Hence, ∀i ∈ [n]:

1

∀r ∈ {0, 1}n it holds that xi = b(x, r) ⊕ b(x, r ⊕ ei)

2

Pr[A(f(x), Rn) = b(x, Rn) ∧ A(f(x), Rn ⊕ ei) = b(x, Rn ⊕ ei)] ≥ 1 − neg(n)

slide-40
SLIDE 40

The Information Theoretic Case The Computational Case Easy case

Easy case: α(x) ≥ 1 − neg(n) Fact 12

1

∀r ∈ {0, 1}n, the rv (r ⊕ Rn) is uniformly dist. over {0, 1}n

2

∀w, y ∈ {0, 1}n, it holds that b(x, w) ⊕ b(x, y) = b(x, w ⊕ y) Hence, ∀i ∈ [n]:

1

∀r ∈ {0, 1}n it holds that xi = b(x, r) ⊕ b(x, r ⊕ ei)

2

Pr[A(f(x), Rn) = b(x, Rn) ∧ A(f(x), Rn ⊕ ei) = b(x, Rn ⊕ ei)] ≥ 1 − neg(n) We let B(f(x)) = (A(f(x), Rn) ⊕ A(f(x), Rn ⊕ e1)), . . . , A(f(x), Rn) ⊕ A(f(x), Rn ⊕ en)).

slide-41
SLIDE 41

The Information Theoretic Case The Computational Case Intermediate case

Intermediate case: α(x) ≥ 3

4 + 1 q(n)

For any i ∈ [n], it holds that Pr[A(f(x), Rn) ⊕ A(f(x), Rn ⊕ ei) = xi] (4) ≥ Pr[A(f(x), Rn) = b(x, Rn) ∧ A(f(x), Rn ⊕ ei) = b(x, Rn ⊕ ei)]

slide-42
SLIDE 42

The Information Theoretic Case The Computational Case Intermediate case

Intermediate case: α(x) ≥ 3

4 + 1 q(n)

For any i ∈ [n], it holds that Pr[A(f(x), Rn) ⊕ A(f(x), Rn ⊕ ei) = xi] (4) ≥ Pr[A(f(x), Rn) = b(x, Rn) ∧ A(f(x), Rn ⊕ ei) = b(x, Rn ⊕ ei)] ≥ 1 2 + 2 q(n)

slide-43
SLIDE 43

The Information Theoretic Case The Computational Case Intermediate case

Intermediate case: α(x) ≥ 3

4 + 1 q(n)

For any i ∈ [n], it holds that Pr[A(f(x), Rn) ⊕ A(f(x), Rn ⊕ ei) = xi] (4) ≥ Pr[A(f(x), Rn) = b(x, Rn) ∧ A(f(x), Rn ⊕ ei) = b(x, Rn ⊕ ei)] ≥ 1 2 + 2 q(n) Algorithm 13 (B) Input: f(x) ∈ {0, 1}n

1

For every i ∈ [n]

Sample r 1, . . . , r v ∈ {0, 1}n uniformly at random Let mi = majj∈[v]{(A(f(x), r j) ⊕ A(f(x), r j ⊕ ei)}

2

Output (m1, . . . , mn)

slide-44
SLIDE 44

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n).

slide-45
SLIDE 45

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n). Proof: For j ∈ [v], let the indicator rv W j be 1, iif A(f(x), r j) ⊕ A(f(x), r j ⊕ ei) = xi.

slide-46
SLIDE 46

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n). Proof: For j ∈ [v], let the indicator rv W j be 1, iif A(f(x), r j) ⊕ A(f(x), r j ⊕ ei) = xi. We want to lowerbound Pr v

j=1 W j > v 2

  • .
slide-47
SLIDE 47

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n). Proof: For j ∈ [v], let the indicator rv W j be 1, iif A(f(x), r j) ⊕ A(f(x), r j ⊕ ei) = xi. We want to lowerbound Pr v

j=1 W j > v 2

  • .

The W j are iids and E[W j] ≥ 1

2 + 2 q(n), for every j ∈ [v]

slide-48
SLIDE 48

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n). Proof: For j ∈ [v], let the indicator rv W j be 1, iif A(f(x), r j) ⊕ A(f(x), r j ⊕ ei) = xi. We want to lowerbound Pr v

j=1 W j > v 2

  • .

The W j are iids and E[W j] ≥ 1

2 + 2 q(n), for every j ∈ [v]

Lemma 15 (Hoeffding’s inequality) Let X 1, . . . , X v be iid over [0, 1] with expectation µ. Then, Pr

  • |

v

j=i X j

v

− µ| ≥ ε

  • ≤ 2 · exp(−2ε2v) for every ε > 0.
slide-49
SLIDE 49

The Information Theoretic Case The Computational Case Intermediate case

B’s success provability The following holds for “large enough" v = v(n). Claim 14 For every i ∈ [n], it holds that Pr[mi = xi] ≥ 1 − neg(n). Proof: For j ∈ [v], let the indicator rv W j be 1, iif A(f(x), r j) ⊕ A(f(x), r j ⊕ ei) = xi. We want to lowerbound Pr v

j=1 W j > v 2

  • .

The W j are iids and E[W j] ≥ 1

2 + 2 q(n), for every j ∈ [v]

Lemma 15 (Hoeffding’s inequality) Let X 1, . . . , X v be iid over [0, 1] with expectation µ. Then, Pr

  • |

v

j=i X j

v

− µ| ≥ ε

  • ≤ 2 · exp(−2ε2v) for every ε > 0.

We complete the proof taking X j = W j, ε = 1/4q(n) and v ∈ ω(log(n) · q(n)2).

slide-50
SLIDE 50

The Information Theoretic Case The Computational Case Actual case

The actual case: α(x) ≥ 1

2 + 1 q(n)

What goes wrong?

slide-51
SLIDE 51

The Information Theoretic Case The Computational Case Actual case

The actual case: α(x) ≥ 1

2 + 1 q(n)

What goes wrong? Idea: guess the values of {b(x, r 1), . . . , b(x, r v)} (instead of calling {A(f(x), r 1), . . . , A(f(x), r v)})

slide-52
SLIDE 52

The Information Theoretic Case The Computational Case Actual case

The actual case: α(x) ≥ 1

2 + 1 q(n)

What goes wrong? Idea: guess the values of {b(x, r 1), . . . , b(x, r v)} (instead of calling {A(f(x), r 1), . . . , A(f(x), r v)}) Problem: negligible success probability

slide-53
SLIDE 53

The Information Theoretic Case The Computational Case Actual case

The actual case: α(x) ≥ 1

2 + 1 q(n)

What goes wrong? Idea: guess the values of {b(x, r 1), . . . , b(x, r v)} (instead of calling {A(f(x), r 1), . . . , A(f(x), r v)}) Problem: negligible success probability Solution: choose the samples in a correlated manner

slide-54
SLIDE 54

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1.

slide-55
SLIDE 55

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1. We let L ⊆ [ℓ] stands for non-empty subset.

slide-56
SLIDE 56

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1. We let L ⊆ [ℓ] stands for non-empty subset. Algorithm 16 (B) Input: f(x) ∈ {0, 1}n

1

Sample uniformly (and independently) t1, . . . , tℓ ∈ {0, 1}n

2

For all L ⊆ [ℓ], set r L =

i∈L ti

3

Guess {b(x, ti)}, and compute {b(x, r L)} (how?)

4

For all i ∈ [n], let mi = majL⊆{0,1}n{A(f(x), r L ⊕ ei) ⊕ b(x, r L)}

5

Output (m1, . . . , mn)

slide-57
SLIDE 57

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1. We let L ⊆ [ℓ] stands for non-empty subset. Algorithm 16 (B) Input: f(x) ∈ {0, 1}n

1

Sample uniformly (and independently) t1, . . . , tℓ ∈ {0, 1}n

2

For all L ⊆ [ℓ], set r L =

i∈L ti

3

Guess {b(x, ti)}, and compute {b(x, r L)} (how?)

4

For all i ∈ [n], let mi = majL⊆{0,1}n{A(f(x), r L ⊕ ei) ⊕ b(x, r L)}

5

Output (m1, . . . , mn) Fix i ∈ [n], and let W L be 1, iff A(f(x), r L ⊕ ei) ⊕ b(x, r L) = xi.

slide-58
SLIDE 58

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1. We let L ⊆ [ℓ] stands for non-empty subset. Algorithm 16 (B) Input: f(x) ∈ {0, 1}n

1

Sample uniformly (and independently) t1, . . . , tℓ ∈ {0, 1}n

2

For all L ⊆ [ℓ], set r L =

i∈L ti

3

Guess {b(x, ti)}, and compute {b(x, r L)} (how?)

4

For all i ∈ [n], let mi = majL⊆{0,1}n{A(f(x), r L ⊕ ei) ⊕ b(x, r L)}

5

Output (m1, . . . , mn) Fix i ∈ [n], and let W L be 1, iff A(f(x), r L ⊕ ei) ⊕ b(x, r L) = xi. We want to lowerbound Pr[

L⊆[ℓ] W L > v 2]

slide-59
SLIDE 59

The Information Theoretic Case The Computational Case Actual case

Algorithm B Fix ℓ = ℓ(n) (will be O(log n)) and set v = 2ℓ − 1. We let L ⊆ [ℓ] stands for non-empty subset. Algorithm 16 (B) Input: f(x) ∈ {0, 1}n

1

Sample uniformly (and independently) t1, . . . , tℓ ∈ {0, 1}n

2

For all L ⊆ [ℓ], set r L =

i∈L ti

3

Guess {b(x, ti)}, and compute {b(x, r L)} (how?)

4

For all i ∈ [n], let mi = majL⊆{0,1}n{A(f(x), r L ⊕ ei) ⊕ b(x, r L)}

5

Output (m1, . . . , mn) Fix i ∈ [n], and let W L be 1, iff A(f(x), r L ⊕ ei) ⊕ b(x, r L) = xi. We want to lowerbound Pr[

L⊆[ℓ] W L > v 2]

Problem: the W L’s are dependent!

slide-60
SLIDE 60

The Information Theoretic Case The Computational Case Actual case

Analyzing B’s success probability

1

Let T 1, . . . , T ℓ be iid over {0, 1}n.

2

For every L ⊆ [ℓ], let RL =

i∈L T i .

slide-61
SLIDE 61

The Information Theoretic Case The Computational Case Actual case

Analyzing B’s success probability

1

Let T 1, . . . , T ℓ be iid over {0, 1}n.

2

For every L ⊆ [ℓ], let RL =

i∈L T i .

Fact 17

1

∀L ⊆ [ℓ], RL is uniformly distributed over {0, 1}n

2

∀w, y ∈ {0, 1}n and ∀L = L′ ⊆ [ℓ], it holds that Pr[RL = w ∧ RL′ = y] = Pr[RL = w] · Pr[RL′ = y]

slide-62
SLIDE 62

The Information Theoretic Case The Computational Case Actual case

Analyzing B’s success probability

1

Let T 1, . . . , T ℓ be iid over {0, 1}n.

2

For every L ⊆ [ℓ], let RL =

i∈L T i .

Fact 17

1

∀L ⊆ [ℓ], RL is uniformly distributed over {0, 1}n

2

∀w, y ∈ {0, 1}n and ∀L = L′ ⊆ [ℓ], it holds that Pr[RL = w ∧ RL′ = y] = Pr[RL = w] · Pr[RL′ = y] That is, the RL’s are pairwise independent.

slide-63
SLIDE 63

The Information Theoretic Case The Computational Case Actual case

Proving Fact 17(2) Assume wlg. that 1 ∈ (L′ \ L).

slide-64
SLIDE 64

The Information Theoretic Case The Computational Case Actual case

Proving Fact 17(2) Assume wlg. that 1 ∈ (L′ \ L). Pr[RL = w ∧ RL′ = y] =

  • (t2,...,tℓ)∈{0,1}(ℓ−1)n

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)]

slide-65
SLIDE 65

The Information Theoretic Case The Computational Case Actual case

Proving Fact 17(2) Assume wlg. that 1 ∈ (L′ \ L). Pr[RL = w ∧ RL′ = y] =

  • (t2,...,tℓ)∈{0,1}(ℓ−1)n

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)] =

  • (t2,...,tℓ): (

i∈L ti)=w

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] ·Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)]

slide-66
SLIDE 66

The Information Theoretic Case The Computational Case Actual case

Proving Fact 17(2) Assume wlg. that 1 ∈ (L′ \ L). Pr[RL = w ∧ RL′ = y] =

  • (t2,...,tℓ)∈{0,1}(ℓ−1)n

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)] =

  • (t2,...,tℓ): (

i∈L ti)=w

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] ·Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)] =

  • (t2,...,tℓ): (

i∈L ti)=w

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · 2−n

slide-67
SLIDE 67

The Information Theoretic Case The Computational Case Actual case

Proving Fact 17(2) Assume wlg. that 1 ∈ (L′ \ L). Pr[RL = w ∧ RL′ = y] =

  • (t2,...,tℓ)∈{0,1}(ℓ−1)n

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)] =

  • (t2,...,tℓ): (

i∈L ti)=w

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] ·Pr[RL = w ∧ RL′ = y | (T 2, . . . , T ℓ) = (t2, . . . , tℓ)] =

  • (t2,...,tℓ): (

i∈L ti)=w

Pr[(T 2, . . . , T ℓ) = (t2, . . . , tℓ)] · 2−n = 2−n · 2−n = Pr[RL = w] · Pr[RL′ = y]

slide-68
SLIDE 68

The Information Theoretic Case The Computational Case Actual case

Pairwise independence variables Definition 18 (pairwise independent random variables) A sequence of random variables X 1, . . . , X v is pairwise independent, if ∀i = j ∈ [v] and ∀a, b, it holds that Pr[X i = a ∧ X j = b] = Pr[X i = a] · Pr[X j = b]

slide-69
SLIDE 69

The Information Theoretic Case The Computational Case Actual case

Pairwise independence variables Definition 18 (pairwise independent random variables) A sequence of random variables X 1, . . . , X v is pairwise independent, if ∀i = j ∈ [v] and ∀a, b, it holds that Pr[X i = a ∧ X j = b] = Pr[X i = a] · Pr[X j = b] For every L = L′ ⊆ [ℓ], the rvs RL and RL′ are pairwise independent,

slide-70
SLIDE 70

The Information Theoretic Case The Computational Case Actual case

Pairwise independence variables Definition 18 (pairwise independent random variables) A sequence of random variables X 1, . . . , X v is pairwise independent, if ∀i = j ∈ [v] and ∀a, b, it holds that Pr[X i = a ∧ X j = b] = Pr[X i = a] · Pr[X j = b] For every L = L′ ⊆ [ℓ], the rvs RL and RL′ are pairwise independent, and therefore also W L and W L′ (why?).

slide-71
SLIDE 71

The Information Theoretic Case The Computational Case Actual case

Pairwise independence variables Definition 18 (pairwise independent random variables) A sequence of random variables X 1, . . . , X v is pairwise independent, if ∀i = j ∈ [v] and ∀a, b, it holds that Pr[X i = a ∧ X j = b] = Pr[X i = a] · Pr[X j = b] For every L = L′ ⊆ [ℓ], the rvs RL and RL′ are pairwise independent, and therefore also W L and W L′ (why?). Lemma 19 (Chebyshev’s inequality) Let X 1, . . . , X v be pairwise-independent random variables with expectation µ and variance σ2. Then, for every ε > 0, Pr

  • v

j=1 X j

v − µ

  • ≥ ε
  • ≤ σ2

ε2v

slide-72
SLIDE 72

The Information Theoretic Case The Computational Case Actual case

B’s success provability cont Assuming that B always guesses {b(x, ti)} correctly, then for every L ⊆ [ℓ] E[W L] ≥ 1

2 + 1 q(n)

Var(W L) := E[W L]2 − E[(W L)2] ≤ 1

slide-73
SLIDE 73

The Information Theoretic Case The Computational Case Actual case

B’s success provability cont Assuming that B always guesses {b(x, ti)} correctly, then for every L ⊆ [ℓ] E[W L] ≥ 1

2 + 1 q(n)

Var(W L) := E[W L]2 − E[(W L)2] ≤ 1 Taking ε = 1/2q(n) and v = 2n/ε2 (i.e., ℓ =

  • log(2n/ε2)
  • ),

yields that Pr[mi = xi] = Pr

  • L⊆[ℓ] W L

v > 1 2

  • ≥ 1 − 1

2n (5)

slide-74
SLIDE 74

The Information Theoretic Case The Computational Case Actual case

B’s success provability cont Assuming that B always guesses {b(x, ti)} correctly, then for every L ⊆ [ℓ] E[W L] ≥ 1

2 + 1 q(n)

Var(W L) := E[W L]2 − E[(W L)2] ≤ 1 Taking ε = 1/2q(n) and v = 2n/ε2 (i.e., ℓ =

  • log(2n/ε2)
  • ),

yields that Pr[mi = xi] = Pr

  • L⊆[ℓ] W L

v > 1 2

  • ≥ 1 − 1

2n (5) and by a union bound, B outputs x with probability 1

2.

slide-75
SLIDE 75

The Information Theoretic Case The Computational Case Actual case

B’s success provability cont Assuming that B always guesses {b(x, ti)} correctly, then for every L ⊆ [ℓ] E[W L] ≥ 1

2 + 1 q(n)

Var(W L) := E[W L]2 − E[(W L)2] ≤ 1 Taking ε = 1/2q(n) and v = 2n/ε2 (i.e., ℓ =

  • log(2n/ε2)
  • ),

yields that Pr[mi = xi] = Pr

  • L⊆[ℓ] W L

v > 1 2

  • ≥ 1 − 1

2n (5) and by a union bound, B outputs x with probability 1

2.

Taking the guessing into account, yields that B outputs x with probability at least 2−ℓ−1 ∈ Ω(n/q(n)2).

slide-76
SLIDE 76

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits"

slide-77
SLIDE 77

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits"

slide-78
SLIDE 78

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits" Alternative proof for the LHL. Let X be a rv with over {0, 1}n with H∞(X) ≥ t, and assume that SD((Rn, Rn, X2), (Rn, U1)) > α = 2−c·t for some universal c > 0.

slide-79
SLIDE 79

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits" Alternative proof for the LHL. Let X be a rv with over {0, 1}n with H∞(X) ≥ t, and assume that SD((Rn, Rn, X2), (Rn, U1)) > α = 2−c·t for some universal c > 0. Hence

1

∃ (a possibly inefficient) algorithm D that distinguishes (Rn, Rn, X2) from (Rn, U1) with advantage α

slide-80
SLIDE 80

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits" Alternative proof for the LHL. Let X be a rv with over {0, 1}n with H∞(X) ≥ t, and assume that SD((Rn, Rn, X2), (Rn, U1)) > α = 2−c·t for some universal c > 0. Hence

1

∃ (a possibly inefficient) algorithm D that distinguishes (Rn, Rn, X2) from (Rn, U1) with advantage α

2

∃A that predicts Rn, X2 given Rn with prob

1 2 + α

slide-81
SLIDE 81

The Information Theoretic Case The Computational Case Reflections

Reflections Hardcore functions. Similar ideas allows to output log n “pseudorandom bits" Alternative proof for the LHL. Let X be a rv with over {0, 1}n with H∞(X) ≥ t, and assume that SD((Rn, Rn, X2), (Rn, U1)) > α = 2−c·t for some universal c > 0. Hence

1

∃ (a possibly inefficient) algorithm D that distinguishes (Rn, Rn, X2) from (Rn, U1) with advantage α

2

∃A that predicts Rn, X2 given Rn with prob

1 2 + α

3

(by GL) ∃B that guesses X “from nothing", with prob αO(1) > 2−t

slide-82
SLIDE 82

The Information Theoretic Case The Computational Case Reflections

Reflections cont. List decoding. An efficient encoding C : {0, 1}n → {0, 1}m, and a decoder D. Such that the following holds for any x ∈ {0, 1}n and c of hamming distance 1

2 − δ

from C(x): D(c, δ) outputs a list of size at most poly(1/δ) that

  • whp. contains x
slide-83
SLIDE 83

The Information Theoretic Case The Computational Case Reflections

Reflections cont. List decoding. An efficient encoding C : {0, 1}n → {0, 1}m, and a decoder D. Such that the following holds for any x ∈ {0, 1}n and c of hamming distance 1

2 − δ

from C(x): D(c, δ) outputs a list of size at most poly(1/δ) that

  • whp. contains x

The code we used here is known as the Hadamard code

slide-84
SLIDE 84

The Information Theoretic Case The Computational Case Reflections

Reflections cont. List decoding. An efficient encoding C : {0, 1}n → {0, 1}m, and a decoder D. Such that the following holds for any x ∈ {0, 1}n and c of hamming distance 1

2 − δ

from C(x): D(c, δ) outputs a list of size at most poly(1/δ) that

  • whp. contains x

The code we used here is known as the Hadamard code LPN - learning parity with noise. Find x given polynomially many samples of x, Rn2 + N, where Pr[N = 1] ≤ 1

2 − δ.

slide-85
SLIDE 85

The Information Theoretic Case The Computational Case Reflections

Reflections cont. List decoding. An efficient encoding C : {0, 1}n → {0, 1}m, and a decoder D. Such that the following holds for any x ∈ {0, 1}n and c of hamming distance 1

2 − δ

from C(x): D(c, δ) outputs a list of size at most poly(1/δ) that

  • whp. contains x

The code we used here is known as the Hadamard code LPN - learning parity with noise. Find x given polynomially many samples of x, Rn2 + N, where Pr[N = 1] ≤ 1

2 − δ.

The difference comparing to Goldreich-Levin – no control over the Rn’s.