Ideal Lattices and Ring-LWE: Overview and Open Problems Chris - - PowerPoint PPT Presentation

ideal lattices and ring lwe overview and open problems
SMART_READER_LITE
LIVE PREVIEW

Ideal Lattices and Ring-LWE: Overview and Open Problems Chris - - PowerPoint PPT Presentation

Ideal Lattices and Ring-LWE: Overview and Open Problems Chris Peikert Georgia Institute of Technology ICERM 23 April 2015 1 / 16 Agenda 1 Ring-LWE and its hardness from ideal lattices 2 Open questions Selected bibliography: LPR10 V.


slide-1
SLIDE 1

Ideal Lattices and Ring-LWE: Overview and Open Problems Chris Peikert

Georgia Institute of Technology ICERM 23 April 2015

1 / 16

slide-2
SLIDE 2

Agenda

1 Ring-LWE and its hardness from ideal lattices 2 Open questions

Selected bibliography:

LPR’10 V. Lyubashevsky, C. Peikert, O. Regev. “On Ideal Lattices and Learning with Errors Over Rings,” Eurocrypt’10 and JACM’13. LPR’13 V. Lyubashevsky, C. Peikert, O. Regev. “A Toolkit for Ring-LWE Cryptography,” Eurocrypt’13.

2 / 16

slide-3
SLIDE 3

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient)

3 / 16

slide-4
SLIDE 4

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient) 1996 NTRU efficient ring-based encryption (heuristic security)

3 / 16

slide-5
SLIDE 5

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient) 1996 NTRU efficient ring-based encryption (heuristic security) 2002 Micciancio’s ring-based one-way function with worst-case hardness (no encryption)

3 / 16

slide-6
SLIDE 6

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient) 1996 NTRU efficient ring-based encryption (heuristic security) 2002 Micciancio’s ring-based one-way function with worst-case hardness (no encryption) 2005 Regev’s LWE: encryption with worst-case hardness (inefficient)

3 / 16

slide-7
SLIDE 7

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient) 1996 NTRU efficient ring-based encryption (heuristic security) 2002 Micciancio’s ring-based one-way function with worst-case hardness (no encryption) 2005 Regev’s LWE: encryption with worst-case hardness (inefficient) 2008– Countless applications of LWE (still inefficient)

3 / 16

slide-8
SLIDE 8

A Brief, Selective History of Lattice Cryptography

1996 Ajtai’s worst-case/average-case reduction, one-way function & public-key encryption (very inefficient) 1996 NTRU efficient ring-based encryption (heuristic security) 2002 Micciancio’s ring-based one-way function with worst-case hardness (no encryption) 2005 Regev’s LWE: encryption with worst-case hardness (inefficient) 2008– Countless applications of LWE (still inefficient) 2010 Ring-LWE: efficient encryption, worst-case hardness ()

3 / 16

slide-9
SLIDE 9

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n).

4 / 16

slide-10
SLIDE 10

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

a1 ← Zn

q

, b1 ≈ a1 , s mod q a2 ← Zn

q

, b2 ≈ a2 , s mod q . . .

4 / 16

slide-11
SLIDE 11

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

a1 ← Zn

q

, b1 = a1 , s + e1 ∈ Zq a2 ← Zn

q

, b2 = a2 , s + e2 ∈ Zq . . .

√n ≤ error ≪ q

4 / 16

slide-12
SLIDE 12

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

    . . . A . . .     ,     . . . b . . .     = As + e

√n ≤ error ≪ q

4 / 16

slide-13
SLIDE 13

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

    . . . A . . .     ,     . . . b . . .     = As + e

√n ≤ error ≪ q

◮ Decision: distinguish (A , b) from uniform (A , b)

4 / 16

slide-14
SLIDE 14

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

    . . . A . . .     ,     . . . b . . .     = As + e

√n ≤ error ≪ q

◮ Decision: distinguish (A , b) from uniform (A , b)

LWE is Hard (. . . maybe even for quantum!)

worst case lattice problems ≤

(quantum [R’05])

search-LWE ≤

[BFKL’93,R’05,. . . ]

decision-LWE ≤ crypto

4 / 16

slide-15
SLIDE 15

Learning With Errors

[Regev’05]

◮ Parameters: dimension n, modulus q = poly(n). ◮ Search: find secret s ∈ Zn

q given many ‘noisy inner products’

    . . . A . . .     ,     . . . b . . .     = As + e

√n ≤ error ≪ q

◮ Decision: distinguish (A , b) from uniform (A , b)

LWE is Hard (. . . maybe even for quantum!)

worst case lattice problems ≤

(quantum [R’05])

search-LWE ≤

[BFKL’93,R’05,. . . ]

decision-LWE ≤ crypto ◮ Also a classical reduction for search-LWE [P’09,BLPRS’13]

4 / 16

slide-16
SLIDE 16

LWE is Versatile

What kinds of crypto can we do with LWE?

5 / 16

slide-17
SLIDE 17

LWE is Versatile

What kinds of crypto can we do with LWE? Public Key Encryption and Oblivious Transfer

[R’05,PVW’08]

Actively Secure PKE (w/o RO)

[PW’08,P’09,MP’12]

5 / 16

slide-18
SLIDE 18

LWE is Versatile

What kinds of crypto can we do with LWE? Public Key Encryption and Oblivious Transfer

[R’05,PVW’08]

Actively Secure PKE (w/o RO)

[PW’08,P’09,MP’12]

Identity-Based Encryption (in RO model)

[GPV’08]

Hierarchical ID-Based Encryption (w/o RO)

[CHKP’10,ABB’10]

5 / 16

slide-19
SLIDE 19

LWE is Versatile

What kinds of crypto can we do with LWE? Public Key Encryption and Oblivious Transfer

[R’05,PVW’08]

Actively Secure PKE (w/o RO)

[PW’08,P’09,MP’12]

Identity-Based Encryption (in RO model)

[GPV’08]

Hierarchical ID-Based Encryption (w/o RO)

[CHKP’10,ABB’10]

Leakage-Resilient Crypto

[AGV’09,DGKPV’10,GKPV’10,ADNSWW’10,. . . ]

Fully Homomorphic Encryption

[BV’11,BGV’12,GSW’13,. . . ]

Attribute-Based Encryption

[AFV’11,GVW’13,BGG+’14,. . . ]

Symmetric-Key Primitives

[BPR’12,BMLR’13,BP’14,. . . ]

Other Exotic Encryption

[ACPS’09,BHHI’10,OP’10,. . . ]

the list goes on. . .

5 / 16

slide-20
SLIDE 20

LWE is (Sort Of) Efficient

  • · · · ai · · ·

   . . . s . . .     + e = b ∈ Zq ◮ Getting one pseudorandom scalar requires an n-dim inner product mod q

6 / 16

slide-21
SLIDE 21

LWE is (Sort Of) Efficient

  • · · · ai · · ·

   . . . s . . .     + e = b ∈ Zq ◮ Getting one pseudorandom scalar requires an n-dim inner product mod q ◮ Can amortize each ai over many secrets sj, but still ˜ O(n) work per scalar output.

6 / 16

slide-22
SLIDE 22

LWE is (Sort Of) Efficient

  • · · · ai · · ·

   . . . s . . .     + e = b ∈ Zq ◮ Getting one pseudorandom scalar requires an n-dim inner product mod q ◮ Can amortize each ai over many secrets sj, but still ˜ O(n) work per scalar output. ◮ Cryptosystems have rather large keys: pk =     . . . A . . .    

  • n

,     . . . b . . .            Ω(n)

6 / 16

slide-23
SLIDE 23

LWE is (Sort Of) Efficient

  • · · · ai · · ·

   . . . s . . .     + e = b ∈ Zq ◮ Getting one pseudorandom scalar requires an n-dim inner product mod q ◮ Can amortize each ai over many secrets sj, but still ˜ O(n) work per scalar output. ◮ Cryptosystems have rather large keys: pk =     . . . A . . .    

  • n

,     . . . b . . .            Ω(n) ◮ Can fix A for all users, but still ≥ n2 work to encrypt & decrypt an n-bit message

6 / 16

slide-24
SLIDE 24

Wishful Thinking. . .

    . . . ai . . .    ⋆     . . . s . . .    +     . . . ei . . .     =     . . . bi . . .     ∈ Zn

q

◮ Get n pseudorandom scalars from just one (cheap) product operation?

7 / 16

slide-25
SLIDE 25

Wishful Thinking. . .

    . . . ai . . .    ⋆     . . . s . . .    +     . . . ei . . .     =     . . . bi . . .     ∈ Zn

q

◮ Get n pseudorandom scalars from just one (cheap) product operation?

Question

◮ How to define the product ‘⋆’ so that (ai, bi) is pseudorandom?

7 / 16

slide-26
SLIDE 26

Wishful Thinking. . .

    . . . ai . . .    ⋆     . . . s . . .    +     . . . ei . . .     =     . . . bi . . .     ∈ Zn

q

◮ Get n pseudorandom scalars from just one (cheap) product operation?

Question

◮ How to define the product ‘⋆’ so that (ai, bi) is pseudorandom? ◮ Careful! With small error, coordinate-wise multiplication is insecure!

7 / 16

slide-27
SLIDE 27

Wishful Thinking. . .

    . . . ai . . .    ⋆     . . . s . . .    +     . . . ei . . .     =     . . . bi . . .     ∈ Zn

q

◮ Get n pseudorandom scalars from just one (cheap) product operation?

Question

◮ How to define the product ‘⋆’ so that (ai, bi) is pseudorandom? ◮ Careful! With small error, coordinate-wise multiplication is insecure!

Answer

◮ ‘⋆’ = multiplication in a polynomial ring: e.g., Zq[X]/(Xn + 1). Fast and practical with FFT: n log n operations mod q.

7 / 16

slide-28
SLIDE 28

Wishful Thinking. . .

    . . . ai . . .    ⋆     . . . s . . .    +     . . . ei . . .     =     . . . bi . . .     ∈ Zn

q

◮ Get n pseudorandom scalars from just one (cheap) product operation?

Question

◮ How to define the product ‘⋆’ so that (ai, bi) is pseudorandom? ◮ Careful! With small error, coordinate-wise multiplication is insecure!

Answer

◮ ‘⋆’ = multiplication in a polynomial ring: e.g., Zq[X]/(Xn + 1). Fast and practical with FFT: n log n operations mod q. ◮ Same ring structures used in NTRU cryptosystem [HPS’98], & in compact one-way / CR hash functions [Mic’02,PR’06,LM’06,. . . ]

7 / 16

slide-29
SLIDE 29

LWE Over Rings, Over Simplified

◮ Let R = Z[X]/(Xn + 1) for n a power of two, and Rq = R/qR

8 / 16

slide-30
SLIDE 30

LWE Over Rings, Over Simplified

◮ Let R = Z[X]/(Xn + 1) for n a power of two, and Rq = R/qR

⋆ Elements of Rq are deg < n polynomials with mod-q coefficients ⋆ Operations in Rq are very efficient using FFT-like algorithms 8 / 16

slide-31
SLIDE 31

LWE Over Rings, Over Simplified

◮ Let R = Z[X]/(Xn + 1) for n a power of two, and Rq = R/qR

⋆ Elements of Rq are deg < n polynomials with mod-q coefficients ⋆ Operations in Rq are very efficient using FFT-like algorithms

◮ Search: find secret ring element s(X) ∈ Rq, given: a1 ← Rq , b1 = a1 · s + e1 ∈ Rq a2 ← Rq , b2 = a2 · s + e2 ∈ Rq a3 ← Rq , b3 = a3 · s + e3 ∈ Rq . . . (ei ∈ R are ‘small’)

8 / 16

slide-32
SLIDE 32

LWE Over Rings, Over Simplified

◮ Let R = Z[X]/(Xn + 1) for n a power of two, and Rq = R/qR

⋆ Elements of Rq are deg < n polynomials with mod-q coefficients ⋆ Operations in Rq are very efficient using FFT-like algorithms

◮ Search: find secret ring element s(X) ∈ Rq, given: a1 ← Rq , b1 = a1 · s + e1 ∈ Rq a2 ← Rq , b2 = a2 · s + e2 ∈ Rq a3 ← Rq , b3 = a3 · s + e3 ∈ Rq . . . (ei ∈ R are ‘small’) Note: (ai, bi) are uniformly random subject to bi − ai · s ≈ 0

8 / 16

slide-33
SLIDE 33

LWE Over Rings, Over Simplified

◮ Let R = Z[X]/(Xn + 1) for n a power of two, and Rq = R/qR

⋆ Elements of Rq are deg < n polynomials with mod-q coefficients ⋆ Operations in Rq are very efficient using FFT-like algorithms

◮ Search: find secret ring element s(X) ∈ Rq, given: a1 ← Rq , b1 = a1 · s + e1 ∈ Rq a2 ← Rq , b2 = a2 · s + e2 ∈ Rq a3 ← Rq , b3 = a3 · s + e3 ∈ Rq . . . (ei ∈ R are ‘small’) Note: (ai, bi) are uniformly random subject to bi − ai · s ≈ 0 ◮ Decision: distinguish (ai , bi) from uniform (ai , bi) ∈ Rq × Rq

(with noticeable advantage)

8 / 16

slide-34
SLIDE 34

Hardness of Ring-LWE

◮ Two main theorems (reductions): worst-case approx-SVP

  • n ideal lattices in R

(quantum, any R = OK)

search R-LWE ≤

(classical, any cyclotomic R)

decision R-LWE

9 / 16

slide-35
SLIDE 35

Hardness of Ring-LWE

◮ Two main theorems (reductions): worst-case approx-SVP

  • n ideal lattices in R

(quantum, any R = OK)

search R-LWE ≤

(classical, any cyclotomic R)

decision R-LWE

1 If you can find s given (ai , bi), then you can find approximately

shortest vectors in any ideal lattice in R (using a quantum algorithm).

9 / 16

slide-36
SLIDE 36

Hardness of Ring-LWE

◮ Two main theorems (reductions): worst-case approx-SVP

  • n ideal lattices in R

(quantum, any R = OK)

search R-LWE ≤

(classical, any cyclotomic R)

decision R-LWE

1 If you can find s given (ai , bi), then you can find approximately

shortest vectors in any ideal lattice in R (using a quantum algorithm).

2 If you can distinguish (ai , bi) from (ai , bi), then you can find s.

9 / 16

slide-37
SLIDE 37

Hardness of Ring-LWE

◮ Two main theorems (reductions): worst-case approx-SVP

  • n ideal lattices in R

(quantum, any R = OK)

search R-LWE ≤

(classical, any cyclotomic R)

decision R-LWE

1 If you can find s given (ai , bi), then you can find approximately

shortest vectors in any ideal lattice in R (using a quantum algorithm).

2 If you can distinguish (ai , bi) from (ai , bi), then you can find s.

◮ Then: decision R-LWE ≤ lots of crypto

9 / 16

slide-38
SLIDE 38

Hardness of Ring-LWE

◮ Two main theorems (reductions): worst-case approx-SVP

  • n ideal lattices in R

(quantum, any R = OK)

search R-LWE ≤

(classical, any cyclotomic R)

decision R-LWE

1 If you can find s given (ai , bi), then you can find approximately

shortest vectors in any ideal lattice in R (using a quantum algorithm).

2 If you can distinguish (ai , bi) from (ai , bi), then you can find s.

◮ Then: decision R-LWE ≤ lots of crypto

⋆ If you can break the crypto, then you can distinguish (ai , bi) from

(ai , bi). . .

9 / 16

slide-39
SLIDE 39

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R.

10 / 16

slide-40
SLIDE 40

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Rn. How?

10 / 16

slide-41
SLIDE 41

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Rn. How?

1 ‘Obvious’ answer: ‘coefficient embedding’

a0 + a1X + · · · + an−1Xn−1 ∈ R → (a0, . . . , an−1) ∈ Zn

10 / 16

slide-42
SLIDE 42

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Rn. How?

1 ‘Obvious’ answer: ‘coefficient embedding’

a0 + a1X + · · · + an−1Xn−1 ∈ R → (a0, . . . , an−1) ∈ Zn + is coordinate-wise, but analyzing · is cumbersome.

10 / 16

slide-43
SLIDE 43

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Cn. How?

1 ‘Obvious’ answer: ‘coefficient embedding’

a0 + a1X + · · · + an−1Xn−1 ∈ R → (a0, . . . , an−1) ∈ Zn + is coordinate-wise, but analyzing · is cumbersome.

2 [Minkowski]: ‘canonical embedding.’ Let ω = exp(πi/n) ∈ C, so roots

  • f Xn + 1 are ω1, ω3, . . . , ω2n−1. Embed:

a(X) ∈ R → (a(ω1) , a(ω3) , . . . , a(ω2n−1)) ∈ Cn

10 / 16

slide-44
SLIDE 44

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Cn. How?

1 ‘Obvious’ answer: ‘coefficient embedding’

a0 + a1X + · · · + an−1Xn−1 ∈ R → (a0, . . . , an−1) ∈ Zn + is coordinate-wise, but analyzing · is cumbersome.

2 [Minkowski]: ‘canonical embedding.’ Let ω = exp(πi/n) ∈ C, so roots

  • f Xn + 1 are ω1, ω3, . . . , ω2n−1. Embed:

a(X) ∈ R → (a(ω1) , a(ω3) , . . . , a(ω2n−1)) ∈ Cn Both + and · are coordinate-wise.

10 / 16

slide-45
SLIDE 45

Ideal Lattices

◮ Say R = Z[X]/(Xn + 1) for power-of-two n.

(Or R = OK.)

◮ An ideal I ⊆ R is closed under + and −, and under · with R. To get ideal lattices, embed R and its ideals into Rn. How?

1 ‘Obvious’ answer: ‘coefficient embedding’

a0 + a1X + · · · + an−1Xn−1 ∈ R → (a0, . . . , an−1) ∈ Zn + is coordinate-wise, but analyzing · is cumbersome.

2 [Minkowski]: ‘canonical embedding.’ Let ω = exp(πi/n) ∈ C, so roots

  • f Xn + 1 are ω1, ω3, . . . , ω2n−1. Embed:

a(X) ∈ R → (a(ω1) , a(ω3) , . . . , a(ω2n−1)) ∈ Cn Both + and · are coordinate-wise. (NB: LWE error distribution is Gaussian in canonical embedding.)

10 / 16

slide-46
SLIDE 46

Ideal Lattices

◮ Say R = Z[X]/(X2 + 1). Embeddings map X → ±i.

σ(1) = (1, 1) σ(X) = (i, −i)

slide-47
SLIDE 47

Ideal Lattices

◮ Say R = Z[X]/(X2 + 1). Embeddings map X → ±i. ◮ I = X − 2, −3X + 1 is an ideal in R.

σ(1) = (1, 1) σ(X) = (i, −i) σ(X − 2) σ(−3X + 1)

11 / 16

slide-48
SLIDE 48

Ideal Lattices

◮ Say R = Z[X]/(X2 + 1). Embeddings map X → ±i. ◮ I = X − 2, −3X + 1 is an ideal in R.

σ(1) = (1, 1) σ(X) = (i, −i) σ(X − 2) σ(−3X + 1)

(Approximate) Shortest Vector Problem

◮ Given (an arbitrary basis of) an arbitrary ideal I ⊆ R, find a nearly shortest nonzero a ∈ I.

11 / 16

slide-49
SLIDE 49

Hardness of Search Ring-LWE

Theorem 1

For any large enough q, solving search R-LWE is as hard as quantumly solving poly(n)-approx SVP in any (worst-case) ideal lattice in R = OK.

12 / 16

slide-50
SLIDE 50

Hardness of Search Ring-LWE

Theorem 1

For any large enough q, solving search R-LWE is as hard as quantumly solving poly(n)-approx SVP in any (worst-case) ideal lattice in R = OK. ◮ Proof follows the template of [Regev’05] for LWE & arbitrary lattices. Quantum component used as ‘black-box;’ only classical part needs adaptation to the ring setting.

12 / 16

slide-51
SLIDE 51

Hardness of Search Ring-LWE

Theorem 1

For any large enough q, solving search R-LWE is as hard as quantumly solving poly(n)-approx SVP in any (worst-case) ideal lattice in R = OK. ◮ Proof follows the template of [Regev’05] for LWE & arbitrary lattices. Quantum component used as ‘black-box;’ only classical part needs adaptation to the ring setting. ◮ Main technique: ‘clearing ideals’ while preserving R-module structure: I/qI → R/qR, I∨/qI∨ → R∨/qR∨. Uses Chinese remainder theorem and theory of duality for ideals.

12 / 16

slide-52
SLIDE 52

Hardness of Decision Ring-LWE

Theorem 2

Solving decision R-LWE in any cyclotomic R = Z[ζm] ∼ = Z[X]/Φm(X)

(for any poly(n)-bounded prime q = 1 mod m)

is as hard as solving search R-LWE.

13 / 16

slide-53
SLIDE 53

Hardness of Decision Ring-LWE

Theorem 2

Solving decision R-LWE in any cyclotomic R = Z[ζm] ∼ = Z[X]/Φm(X)

(for any poly(n)-bounded prime q = 1 mod m)

is as hard as solving search R-LWE.

Facts Used in the Proof

◮ Z∗

q has order q − 1 = 0 mod m, so has an element ω of order m.

13 / 16

slide-54
SLIDE 54

Hardness of Decision Ring-LWE

Theorem 2

Solving decision R-LWE in any cyclotomic R = Z[ζm] ∼ = Z[X]/Φm(X)

(for any poly(n)-bounded prime q = 1 mod m)

is as hard as solving search R-LWE.

Facts Used in the Proof

◮ Z∗

q has order q − 1 = 0 mod m, so has an element ω of order m.

◮ Modulo q, Φm(X) has n = ϕ(m) roots ωj, for j ∈ Z∗

m.

13 / 16

slide-55
SLIDE 55

Hardness of Decision Ring-LWE

Theorem 2

Solving decision R-LWE in any cyclotomic R = Z[ζm] ∼ = Z[X]/Φm(X)

(for any poly(n)-bounded prime q = 1 mod m)

is as hard as solving search R-LWE.

Facts Used in the Proof

◮ Z∗

q has order q − 1 = 0 mod m, so has an element ω of order m.

◮ Modulo q, Φm(X) has n = ϕ(m) roots ωj, for j ∈ Z∗

m.

◮ So there is a ring isomorphism Rq ∼ = Zn

q given by

a(X) ∈ Rq →

  • a(ωj)
  • j∈Z∗

m ∈ Zn

q .

13 / 16

slide-56
SLIDE 56

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

14 / 16

slide-57
SLIDE 57

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m.

14 / 16

slide-58
SLIDE 58

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m. 2 Hybrid argument: randomize one b(ωj) ∈ Zq; or two; or three; or . . .

Then O must distinguish relative to some ωj∗.

14 / 16

slide-59
SLIDE 59

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m. 2 Hybrid argument: randomize one b(ωj) ∈ Zq; or two; or three; or . . .

Then O must distinguish relative to some ωj∗.

3 Using O, guess-and-check to find s(ωj∗) ∈ Zq.

14 / 16

slide-60
SLIDE 60

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m. 2 Hybrid argument: randomize one b(ωj) ∈ Zq; or two; or three; or . . .

Then O must distinguish relative to some ωj∗.

3 Using O, guess-and-check to find s(ωj∗) ∈ Zq. 4 How to find other s(ωj)? Couldn’t O be useless at other roots?

14 / 16

slide-61
SLIDE 61

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m. 2 Hybrid argument: randomize one b(ωj) ∈ Zq; or two; or three; or . . .

Then O must distinguish relative to some ωj∗.

3 Using O, guess-and-check to find s(ωj∗) ∈ Zq. 4 How to find other s(ωj)? Couldn’t O be useless at other roots?

ω → ωk (k ∈ Z∗

m) permutes roots of Φm(X), and preserves error.

14 / 16

slide-62
SLIDE 62

Hardness of Decision Ring-LWE

Theorem 2

Solving decision Ring-LWE in Rq = Zq[X]/Φm(X) is as hard as solving search Ring-LWE.

Proof Sketch

Given: O distinguishes samples (a , b ≈ a · s) from uniform (a , b). Goal: Find s ∈ Rq, given samples (a , b ≈ a · s).

1 Equivalent to finding s(ωj) ∈ Zq for all j ∈ Z∗ m. 2 Hybrid argument: randomize one b(ωj) ∈ Zq; or two; or three; or . . .

Then O must distinguish relative to some ωj∗.

3 Using O, guess-and-check to find s(ωj∗) ∈ Zq. 4 How to find other s(ωj)? Couldn’t O be useless at other roots?

ω → ωk (k ∈ Z∗

m) permutes roots of Φm(X), and preserves error.

So send each ωj to ωj∗, and use O to find s(ωj).

14 / 16

slide-63
SLIDE 63

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

15 / 16

slide-64
SLIDE 64

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

15 / 16

slide-65
SLIDE 65

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

15 / 16

slide-66
SLIDE 66

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

2 Search- and decision-R-LWE are equivalent in cyclotomic R.

Does this hold in other kinds of rings?

15 / 16

slide-67
SLIDE 67

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

2 Search- and decision-R-LWE are equivalent in cyclotomic R.

Does this hold in other kinds of rings?

⋆ Yes, for any Galois number field (identical proof). 15 / 16

slide-68
SLIDE 68

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

2 Search- and decision-R-LWE are equivalent in cyclotomic R.

Does this hold in other kinds of rings?

⋆ Yes, for any Galois number field (identical proof). ⋆ Probably not, for carefully constructed rings S, moduli q, and errors! 15 / 16

slide-69
SLIDE 69

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

2 Search- and decision-R-LWE are equivalent in cyclotomic R.

Does this hold in other kinds of rings?

⋆ Yes, for any Galois number field (identical proof). ⋆ Probably not, for carefully constructed rings S, moduli q, and errors!

Decision-S-LWE easily broken, but search unaffected. [EHL’14,ELOS’15]

15 / 16

slide-70
SLIDE 70

Open Problems: Reductions

1 Search-R-LWE is quantumly at least as hard as approx-R-SVP.

Is there a classical reduction?

⋆ [P’09] reduces GapSVP (i.e., estimate λ1(L)) on general lattices to

plain-LWE, classically.

⋆ But estimating λ1(L) is trivially easy on ideal lattices!

Finding short vectors is what appears hard.

2 Search- and decision-R-LWE are equivalent in cyclotomic R.

Does this hold in other kinds of rings?

⋆ Yes, for any Galois number field (identical proof). ⋆ Probably not, for carefully constructed rings S, moduli q, and errors!

Decision-S-LWE easily broken, but search unaffected. [EHL’14,ELOS’15] “cyclotomic fields, used for Ring-LWE, are uniquely protected against the attacks presented in this paper”

15 / 16

slide-71
SLIDE 71

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

16 / 16

slide-72
SLIDE 72

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. 16 / 16

slide-73
SLIDE 73

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. ⋆ They do yield a BDD instance on an R-module lattice:

L =

  • (vi) : vi = ai · z

(mod qR)

  • ⊆ Rℓ

16 / 16

slide-74
SLIDE 74

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. ⋆ They do yield a BDD instance on an R-module lattice:

L =

  • (vi) : vi = ai · z

(mod qR)

  • ⊆ Rℓ

2 How hard/easy is approx-R-SVP, anyway? (In cyclotomics etc.)

16 / 16

slide-75
SLIDE 75

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. ⋆ They do yield a BDD instance on an R-module lattice:

L =

  • (vi) : vi = ai · z

(mod qR)

  • ⊆ Rℓ

2 How hard/easy is approx-R-SVP, anyway? (In cyclotomics etc.)

⋆ Despite abundant ring structure (e.g., subfields, Galois), no substantial

improvement over attacks on general lattices.

16 / 16

slide-76
SLIDE 76

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. ⋆ They do yield a BDD instance on an R-module lattice:

L =

  • (vi) : vi = ai · z

(mod qR)

  • ⊆ Rℓ

2 How hard/easy is approx-R-SVP, anyway? (In cyclotomics etc.)

⋆ Despite abundant ring structure (e.g., subfields, Galois), no substantial

improvement over attacks on general lattices.

⋆ Next up: attacks on a specialized variant: given a principal ideal I

guaranteed to have an “unusually short” generator, find it.

16 / 16

slide-77
SLIDE 77

Open Problems: Attacks

1 We know approx-R-SVP ≤ R-LWE (quantumly). Other direction?

Can we solve R-LWE using an oracle for approx-R-SVP?

⋆ R-LWE samples (ai, bi)i=1,...,ℓ don’t readily translate to ideals in R. ⋆ They do yield a BDD instance on an R-module lattice:

L =

  • (vi) : vi = ai · z

(mod qR)

  • ⊆ Rℓ

2 How hard/easy is approx-R-SVP, anyway? (In cyclotomics etc.)

⋆ Despite abundant ring structure (e.g., subfields, Galois), no substantial

improvement over attacks on general lattices.

⋆ Next up: attacks on a specialized variant: given a principal ideal I

guaranteed to have an “unusually short” generator, find it.

⋆ These conditions are extremely rare for general ideals, so (worst-case)

approx-R-SVP is unaffected.

16 / 16