on the ring lwe and polynomial lwe problems
play

On the Ring-LWE and Polynomial-LWE problems Miruna Roca, Damien - PowerPoint PPT Presentation

On the Ring-LWE and Polynomial-LWE problems Miruna Roca, Damien Stehl, Alexandre Wallet Alexandre Wallet 1 / 37 ApproxSVP ApproxSVP ( O K -modules) ( O K -ideals) [LS15] [PRS17] [AD17] decision decision RLWE search RLWE


  1. On the Ring-LWE and Polynomial-LWE problems Miruna Roşca, Damien Stehlé, Alexandre Wallet Alexandre Wallet 1 / 37

  2. ApproxSVP ApproxSVP ( O K -modules) ( O K -ideals) [LS15] [PRS17] [AD17] decision decision RLWE ∨ search RLWE ∨ Module-LWE This work decision RLWE search RLWE decision PLWE search PLWE [RSSS17] [RSSS17] decision search MPLWE MPLWE Alexandre Wallet 2 / 37

  3. ApproxSVP ApproxSVP ( O K -modules) ( O K -ideals) [LS15] [PRS17] [AD17] decision decision RLWE ∨ search RLWE ∨ Module-LWE This work decision RLWE search RLWE decision PLWE search PLWE [RSSS17] [RSSS17] decision search MPLWE MPLWE Alexandre Wallet 2 / 37

  4. “On variants of Polynomial-LWE and Ring-LWE” (joint work with M. Rosça and D. Stehlé , submitted) Results: (A) The 3 settings are essentially † the same (B) Search = Decision in all settings. † : for a large number of “reasonable” polynomials, up to polynomial factors on noise, assuming some information about the field are known. Alexandre Wallet 3 / 37

  5. LWE and Cryptography 1 Regev’s encryption scheme Learning With Errors (LWE) and its hardness Ring-based LWE 2 Reductions between Ring-based LWE’s 3 Search to Decision 4 Alexandre Wallet 4 / 37

  6. An encryption scheme [Regev’05] n “security parameter”, q prime, n ≤ m ≤ poly ( n ) , χ distribution over Z q = Z /q Z . Alice Evil Bruno s ∈ Z n µ ∈ { 0 , 1 } q ∈ M m × n ( Z q ) , e i ← ֓ χ A � � A , b − − − → = s + e mod q b A Alexandre Wallet 5 / 37

  7. An encryption scheme [Regev’05] n “security parameter”, q prime, n ≤ m ≤ poly ( n ) , χ distribution over Z q = Z /q Z . Alice Evil Bruno s ∈ Z n µ ∈ { 0 , 1 } q ∈ M m × n ( Z q ) , e i ← ֓ χ A � � A , b − − − → = s + e mod q b A e ′ = b ′ − � a ′ , s � mod q ← E A , b ( µ ) = ( � a i , � ( a ′ , b ′ ) b i + µ ⌊ q ← − − − 2 ⌋ ) i ∈I i ∈I Alexandre Wallet 5 / 37

  8. An encryption scheme [Regev’05] n “security parameter”, q prime, n ≤ m ≤ poly ( n ) , χ distribution over Z q = Z /q Z . Alice Evil Bruno s ∈ Z n µ ∈ { 0 , 1 } q ∈ M m × n ( Z q ) , e i ← ֓ χ A � � A , b − − − → = s + e mod q b A e ′ = b ′ − � a ′ , s � mod q ← E A , b ( µ ) = ( � a i , � ( a ′ , b ′ ) b i + µ ⌊ q ← − − − 2 ⌋ ) i ∈I i ∈I Correctness: q, m, χ chosen s.t. e ′ = � e i ≤ q � 4 whp. 0 if e ′ ∼ 0 Dec s ( a ′ , b ′ ) = 1 if e ′ ∼ q 2 Alexandre Wallet 5 / 37

  9. Learning With Errors [R’05] n ∈ N ∗ , q ≤ poly ( n ) a prime χ → D r discrete Gaussian distribution Z q := Z /q Z . LWE distribution: Fix s ∈ Z n q .  ֓ U ( Z n  a ← q )  A s ,D r : e ← ֓ D r   outputs ( a , b = ( � a , s � + e ) mod q ) Search-LWE q,r : �  � �  � A , b = A s + e , find s  From m  ← − → n Alexandre Wallet 6 / 37

  10. Hardness [R’05] Decision-LWE q,D r : Given ( a i , b i ) i ≤ m either from A s ,D r or U ( Z n q × Z q ) , decide which one was given. Lattice L = A Z n , λ 1 = length of a shortest vector in L \ { 0 } . ApproxSVP γ : Given d > 0 , decide if λ 1 ≤ d or λ 1 > dγ . 2 O ( n ) time poly ( n ) For general lattices: � O ( n ) γ 2 poly ( n ) Alexandre Wallet 7 / 37

  11. Hardness [R’05] Decision-LWE q,D r : Given ( a i , b i ) i ≤ m either from A s ,D r or U ( Z n q × Z q ) , decide which one was given. Lattice L = A Z n , λ 1 = length of a shortest vector in L \ { 0 } . ApproxSVP γ : Given d > 0 , decide if λ 1 ≤ d or λ 1 > dγ . 2 O ( n ) time poly ( n ) For general lattices: � O ( n ) γ 2 poly ( n ) solving Decision-LWE solving breaking quantum � classical � = ApproxSVP poly ( n ) Regev’s encryption solving Search-LWE Alexandre Wallet 7 / 37

  12. LWE in practice Perks: Drawbacks: ✓ simple description, simple operations ✕ key-size ✓ flexible parameters, many possibilities ✕ speed (compared to other) ✓ post-quantum Frodo † VS Current crypto RSA 3072-bits ECDH nistp256 (NIST competitor) Public key ∼ 11 KBytes ∼ 400 bytes 32 bytes Handshake ∼ 2 . 5 ms ∼ 5 ms ∼ 1 . 3 ms † : [BCD++’17] Alexandre Wallet 8 / 37

  13. LWE and Cryptography 1 Ring-based LWE 2 Polynomial-LWE: ideal lattices Ring-LWE: more algebraic number theory Reductions between Ring-based LWE’s 3 Search to Decision 4 Alexandre Wallet 9 / 37

  14. Add structure: ideal lattices Change Z � R = Z [ X ] /f Good example: f = X n + 1 , n = 2 d . f monic, irreducible, degree n . polynomials vectors/matrices s = � s i X i ∈ R q = R/qR s = ( s 0 , . . . , s n − 1 ) ∈ Z n q Product: a · s mod f Mult. by a = use Toeplitz matrix   a 0 a 1 . . . a n − 1   − a n − 1 a 0 . . . a n − 2   T f ( a ) =   . . ... . .   . . − a 1 − a 2 . . . a 0 Alexandre Wallet 10 / 37

  15. Add structure: ideal lattices Change Z � R = Z [ X ] /f Good example: f = X n + 1 , n = 2 d . f monic, irreducible, degree n . polynomials vectors/matrices s = � s i X i ∈ R q = R/qR s = ( s 0 , . . . , s n − 1 ) ∈ Z n q Product: a · s mod f Mult. by a = use Toeplitz matrix   a 0 a 1 . . . a n − 1   − a n − 1 a 0 . . . a n − 2   T f ( a ) =   . . ... . .   . . − a 1 − a 2 . . . a 0 Noise: e = � e i X i , e i ← e = ( e 0 , . . . , e n − 1 ) ∈ R n ֓ D r i . ( a , b = T f ( a ) · s ⊤ + e mod q ) Sample: ( a, b = a · s + e mod qR ) Alexandre Wallet 10 / 37

  16. Polynomial-LWE (PLWE) Classic LWE � �     T f ( a 1 ) e 1      b = s + e  s + A b = k  = ⇒ k ′ n T f ( a 2 )  e 2       T f ( a k ′ ) e k ′ � � ← − − − → ← − − − → n n 1 PLWE sample = n correlated LWE samples. Alexandre Wallet 11 / 37

  17. PLWE and its hardness [SSTX’09] R = Z [ X ] /f � r = diag ( r i ) i ≤ n , r i ≥ 0 f monic, irreducible, degree n . D � r n -dimensional Gaussian . PLWE q,� r,f distribution: Fix s ∈ R q   a ← ֓ U ( R q )  B s,D � r : e ← ֓ D � r   outputs ( a, b = ( a · s + e ) mod qR ) Search-PLWE q,� r,f and Decision-PLWE q,� r,f defined as before. Alexandre Wallet 12 / 37

  18. PLWE and its hardness [SSTX’09] R = Z [ X ] /f � r = diag ( r i ) i ≤ n , r i ≥ 0 f monic, irreducible, degree n . D � r n -dimensional Gaussian . PLWE q,� r,f distribution: Fix s ∈ R q   a ← ֓ U ( R q )  B s,D � r : e ← ֓ D � r   outputs ( a, b = ( a · s + e ) mod qR ) Search-PLWE q,� r,f and Decision-PLWE q,� r,f defined as before. → T f ( a ) · Z n : ideal lattice polynomial ideal: aR = { multiples of a in R } �− Solve Search-PLWE ⇒ solve ApproxSVP γ in ideal lattices for γ ≤ poly ( n ) . Alexandre Wallet 12 / 37

  19. Practice vs. Theory Perks: New Hope † ✓ fast and compact operations (NIST competitor) ✓ still post-quantum Public key: ∼ 2 KBytes Handshake: ∼ 0 . 3 ms Theoretical limitations: ✗ γ depends on f ’s “expansion factor” → Restricts “good f ’s” ✗ Working with R relies too much on f → Difficult proofs, lacks tools and flexibility † : [ADPS’15] Alexandre Wallet 13 / 37

  20. Number fields and rings R = Z [ X ] /f is a number ring . Lives in K = Q [ X ] /f , a number field . Structure: K = Span Q (1 , X, . . . , X n − 1 ) where n = deg f Field embeddings: σ j ( a ) = � a i α ji ∈ C where f = � i ≤ n ( X − α j ) . f has s 1 real roots and 2 s 2 (conjugate) complex roots. Alexandre Wallet 14 / 37

  21. Number fields and rings R = Z [ X ] /f is a number ring . Lives in K = Q [ X ] /f , a number field . Structure: K = Span Q (1 , X, . . . , X n − 1 ) where n = deg f Field embeddings: σ j ( a ) = � a i α ji ∈ C where f = � i ≤ n ( X − α j ) . f has s 1 real roots and 2 s 2 (conjugate) complex roots. The space H = { ( v 1 , . . . , v n ) ∈ R s 1 × C 2 s 2 : ∀ i ≥ 1 , v i + s 1 + s 2 = v i + s 1 } . Two representations Coefficient embedding Minkowski embedding → a = ( a 0 , . . . , a n − 1 ) ∈ Q n a �− a �− → σ ( a ) = ( σ 1 ( a ) , . . . , σ n ( a )) ∈ H σ ( ab ) = ( σ i ( a ) σ i ( b )) i ≤ n Alexandre Wallet 14 / 37

  22. The ring of algebraic integers O K = { x ∈ K roots of monic polynomials in Z [ X ] } It is a lattice: O K = Z b 1 + . . . + Z b n for some b i ∈ O K ( b i � = 0) . Dual (lattice): O ∨ K = { y ∈ H : ∀ x ∈ O K , � y , x � ∈ Z } . ✓ O K is a regularization of R = Z [ X ] /f − R � O K in general ✓ O K is intrinsic to K : its structure does not depend on f It may not be possible to take Computing a Z -basis for O K is 1 , X, . . . , X n − 1 as a basis usually hard . Alexandre Wallet 15 / 37

  23. RLWE [LPR’10] R � O K , use Minkowski embedding. H = Span R ( v 1 , . . . , v n ) ֓ D r i , outputs e = � e i v i ∈ H . D H r : e i ← Assume a Z -basis of O K is known. � RLWE ∨ r distribution: Fix s ∈ O ∨ K,q := O ∨ K /q O ∨ q,� K   a ← ֓ U ( O K,q )  A ∨ ֓ D H r : e ← s,D � � r   outputs ( a, b = ( as + e ) mod q O ∨ K ) Search-RLWE ∨ r and Decision-RLWE ∨ r defined as before. q,� q,� “Primal” variant: s ∈ O K,q := O K /q O K . Alexandre Wallet 16 / 37

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend