pseudorandom functions and latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfpseudorandom...

59
Pseudorandom Functions and Lattices Abhishek Banerjee 1 Chris Peikert 1 Alon Rosen 2 1 Georgia Tech 2 IDC Herzliya Faces of Modern Cryptography 9 September 2011 1 / 14

Upload: others

Post on 16-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Pseudorandom Functions and Lattices

Abhishek Banerjee1 Chris Peikert1 Alon Rosen2

1Georgia Tech

2IDC Herzliya

Faces of Modern Cryptography9 September 2011

1 / 14

Page 2: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

2 / 14

Page 3: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Pseudorandom Functions [GGM’84]

I A family F = {Fs : {0, 1}k → D} s.t. given adaptive query access,

Fs ← F c≈ random func U

??

xi Fs(xi) xi U(xi)

(The “seed” or “secret key” for Fs is s.)

I Oodles of applications in symmetric cryptography:(efficient) encryption, identification, authentication, . . .

(Images courtesy xkcd.org) 3 / 14

Page 4: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Pseudorandom Functions [GGM’84]

I A family F = {Fs : {0, 1}k → D} s.t. given adaptive query access,

Fs ← F c≈ random func U

??

xi Fs(xi) xi U(xi)

(The “seed” or “secret key” for Fs is s.)

I Oodles of applications in symmetric cryptography:(efficient) encryption, identification, authentication, . . .

(Images courtesy xkcd.org) 3 / 14

Page 5: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )

7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )

7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]

7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 6: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )

7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]

7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 7: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )

7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]

7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 8: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]

7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 9: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]

7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 10: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

How to Construct PRFs

1 Heuristically: AES, Blowfish.4 Fast!4 Withstand known cryptanalytic techniques (linear, differential, . . . )7 PRF security is subtle: want provable (reductionist) guarantees

2 Goldreich-Goldwasser-Micali [GGM’84]

4 Based on any (doubling) PRG. Fs(x1 · · · xk) = Gxk(· · ·Gx1(s) · · · )7 Inherently sequential: ≥ k iterations (circuit depth)

3 Naor-Reingold / Naor-Reingold-Rosen [NR’95,NR’97,NRR’00]

4 Based on “synthesizers” or number theory (DDH, factoring)4 Low-depth: NC2, NC1 or even TC0 [O(1) depth w/ threshold gates]7 Huge circuits that need mucho preprocessing7 No “post-quantum” construction under standard assumptions

4 / 14

Page 11: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Why Not Try Lattices?

??=⇒ Fs ← F

Advantages of Lattice Crypto Schemes

I Simple & efficient: linear, highly parallel operations

I Resist quantum attacks (so far)

I Secure under worst-case hardness assumptions [Ajtai’96,. . . ]

Disadvantages7 Only known PRF is generic GGM (not parallel or efficient)

77 We don’t even have practical PRGs from lattices: biased errors

5 / 14

Page 12: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Why Not Try Lattices?

??=⇒ Fs ← F

Advantages of Lattice Crypto Schemes

I Simple & efficient: linear, highly parallel operations

I Resist quantum attacks (so far)

I Secure under worst-case hardness assumptions [Ajtai’96,. . . ]

Disadvantages7 Only known PRF is generic GGM (not parallel or efficient)

77 We don’t even have practical PRGs from lattices: biased errors

5 / 14

Page 13: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Why Not Try Lattices?

??=⇒ Fs ← F

Advantages of Lattice Crypto Schemes

I Simple & efficient: linear, highly parallel operations

I Resist quantum attacks (so far)

I Secure under worst-case hardness assumptions [Ajtai’96,. . . ]

Disadvantages7 Only known PRF is generic GGM (not parallel or efficient)

77 We don’t even have practical PRGs from lattices: biased errors

5 / 14

Page 14: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Why Not Try Lattices?

??=⇒ Fs ← F

Advantages of Lattice Crypto Schemes

I Simple & efficient: linear, highly parallel operations

I Resist quantum attacks (so far)

I Secure under worst-case hardness assumptions [Ajtai’96,. . . ]

Disadvantages7 Only known PRF is generic GGM (not parallel or efficient)

77 We don’t even have practical PRGs from lattices: biased errors5 / 14

Page 15: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Our Results

1 Low-depth, relatively small-circuit PRFs from lattices / (ring-)LWE

F Synthesizer-based PRF in TC1 ⊆ NC2 a la [NR’95]

F Direct construction in TC0 ⊆ NC1 analogous to [NR’97,NRR’00]

2 Main technique: “derandomization” of LWE: deterministic errors

Also gives more practical PRGs, GGM-type PRFs, encryption, . . .

6 / 14

Page 16: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Our Results

1 Low-depth, relatively small-circuit PRFs from lattices / (ring-)LWE

F Synthesizer-based PRF in TC1 ⊆ NC2 a la [NR’95]

F Direct construction in TC0 ⊆ NC1 analogous to [NR’97,NRR’00]

2 Main technique: “derandomization” of LWE: deterministic errors

Also gives more practical PRGs, GGM-type PRFs, encryption, . . .

6 / 14

Page 17: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Our Results

1 Low-depth, relatively small-circuit PRFs from lattices / (ring-)LWE

F Synthesizer-based PRF in TC1 ⊆ NC2 a la [NR’95]

F Direct construction in TC0 ⊆ NC1 analogous to [NR’97,NRR’00]

2 Main technique: “derandomization” of LWE: deterministic errors

Also gives more practical PRGs, GGM-type PRFs, encryption, . . .

6 / 14

Page 18: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Our Results

1 Low-depth, relatively small-circuit PRFs from lattices / (ring-)LWE

F Synthesizer-based PRF in TC1 ⊆ NC2 a la [NR’95]

F Direct construction in TC0 ⊆ NC1 analogous to [NR’97,NRR’00]

2 Main technique: “derandomization” of LWE: deterministic errors

Also gives more practical PRGs, GGM-type PRFs, encryption, . . .

6 / 14

Page 19: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

SynthesizerI A deterministic function S : D× D→ D s.t. for any m = poly:

for a1, . . . , am, b1, . . . , bm ← D,

{ S(ai , bj) }c≈ Unif(Dm×m).

b1 b2 · · ·

a1 S(a1, b1) S(a1, b2) · · ·a2 S(a2, b1) S(a2, b2) · · ·...

. . .

vs.U1,1 U1,2 · · ·U2,1 U2,2 · · ·

. . .

I Alternative view: an (almost) length-squaring PRG with locality:maps D2m → Dm2

, and each output depends on only 2 inputs.

7 / 14

Page 20: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

SynthesizerI A deterministic function S : D× D→ D s.t. for any m = poly:

for a1, . . . , am, b1, . . . , bm ← D,

{ S(ai , bj) }c≈ Unif(Dm×m).

b1 b2 · · ·

a1 S(a1, b1) S(a1, b2) · · ·a2 S(a2, b1) S(a2, b2) · · ·...

. . .

vs.U1,1 U1,2 · · ·U2,1 U2,2 · · ·

. . .

I Alternative view: an (almost) length-squaring PRG with locality:maps D2m → Dm2

, and each output depends on only 2 inputs.

7 / 14

Page 21: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

SynthesizerI A deterministic function S : D× D→ D s.t. for any m = poly:

for a1, . . . , am, b1, . . . , bm ← D,

{ S(ai , bj) }c≈ Unif(Dm×m).

b1 b2 · · ·

a1 S(a1, b1) S(a1, b2) · · ·a2 S(a2, b1) S(a2, b2) · · ·...

. . .

vs.U1,1 U1,2 · · ·U2,1 U2,2 · · ·

. . .

I Alternative view: an (almost) length-squaring PRG with locality:maps D2m → Dm2

, and each output depends on only 2 inputs.

7 / 14

Page 22: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

PRF from Synthesizer, Recursively

I Synthesizer S : D× D→ D, where { S(ai , bj) }c≈ Unif(Dm×m).

I Base case: “one-bit” PRF Fs0,s1(x) := sx ∈ D. 4

I Input doubling: given k-bit PRF family F = {F : {0, 1}k → D},define a {0, 1}2k → D function: choose F`,Fr ← F and let

F(F`,Fr)(x` , xr) = S(

F`(x`) , Fr(xr)).

SS

s1,x1s1,0 , s1,1

s2,x2s2,0 , s2,1

Ss3,x3s3,0 , s3,1

s4,x4s4,0 , s4,1

F{si,b}(x1 · · · x4)

I Security: the queries F`(x`) and Fr(xr) define (pseudo)randominputs a1, a2, . . . ∈ D and b1, b2, . . . ∈ D for synthesizer S.

8 / 14

Page 23: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

PRF from Synthesizer, Recursively

I Synthesizer S : D× D→ D, where { S(ai , bj) }c≈ Unif(Dm×m).

I Base case: “one-bit” PRF Fs0,s1(x) := sx ∈ D. 4

I Input doubling: given k-bit PRF family F = {F : {0, 1}k → D},define a {0, 1}2k → D function: choose F`,Fr ← F and let

F(F`,Fr)(x` , xr) = S(

F`(x`) , Fr(xr)).

SS

s1,x1s1,0 , s1,1

s2,x2s2,0 , s2,1

Ss3,x3s3,0 , s3,1

s4,x4s4,0 , s4,1

F{si,b}(x1 · · · x4)

I Security: the queries F`(x`) and Fr(xr) define (pseudo)randominputs a1, a2, . . . ∈ D and b1, b2, . . . ∈ D for synthesizer S.

8 / 14

Page 24: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

PRF from Synthesizer, Recursively

I Synthesizer S : D× D→ D, where { S(ai , bj) }c≈ Unif(Dm×m).

I Base case: “one-bit” PRF Fs0,s1(x) := sx ∈ D. 4

I Input doubling: given k-bit PRF family F = {F : {0, 1}k → D},define a {0, 1}2k → D function: choose F`,Fr ← F and let

F(F`,Fr)(x` , xr) = S(

F`(x`) , Fr(xr)).

SS

s1,x1s1,0 , s1,1

s2,x2s2,0 , s2,1

Ss3,x3s3,0 , s3,1

s4,x4s4,0 , s4,1

F{si,b}(x1 · · · x4)

I Security: the queries F`(x`) and Fr(xr) define (pseudo)randominputs a1, a2, . . . ∈ D and b1, b2, . . . ∈ D for synthesizer S.

8 / 14

Page 25: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

PRF from Synthesizer, Recursively

I Synthesizer S : D× D→ D, where { S(ai , bj) }c≈ Unif(Dm×m).

I Base case: “one-bit” PRF Fs0,s1(x) := sx ∈ D. 4

I Input doubling: given k-bit PRF family F = {F : {0, 1}k → D},define a {0, 1}2k → D function: choose F`,Fr ← F and let

F(F`,Fr)(x` , xr) = S(

F`(x`) , Fr(xr)).

SS

s1,x1s1,0 , s1,1

s2,x2s2,0 , s2,1

Ss3,x3s3,0 , s3,1

s4,x4s4,0 , s4,1

F{si,b}(x1 · · · x4)

I Security: the queries F`(x`) and Fr(xr) define (pseudo)randominputs a1, a2, . . . ∈ D and b1, b2, . . . ∈ D for synthesizer S.

8 / 14

Page 26: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Synthesizers and PRFs [NaorReingold’95]

PRF from Synthesizer, Recursively

I Synthesizer S : D× D→ D, where { S(ai , bj) }c≈ Unif(Dm×m).

I Base case: “one-bit” PRF Fs0,s1(x) := sx ∈ D. 4

I Input doubling: given k-bit PRF family F = {F : {0, 1}k → D},define a {0, 1}2k → D function: choose F`,Fr ← F and let

F(F`,Fr)(x` , xr) = S(

F`(x`) , Fr(xr)).

SS

s1,x1s1,0 , s1,1

s2,x2s2,0 , s2,1

Ss3,x3s3,0 , s3,1

s4,x4s4,0 , s4,1

F{si,b}(x1 · · · x4)

I Security: the queries F`(x`) and Fr(xr) define (pseudo)randominputs a1, a2, . . . ∈ D and b1, b2, . . . ∈ D for synthesizer S.

8 / 14

Page 27: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .7 Where do ei,j come from?

Synthesizer must bedeterministic. . .

9 / 14

Page 28: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .7 Where do ei,j come from?

Synthesizer must bedeterministic. . .

9 / 14

Page 29: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .7 Where do ei,j come from?

Synthesizer must bedeterministic. . .

9 / 14

Page 30: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .7 Where do ei,j come from?

Synthesizer must bedeterministic. . .

9 / 14

Page 31: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .

7 Where do ei,j come from?Synthesizer must bedeterministic. . .

9 / 14

Page 32: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

(Ring) Learning With Errors (RLWE) [Regev’05,LPR’10]

I For (e.g.) n a power of 2, define “cyclotomic” polynomial rings

R := Z[x]/(xn + 1) and Rq := R/qR = Zq[x]/(xn + 1).

I Hard to distinguish m pairs (ai , ai · s + ei) ∈ Rq × Rq from uniform,where ai, s← Rq uniform and ei “short.”

I By hybrid argument, for s1, s2, . . .← Rq can’t distinguish m tuples(ai , ai · s1 + ei,1 , ai · s2 + ei,2 , . . .) from uniform.

An RLWE-Based Synthesizer?

s1 s2 · · ·a1 a1 · s1 + e1,1 a1 · s2 + e1,2 · · ·a2 a2 · s1 + e2,1 a2 · s2 + e2,2 · · ·...

. . .

4 {ai · sj + ei,j}c≈ Uniform,

but. . .7 Where do ei,j come from?

Synthesizer must bedeterministic. . .

9 / 14

Page 33: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 34: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 35: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 36: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 37: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 38: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

“Learning With Rounding” (LWR) [This work]

I IDEA: generate errors deterministically byrounding Zq to a “sparse” subset (e.g. subgroup).

(Common in decryption to remove error.)

Let p < q and define bxep = b(p/q) · xe mod p.

0

1

23

456789

10

11

12

13

1415

16 17 18 19 2021

22

230

1

2

I Ring-LWR problem: distinguish any m = poly pairs(ai , bai · sep

)∈ Rq × Rp from uniform

Interpretation: LWE conceals low-order bits by adding smallrandom error. LWR just discards those bits instead.

I We prove LWE ≤ LWR for q ≥ p · nω(1) [but seems 2n-hard for q ≥ p√

n]

Main idea: w.h.p. ( a , ba · s + eep ) = ( a , ba · sep )and ( a , bUnif(Zq)ep ) = ( a , Unif(Zp) )

10 / 14

Page 39: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

LWR-Based Synthesizer & PRFI Synthesizer S : Rq × Rq → Rp is S(a, s) = ba · sep.

Note: range Rp slightly smaller than domain Rq. (Limits composition.)

PRF on Domain {0, 1}k=2d

I Public moduli qd > qd−1 > · · · > q0.

I Secret key is 2k ring elements si,b ∈ Rqd for i ∈ [k], b ∈ {0, 1}.

I Depth d = lg k tree of LWR synthesizers:

F{si,b}(x1 · · · x8) =⌊⌊bs1,x1 · s2,x2eq2

· bs3,x3 · s4,x4eq2

⌉q1·⌊bs5,x5 · s6,x6eq2

· bs7,x7 · s8,x8eq2

⌉q1

⌉q0

I Craig’s talk: deja vu. . .

11 / 14

Page 40: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

LWR-Based Synthesizer & PRFI Synthesizer S : Rq × Rq → Rp is S(a, s) = ba · sep.

Note: range Rp slightly smaller than domain Rq. (Limits composition.)

PRF on Domain {0, 1}k=2d

I Public moduli qd > qd−1 > · · · > q0.

I Secret key is 2k ring elements si,b ∈ Rqd for i ∈ [k], b ∈ {0, 1}.

I Depth d = lg k tree of LWR synthesizers:

F{si,b}(x1 · · · x8) =⌊⌊bs1,x1 · s2,x2eq2

· bs3,x3 · s4,x4eq2

⌉q1·⌊bs5,x5 · s6,x6eq2

· bs7,x7 · s8,x8eq2

⌉q1

⌉q0

I Craig’s talk: deja vu. . .

11 / 14

Page 41: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

LWR-Based Synthesizer & PRFI Synthesizer S : Rq × Rq → Rp is S(a, s) = ba · sep.

Note: range Rp slightly smaller than domain Rq. (Limits composition.)

PRF on Domain {0, 1}k=2d

I Public moduli qd > qd−1 > · · · > q0.

I Secret key is 2k ring elements si,b ∈ Rqd for i ∈ [k], b ∈ {0, 1}.

I Depth d = lg k tree of LWR synthesizers:

F{si,b}(x1 · · · x8) =⌊⌊bs1,x1 · s2,x2eq2

· bs3,x3 · s4,x4eq2

⌉q1·⌊bs5,x5 · s6,x6eq2

· bs7,x7 · s8,x8eq2

⌉q1

⌉q0

I Craig’s talk: deja vu. . .

11 / 14

Page 42: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

LWR-Based Synthesizer & PRFI Synthesizer S : Rq × Rq → Rp is S(a, s) = ba · sep.

Note: range Rp slightly smaller than domain Rq. (Limits composition.)

PRF on Domain {0, 1}k=2d

I Public moduli qd > qd−1 > · · · > q0.

I Secret key is 2k ring elements si,b ∈ Rqd for i ∈ [k], b ∈ {0, 1}.

I Depth d = lg k tree of LWR synthesizers:

F{si,b}(x1 · · · x8) =⌊⌊bs1,x1 · s2,x2eq2

· bs3,x3 · s4,x4eq2

⌉q1·⌊bs5,x5 · s6,x6eq2

· bs7,x7 · s8,x8eq2

⌉q1

⌉q0

I Craig’s talk: deja vu. . .

11 / 14

Page 43: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Shallower? More Efficient?I Synth-based PRF is log k levels of NC1 synthesizers⇒ NC2.

I [NR’97,NRR’00]: direct PRFs from DDH / factoring, in TC0 ⊆ NC1.

Fg,s1,...,sk(x1 · · · xk) = g∏

sxii

(Computing this in TC0 needs huge circuits, though. . . )

Direct LWE-Based ConstructionI Public moduli q > p.I Secret key is uniform a← Rq and short s1, . . . , sk ∈ R.

I “Rounded subset-product” function:

Fa,s1,...,sk(x1 · · · xk) =

⌊a ·

k∏i=1

sxii mod q

⌉p

Has small(ish) TC0 circuit, via CRT and reduction to subset-sum.

12 / 14

Page 44: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Shallower? More Efficient?I Synth-based PRF is log k levels of NC1 synthesizers⇒ NC2.

I [NR’97,NRR’00]: direct PRFs from DDH / factoring, in TC0 ⊆ NC1.

Fg,s1,...,sk(x1 · · · xk) = g∏

sxii

(Computing this in TC0 needs huge circuits, though. . . )

Direct LWE-Based ConstructionI Public moduli q > p.I Secret key is uniform a← Rq and short s1, . . . , sk ∈ R.

I “Rounded subset-product” function:

Fa,s1,...,sk(x1 · · · xk) =

⌊a ·

k∏i=1

sxii mod q

⌉p

Has small(ish) TC0 circuit, via CRT and reduction to subset-sum.

12 / 14

Page 45: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Shallower? More Efficient?I Synth-based PRF is log k levels of NC1 synthesizers⇒ NC2.

I [NR’97,NRR’00]: direct PRFs from DDH / factoring, in TC0 ⊆ NC1.

Fg,s1,...,sk(x1 · · · xk) = g∏

sxii

(Computing this in TC0 needs huge circuits, though. . . )

Direct LWE-Based ConstructionI Public moduli q > p.I Secret key is uniform a← Rq and short s1, . . . , sk ∈ R.

I “Rounded subset-product” function:

Fa,s1,...,sk(x1 · · · xk) =

⌊a ·

k∏i=1

sxii mod q

⌉p

Has small(ish) TC0 circuit, via CRT and reduction to subset-sum.

12 / 14

Page 46: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Shallower? More Efficient?I Synth-based PRF is log k levels of NC1 synthesizers⇒ NC2.

I [NR’97,NRR’00]: direct PRFs from DDH / factoring, in TC0 ⊆ NC1.

Fg,s1,...,sk(x1 · · · xk) = g∏

sxii

(Computing this in TC0 needs huge circuits, though. . . )

Direct LWE-Based ConstructionI Public moduli q > p.I Secret key is uniform a← Rq and short s1, . . . , sk ∈ R.I “Rounded subset-product” function:

Fa,s1,...,sk(x1 · · · xk) =

⌊a ·

k∏i=1

sxii mod q

⌉p

Has small(ish) TC0 circuit, via CRT and reduction to subset-sum.

12 / 14

Page 47: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Shallower? More Efficient?I Synth-based PRF is log k levels of NC1 synthesizers⇒ NC2.

I [NR’97,NRR’00]: direct PRFs from DDH / factoring, in TC0 ⊆ NC1.

Fg,s1,...,sk(x1 · · · xk) = g∏

sxii

(Computing this in TC0 needs huge circuits, though. . . )

Direct LWE-Based ConstructionI Public moduli q > p.I Secret key is uniform a← Rq and short s1, . . . , sk ∈ R.I “Rounded subset-product” function:

Fa,s1,...,sk(x1 · · · xk) =

⌊a ·

k∏i=1

sxii mod q

⌉p

Has small(ish) TC0 circuit, via CRT and reduction to subset-sum.

12 / 14

Page 48: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Proof OutlineI Seed is uniform a ∈ Rq and short s1, . . . , sk ∈ R.

Fa,s1,...,sk(x1 · · · xk) =⌊a · sx1

1 · · · sxkk mod q

⌉p

I Like the LWE ≤ LWR proof, but “souped up” to handle queries.

Thought experiment: answer queries with

F̃(x) :=⌊(a · sx1

1 + x1 ·ex1) · sx22 · · · s

xkk

⌉p =

⌊a

k∏i=1

sxii + x1 ·ex1 ·

k∏i=2

sxii

⌉p

W.h.p., F̃(x) = F(x) on all queries due to “small” error & rounding.

I Replace (a, a · s1 + ex1) with uniform (a0, a1) [ring-LWE].

⇒ New function F′(x) = bax1 · sx22 · · · s

xkk ep.

I Repeat for s2, s3, . . . until F′′′′′′(x) = baxep = Uniform func. �

13 / 14

Page 49: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Proof OutlineI Seed is uniform a ∈ Rq and short s1, . . . , sk ∈ R.

Fa,s1,...,sk(x1 · · · xk) =⌊a · sx1

1 · · · sxkk mod q

⌉p

I Like the LWE ≤ LWR proof, but “souped up” to handle queries.

Thought experiment: answer queries with

F̃(x) :=⌊(a · sx1

1 + x1 ·ex1) · sx22 · · · s

xkk

⌉p =

⌊a

k∏i=1

sxii + x1 ·ex1 ·

k∏i=2

sxii

⌉p

W.h.p., F̃(x) = F(x) on all queries due to “small” error & rounding.

I Replace (a, a · s1 + ex1) with uniform (a0, a1) [ring-LWE].

⇒ New function F′(x) = bax1 · sx22 · · · s

xkk ep.

I Repeat for s2, s3, . . . until F′′′′′′(x) = baxep = Uniform func. �

13 / 14

Page 50: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Proof OutlineI Seed is uniform a ∈ Rq and short s1, . . . , sk ∈ R.

Fa,s1,...,sk(x1 · · · xk) =⌊a · sx1

1 · · · sxkk mod q

⌉p

I Like the LWE ≤ LWR proof, but “souped up” to handle queries.Thought experiment: answer queries with

F̃(x) :=⌊(a · sx1

1 + x1 ·ex1) · sx22 · · · s

xkk

⌉p =

⌊a

k∏i=1

sxii + x1 ·ex1 ·

k∏i=2

sxii

⌉p

W.h.p., F̃(x) = F(x) on all queries due to “small” error & rounding.

I Replace (a, a · s1 + ex1) with uniform (a0, a1) [ring-LWE].

⇒ New function F′(x) = bax1 · sx22 · · · s

xkk ep.

I Repeat for s2, s3, . . . until F′′′′′′(x) = baxep = Uniform func. �

13 / 14

Page 51: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Proof OutlineI Seed is uniform a ∈ Rq and short s1, . . . , sk ∈ R.

Fa,s1,...,sk(x1 · · · xk) =⌊a · sx1

1 · · · sxkk mod q

⌉p

I Like the LWE ≤ LWR proof, but “souped up” to handle queries.Thought experiment: answer queries with

F̃(x) :=⌊(a · sx1

1 + x1 ·ex1) · sx22 · · · s

xkk

⌉p =

⌊a

k∏i=1

sxii + x1 ·ex1 ·

k∏i=2

sxii

⌉p

W.h.p., F̃(x) = F(x) on all queries due to “small” error & rounding.

I Replace (a, a · s1 + ex1) with uniform (a0, a1) [ring-LWE].

⇒ New function F′(x) = bax1 · sx22 · · · s

xkk ep.

I Repeat for s2, s3, . . . until F′′′′′′(x) = baxep = Uniform func. �

13 / 14

Page 52: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Proof OutlineI Seed is uniform a ∈ Rq and short s1, . . . , sk ∈ R.

Fa,s1,...,sk(x1 · · · xk) =⌊a · sx1

1 · · · sxkk mod q

⌉p

I Like the LWE ≤ LWR proof, but “souped up” to handle queries.Thought experiment: answer queries with

F̃(x) :=⌊(a · sx1

1 + x1 ·ex1) · sx22 · · · s

xkk

⌉p =

⌊a

k∏i=1

sxii + x1 ·ex1 ·

k∏i=2

sxii

⌉p

W.h.p., F̃(x) = F(x) on all queries due to “small” error & rounding.

I Replace (a, a · s1 + ex1) with uniform (a0, a1) [ring-LWE].

⇒ New function F′(x) = bax1 · sx22 · · · s

xkk ep.

I Repeat for s2, s3, . . . until F′′′′′′(x) = baxep = Uniform func. �

13 / 14

Page 53: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 54: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 55: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 56: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 57: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 58: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14

Page 59: Pseudorandom Functions and Latticesweb.eecs.umich.edu/~cpeikert/pubs/slides-prf.pdfPseudorandom Functions [GGM’84] IA family F= fF s: f0;1gk!Dgs.t. givenadaptive query access, F

Open Questions1 Better (worst-case) hardness for LWR, e.g. for q/p =

√n?

(The proof from LWE relies on approx factor and modulus = nω(1).)

2 Synth-based PRF relies on approx factor and modulus = nΘ(log k).Direct construction relies on approx factor and modulus = nΘ(k).

Are such strong assumptions necessary (even for these constructions)?

Conjecture (?): direct PRF is secure for integral q/p = poly(n).

3 Efficient PRF from parity with noise (LPN)?

4 Efficient PRF from subset sum?

Thanks!Full paper: ePrint report #2011/401

14 / 14