cosic
play

COSIC A Framework for Cryptographic Problems from Linear Algebra - PowerPoint PPT Presentation

A Framework for Cryptographic Problems from Linear Algebra Carl Bootland , Wouter Castryck, Alan Szepieniec and Frederik Vercauteren Dept. of Electrical Engineering, COSIC KU Leuven COSIC A Framework for Cryptographic Problems from Linear


  1. A Framework for Cryptographic Problems from Linear Algebra Carl Bootland , Wouter Castryck, Alan Szepieniec and Frederik Vercauteren Dept. of Electrical Engineering, COSIC KU Leuven COSIC A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 1 / 28

  2. Post-Quantum Cryptography Standardization Process Aim: “to solicit, evaluate, and standardize one or more quantum-resistant public-key cryptographic algorithms.” A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 1 / 28

  3. Post-Quantum Cryptography Standardization Process Round 1 submission categorization Signature KEM/Encryption Total Lattice Based 5 21 26 Code Based 2 17 19 Multi-variate 7 2 9 Hash based 3 0 3 Other 2 5 7 Round 2 candidates (announced January 30, 2019) Signature KEM/Encryption Total Lattice Based 3 8 11 Code Based 0 7 7 Multi-variate 4 0 4 Hash based 1 0 1 Other 1 2 3 A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 2 / 28

  4. Learning with errors (LWE) Problem: Solve a system of random ‘noisy’ linear equations A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 3 / 28

  5. Learning with errors (LWE) Problem: Solve a system of random ‘noisy’ linear equations     b 1 a 1 , 1 a 1 , 2 · · · a 1 , n · · · b 2 a 2 , 1 a 2 , 2 a 2 , n   s 1      .   . . .  . . . . s 2     . . . .       =  .      . b i a i , 1 a i , 2 · · · a i , n   .        .   . . .  . . . . s n     . . . .     · · · b m a m , 1 a m , 2 a m , n A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 3 / 28

  6. Learning with errors (LWE) Problem: Solve a system of random ‘noisy’ linear equations       b 1 a 1 , 1 a 1 , 2 · · · a 1 , n e 1 · · · b 2 a 2 , 1 a 2 , 2 a 2 , n e 2   s 1        .   . . .   .  . . . . . s 2       . . . . .         =  + mod q  .        . b i a i , 1 a i , 2 · · · a i , n e i   .         .   . . .   .  . . . . . s n       . . . . .       · · · b m a m , 1 a m , 2 a m , n e m ◮ e i small ‘errors’ ◮ uniformly random a i , j Leads to schemes with large key sizes A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 3 / 28

  7. Ring-LWE (informally) Problem: Solve a system of structured ‘noisy’ linear equations       b 1 e 1 A 1 b 2 e 2     s 1        .   .  .   . s 2     . .  . . .      . . .   =  + mod q    .  . . .     . b i e i     .         .   .    . . s n     . .   A m / n       b m e m ◮ A i independent structured n × n matrices ◮ e.g. anti-circulant A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 4 / 28

  8. Module-LWE (informally) Problem: Solve a system of structured ‘noisy’ linear equations       b 1 e 1 · · · A 1 , 1 A 1 , r b 2 e 2     s 1        .   .  .   . s 2     . .  . . .      . . .   =  + mod q    .  . . .     . b i     e i .         .   .  .   . s n     . .   A mr / n , 1 · · · A mr / n , r       b m e m ◮ A i , j independent structured n / r × n / r matrices ◮ r is rank of module A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 5 / 28

  9. The Ring in Ring-LWE ◮ Identify the vector space Z n q with the ring q ↔ R q := Z q [ x ] Z n ( f ( x )) ◮ f ( x ) monic of degree n ( s 1 , s 2 , . . . , s n ) T ↔ s ( x ) = s 1 + s 2 x + · · · + s n x n − 1 ◮ A i are matrices of multiplication by a i ( x ) ∈ R q ⇒ f ( x ) = x n + 1 ◮ Anti-circulant matrices = ◮ We don’t need q to be prime A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 6 / 28

  10. Ring-LWE (More formally) Ring-LWE Search problem: ◮ f ( x ) irreducible ◮ Samples ( a i ( x ) , b i ( x )) ∈ R q × R q b i ( x ) = a i ( x ) s ( x ) + e i ( x ) ◮ uniformly random a i ( x ) ◮ uniformly random s ( x ) ◮ e i ( x ) ← χ (distribution of small elements) ◮ recover s ( x ) A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 7 / 28

  11. Ring-LWE (More formally) Ring-LWE Search problem: ◮ f ( x ) irreducible ◮ Samples ( a i ( x ) , b i ( x )) ∈ R q × R q b i ( x ) = a i ( x ) s ( x ) + e i ( x ) ◮ uniformly random a i ( x ) ◮ uniformly random s ( x ) ◮ e i ( x ) ← χ (distribution of small elements) ◮ recover s ( x ) ◮ Called Poly-LWE when s ( x ) ← R q A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 7 / 28

  12. Interesting Submissions to the NIST Competition Three submissions use problems which look very much like LWE but use large integer arithmetic: ◮ Mersenne-756839 ◮ Ramstake ◮ Three Bears Mersenne-756839 and Ramstake: ◮ Mersenne Low Hamming Combination (MLHC) Three Bears: ◮ module version of Integer-RLWE A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 8 / 28

  13. The Mersenne Low Hamming Combination Search Problem ◮ p = 2 n − 1 a Mersenne prime Z p ↔ { bit strings of length n } \ { 11 . . . 1 } Problem: ◮ Samples ( a i , b i ) ∈ Z p × Z p b i = a i s + e i ◮ a i uniformly random ◮ s , e i Hamming weight h ≪ n ◮ determine s A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 9 / 28

  14. The Mersenne Low Hamming Combination Search Problem ◮ p = 2 n − 1 a Mersenne prime Z p ↔ { bit strings of length n } \ { 11 . . . 1 } Problem: ◮ Samples ( a i , b i ) ∈ Z p × Z p b i = a i s + e i ◮ a i uniformly random ◮ s , e i Hamming weight h ≪ n ◮ determine s Integer-RLWE: p = 2 n − 1 → p = q n + 1 A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 9 / 28

  15. Unifying the MLHC and Poly-LWE problems Similar problems, different rings Small elements ◮ Poly-LWE ◮ e ( x ) = e 1 + e 2 x + · · · + e n x n − 1 ◮ ( e 1 , . . . , e n ) a short vector (e.g. from spherical Gaussian) ◮ MLHC ◮ e = e 1 + e 2 2 + · · · + e n 2 n − 1 ◮ ( e 1 , . . . , e n ) a short vector (Hamming weight h ) ◮ Important point: coefficient vector is short ◮ Difference in expansion: ◮ Poly-LWE: Use explicit base x ◮ MLHC: Use implicit base 2 A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 10 / 28

  16. Unifying the MLHC and Poly-LWE problems Since p = 2 n − 1 rewrite Z p as Z [ x ] ( x n − 1 , x − 2) and R q as Z [ x ] ( f ( x ) , q ) A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 11 / 28

  17. Unifying the MLHC and Poly-LWE problems Since p = 2 n − 1 rewrite Z p as Z [ x ] ( x n − 1 , x − 2) and R q as Z [ x ] ( f ( x ) , q ) View Z p as R q ◮ f ( x ) = x n − 1 ◮ q replaced by x − 2 A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 11 / 28

  18. Three Bears Use a Solinas prime p = 2 3120 − 2 1560 − 1 hence Z [ x ] Z p ∼ = ( x 312 − x 156 − 1 , x − 2 10 ) View Z p as R q ◮ f ( x ) = x 312 − x 156 − 1 ◮ q replaced by x − 2 10 A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 12 / 28

  19. Three Bears Use a Solinas prime p = f ( b ) hence Z [ x ] Z p ∼ = ( f ( x ) , x − b ) View Z p as R q ◮ f ( x ) low-degree, small coefficients ◮ q replaced by x − b A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 12 / 28

  20. Generalising the ring The second modulus ◮ Standard LWE-type problems: integer q ◮ Large integer arithmetic schemes: linear x − b ◮ General problem: arbitrary g ( x ) Z [ x ] R g := ( f ( x ) , g ( x )) ◮ g ( x ) coprime to f ( x ) = ⇒ R g finite ◮ Small elements defined in R = Z [ x ] / ( f ( x )) A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 13 / 28

  21. A condition of convenience We want the ring R g to be easy to work with: ◮ Restrict possible g so that ( f ( x ) , g ( x )) = ( a , r ( x )) ◮ a an integer ◮ r ( x ) monic ◮ Unique representative in � α 0 + α 1 x + · · · + α deg( r ) − 1 x deg( r ) − 1 � � � α i ∈ { 0 , 1 , . . . , a − 1 } � ◮ Not too restrictive ◮ 6 /π 2 ≈ 60 . 8% of randomly chosen pairs f , g ◮ r linear with overwhelming probability A Framework for Cryptographic Problems from Linear Algebra NutMiC, Paris, June 25, 2019 14 / 28

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