+ All Categories
Home > Documents > Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and...

Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and...

Date post: 17-Mar-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
94
Session #9: Trapdoors and Applications Chris Peikert Georgia Institute of Technology Winter School on Lattice-Based Cryptography and Applications Bar-Ilan University, Israel 19 Feb 2012 – 22 Feb 2012 Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 1/19
Transcript
Page 1: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Session #9:Trapdoors and Applications

Chris PeikertGeorgia Institute of Technology

Winter School on Lattice-Based Cryptography and ApplicationsBar-Ilan University, Israel

19 Feb 2012 – 22 Feb 2012

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 1/19

Page 2: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Agenda

1 Lattices and short ‘trapdoor’ bases

2 Lattice-based ‘preimage sampleable’ functions

3 Applications: signatures, ID-based encryption (in RO model)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 2/19

Page 3: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Digital Signatures

(Images courtesy xkcd.org)Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 3/19

Page 4: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Digital Signatures

(secret)

(public)

(Images courtesy xkcd.org)Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 3/19

Page 5: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Digital Signatures

(secret)

(public)

“I love you” 4

(Images courtesy xkcd.org)Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 3/19

Page 6: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Digital Signatures

(secret)

(public)

“It’s over” 7

(Images courtesy xkcd.org)Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 3/19

Page 7: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 8: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I Trapdoor permutation [DH’76,RSA’77,. . . ] (PSF)

D D

xy

f

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 9: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I Trapdoor permutation [DH’76,RSA’77,. . . ] (PSF)

D D

xy

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 10: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I Trapdoor permutation [DH’76,RSA’77,. . . ] (PSF)

D D

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 11: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I Trapdoor permutation [DH’76,RSA’77,. . . ] (PSF)

D D

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 12: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I Trapdoor permutation [DH’76,RSA’77,. . . ] (PSF)

D D

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

I Candidate TDPs: [RSA’78,Rabin’79,Paillier’99] (‘general assumption’)

All rely on hardness of factoring:

7 Complex: 2048-bit exponentiation

7 Broken by quantum algorithms [Shor’97]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 13: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

D R

xy

f

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 14: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

D R

xy

f

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 15: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

D R

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 16: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

D R

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 17: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Central Tool: Trapdoor Functions

I Public function f generated with secret ‘trapdoor’ f−1

I New twist [GPV’08]: preimage sampleable trapdoor function (PSF)

D R

xy

f−1

I ‘Hash and sign:’ pk = f , sk = f−1. Sign(msg) = f−1(H(msg)).

I Still secure! Can generate (x, y) in two equivalent ways:

REALITY PROOF

Ryx

f−1

D x y

f

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 4/19

Page 18: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Part 1:

Constructing Preimage SampleableTrapdoor Functions (PSFs)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 5/19

Page 19: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

b1

b2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 20: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 21: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 22: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 23: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 24: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 25: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 26: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 27: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

b1

b2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 28: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

b1

b2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 29: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Heuristic TDF & Signature Scheme [GGH’96]

I Key idea: pk = ‘bad’ basis B for L, sk = ‘short’ trapdoor basis S

I Sign H(msg) ∈ Rn with “nearest-plane” algorithm [Babai’86]

s1

s2

Technical Issues

1 Generating ‘hard’ lattice together with short basis (later)

2 Signing algorithm leaks secret basis!F Total break after several signatures [NguyenRegev’06]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 6/19

Page 30: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

‘Uniform’ in Rn when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 31: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

‘Uniform’ in Rn when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 32: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

‘Uniform’ in Rn when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 33: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

‘Uniform’ in Rn when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 34: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

Gaussian mod L is uniform when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 35: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

Gaussian mod L is uniform when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 36: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Blurring a Lattice

Gaussian mod L is uniform when std dev ≥ max length of some basis

I First used in worst/average-case reductions [Regev’03,MR’04,. . . ]

I Now an essential ingredient in many crypto schemes [GPV’08,. . . ]

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 7/19

Page 37: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampleable TDF: Evaluationf

I ‘Hard’ description of L specifies f .

Concretely: SIS matrix A defines fA.

I f(x) = x mod L for Gaussian x.

Concretely: fA(x) = Ax = u ∈ Znq .

I Inverting ⇔ decoding syndrome u⇔ solving SIS.

O

(0, q)

(q, 0)

I Given u, conditional distrib. of x is the discrete Gaussian DLu .

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 8/19

Page 38: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampleable TDF: Evaluationf

I ‘Hard’ description of L specifies f .

Concretely: SIS matrix A defines fA.

I f(x) = x mod L for Gaussian x.

Concretely: fA(x) = Ax = u ∈ Znq .

I Inverting ⇔ decoding syndrome u⇔ solving SIS.

O

(0, q)

(q, 0)

x

I Given u, conditional distrib. of x is the discrete Gaussian DLu .

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 8/19

Page 39: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampleable TDF: Evaluationf

I ‘Hard’ description of L specifies f .

Concretely: SIS matrix A defines fA.

I f(x) = x mod L for Gaussian x.

Concretely: fA(x) = Ax = u ∈ Znq .

I Inverting ⇔ decoding syndrome u⇔ solving SIS.

O

(0, q)

(q, 0)

x

I Given u, conditional distrib. of x is the discrete Gaussian DLu .

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 8/19

Page 40: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampleable TDF: Evaluationf

I ‘Hard’ description of L specifies f .

Concretely: SIS matrix A defines fA.

I f(x) = x mod L for Gaussian x.

Concretely: fA(x) = Ax = u ∈ Znq .

I Inverting ⇔ decoding syndrome u⇔ solving SIS.

O

(0, q)

(q, 0)

x

I Given u, conditional distrib. of x is the discrete Gaussian DLu .

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 8/19

Page 41: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 42: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 43: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 44: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 45: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

x

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 46: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Preimage Sampling: Method #1f−1

I Sample DLu given any ‘short enough’ basis S: max‖si‖ ≤ std dev

F Unlike [GGH’96], output distribution leaks no information about S !

I “Nearest-plane” algorithm with randomized rounding [Klein’00,GPV’08]

coset Lu

s1

s2

O

x

I Proof idea: DLu(plane) depends only on dist(0, plane);not affected by shift within plane

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 9/19

Page 47: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 48: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 49: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 50: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 51: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 52: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 53: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 54: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Performance of Nearest-Plane Method?

Good News, and Bad News. . .

4 Tight: std dev ≈ max‖si‖ = max dist between adjacent planes

7 Not efficient: runtime = Ω(n3), high-precision arithmetic

7 Inherently sequential: n adaptive iterations

7 No efficiency improvement in the ring setting [NTRU’98,M’02,. . . ]

A Different Sampling Algorithm [P’10]

I Simple & efficient: n2 online adds and mults (mod q)

Even better: O(n) time in the ring setting

I Fully parallel: n2/P operations on any P ≤ n2 processors

I High quality: same∗ Gaussian std dev as nearest-plane alg∗in cryptographic applications

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 10/19

Page 55: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)

$

. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 56: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)

$

. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 57: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)$. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 58: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)$. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 59: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)$. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 60: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

A First Attempt

I [Babai’86] ‘simple rounding:’ c 7→ S · frac(S−1 · c)$. (Fast & parallel!)

I Deterministic rounding is insecure [NR’06] . . .

. . . but what about randomized rounding?

s1

s2

O coset L + c

I Non-spherical discrete Gaussian: has covariance

Σ := Ex

[x · xt

]≈ S · St.

Covariance can be measured — and it leaks S! (up to rotation)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 11/19

Page 61: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 62: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 63: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 64: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 65: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 66: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Inspiration: Some Facts About Gaussians

1 Continuous Gaussian ↔ positive definite covariance matrix Σ.

(pos def means: ut Σu > 0 for all unit u.)

Spherical Gaussian ↔ covariance s2 I.

2 Convolution of Gaussians:

+ =

Σ1 + Σ2 = Σ = s2 I

3 Given Σ1, how small can s be? For Σ2 := s2 I− Σ1,

ut Σ2 u = s2 − ut Σ1 u > 0 ⇐⇒ s2 > maxλi(Σ1)

For Σ1 = SSt, can use any s > s1(S) := max singular val of S.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 12/19

Page 67: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt

Σ2

s1

s2

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 68: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 69: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 70: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Convolution∗ Theorem

Algorithm generates a spherical discrete Gaussian over L+ c.

(∗technically not a convolution, since step 2 depends on step 1.)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 71: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Convolution∗ Theorem

Algorithm generates a spherical discrete Gaussian over L+ c.

(∗technically not a convolution, since step 2 depends on step 1.)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 72: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Optimizations

1 Precompute perturbations offline

2 Batch multi-sample using fast matrix multiplication

3 More tricks & simplifications for SIS lattices (next talk)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 73: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Optimizations

1 Precompute perturbations offline

2 Batch multi-sample using fast matrix multiplication

3 More tricks & simplifications for SIS lattices (next talk)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 74: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

‘Convolution’ Sampling Algorithm [P’10]

I Given basis S, coset L+ c, and std dev s > s1(S),

1 Generate perturbation p with covariance Σ2 := s2 I− Σ1 > 0

2 Randomly simple-round p to L+ c

Σ1 = SSt Σ2

s1

s2

p

Optimizations

1 Precompute perturbations offline

2 Batch multi-sample using fast matrix multiplication

3 More tricks & simplifications for SIS lattices (next talk)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 13/19

Page 75: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Part 2:

Identity-Based Encryption

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 14/19

Page 76: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Identity-Based Encryption

I Proposed by [Shamir’84]: could this exist?

mpk (msk)

Enc(mpk, “Alice”, msg)

skAlice skBobbi

skCarol

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 15/19

Page 77: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Identity-Based Encryption

I Proposed by [Shamir’84]: could this exist?

mpk (msk)

Enc(mpk, “Alice”, msg)

skAlice skBobbi

skCarol

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 15/19

Page 78: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Identity-Based Encryption

I Proposed by [Shamir’84]: could this exist?

mpk (msk)

Enc(mpk, “Alice”, msg)

skAlice skBobbi

skCarol

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 15/19

Page 79: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Identity-Based Encryption

I Proposed by [Shamir’84]: could this exist?

mpk (msk)

?? ??

Enc(mpk, “Alice”, msg)

skAlice skBobbi

skCarol

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 15/19

Page 80: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Fast-Forward 17 Years. . .

1 [BonehFranklin’01,. . . ]: first IBE construction, using “new math”(elliptic curves w/ bilinear pairings)

2 [Cocks’01,BGH’07]: quadratic residuosity mod N = pq [GM’82]

3 [GPV’08]: lattices!

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 16/19

Page 81: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Fast-Forward 17 Years. . .

1 [BonehFranklin’01,. . . ]: first IBE construction, using “new math”(elliptic curves w/ bilinear pairings)

2 [Cocks’01,BGH’07]: quadratic residuosity mod N = pq [GM’82]

3 [GPV’08]: lattices!

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 16/19

Page 82: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Fast-Forward 17 Years. . .

1 [BonehFranklin’01,. . . ]: first IBE construction, using “new math”(elliptic curves w/ bilinear pairings)

2 [Cocks’01,BGH’07]: quadratic residuosity mod N = pq [GM’82]

3 [GPV’08]: lattices!

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 16/19

Page 83: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss

s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 84: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss

s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 85: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 86: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2

b′ = st u + e′ + bit · q2(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 87: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 88: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 89: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

Recall: ‘Dual’ LWE Cryptosystem

A

x← Gauss s, e

u = Ax = fA(x)

(public key)

bt = stA + et

(ciphertext ‘preamble’)

b′−bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

? (A,u,b, b′)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 17/19

Page 90: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

ID-Based Encryption

mpk = A

s, e

u = H(“Alice”)

(‘identity’ public key)

b = stA + et

(ciphertext preamble)

b′ − bt x ≈ bit · q2b′ = st u + e′ + bit · q2

(‘payload’)

x← f−1A (u)

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 18/19

Page 91: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

When We Come Back. . .

I Generating trapdoors (A with short basis)

I Removing the random oracle from signatures & IBE

I More surprising applications

Selected bibliography for this talk:

MR’04 D. Micciancio and O. Regev, “Worst-Case to Average-Case ReductionsBased on Gaussian Measures,” FOCS’04 / SICOMP’07.

GPV’08 C. Gentry, C. Peikert, V. Vaikuntanathan, “Trapdoors for Hard Latticesand New Cryptographic Constructions,” STOC’08.

P’10 C. Peikert, “An Efficient and Parallel Gaussian Sampler for Lattices,”Crypto’10.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 19/19

Page 92: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

When We Come Back. . .

I Generating trapdoors (A with short basis)

I Removing the random oracle from signatures & IBE

I More surprising applications

Selected bibliography for this talk:

MR’04 D. Micciancio and O. Regev, “Worst-Case to Average-Case ReductionsBased on Gaussian Measures,” FOCS’04 / SICOMP’07.

GPV’08 C. Gentry, C. Peikert, V. Vaikuntanathan, “Trapdoors for Hard Latticesand New Cryptographic Constructions,” STOC’08.

P’10 C. Peikert, “An Efficient and Parallel Gaussian Sampler for Lattices,”Crypto’10.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 19/19

Page 93: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

When We Come Back. . .

I Generating trapdoors (A with short basis)

I Removing the random oracle from signatures & IBE

I More surprising applications

Selected bibliography for this talk:

MR’04 D. Micciancio and O. Regev, “Worst-Case to Average-Case ReductionsBased on Gaussian Measures,” FOCS’04 / SICOMP’07.

GPV’08 C. Gentry, C. Peikert, V. Vaikuntanathan, “Trapdoors for Hard Latticesand New Cryptographic Constructions,” STOC’08.

P’10 C. Peikert, “An Efficient and Parallel Gaussian Sampler for Lattices,”Crypto’10.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 19/19

Page 94: Session #9: Trapdoors and Applicationscpeikert/pubs/slides-barilan9.pdf · Agenda 1 Lattices and short ‘trapdoor’ bases 2 Lattice-based ‘preimage sampleable’ functions 3 Applications:

When We Come Back. . .

I Generating trapdoors (A with short basis)

I Removing the random oracle from signatures & IBE

I More surprising applications

Selected bibliography for this talk:

MR’04 D. Micciancio and O. Regev, “Worst-Case to Average-Case ReductionsBased on Gaussian Measures,” FOCS’04 / SICOMP’07.

GPV’08 C. Gentry, C. Peikert, V. Vaikuntanathan, “Trapdoors for Hard Latticesand New Cryptographic Constructions,” STOC’08.

P’10 C. Peikert, “An Efficient and Parallel Gaussian Sampler for Lattices,”Crypto’10.

Lattice-Based Crypto & Applications, Bar-Ilan University, Israel 2012 19/19


Recommended