lac
play

LAC Xianhui Lu 1 , Yamin Liu 1 , Dingding Jia 1 , Haiyang Xue 1 , - PowerPoint PPT Presentation

LAC Xianhui Lu 1 , Yamin Liu 1 , Dingding Jia 1 , Haiyang Xue 1 , Jingnan He 1 , Zhenfei Zhang 2 , Zhe Liu 3 , Hao Yang 3 , Bao Li 1 , Kunpeng Wang 1 NIST Second PQC Standardization Conference August 24, 2019 Lu et al. (CAS, Algorand, NUAA) LAC: an


  1. LAC Xianhui Lu 1 , Yamin Liu 1 , Dingding Jia 1 , Haiyang Xue 1 , Jingnan He 1 , Zhenfei Zhang 2 , Zhe Liu 3 , Hao Yang 3 , Bao Li 1 , Kunpeng Wang 1 NIST Second PQC Standardization Conference August 24, 2019 Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 1 / 16

  2. Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  3. Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  4. Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  5. Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  6. Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  7. Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  8. Aug 2019: Hybrid dual attack Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  9. Timeline 1 1 2 1 2 3 6 8 1 0 0 1 1 0 0 0 . . . . . . . . 7 8 8 8 8 9 9 9 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 Nov 2017: LAC round 1 submission Jan 2018: Subfield attack Feb 2018: High hamming weight attack (CCA) Nov 2018: Timing attack on ECC (CCA) Dec 2018: Error correlation (CCA) Mar 2019: LAC round 2 submission Jun 2019: Pattern attack (CCA) Aug 2019: Hybrid dual attack Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 2 / 16

  10. A brief review ( pk , sk ) ← KeyGen () pk = ( a , b := as + e ), sk = s c ← Enc ( msg , sk ) ˜ = BCH encode ( msg ) m c 1 = as 1 + e , c 2 = bs 1 + e 0 00 + q / 2 ˜ m c = ( c 1 , c 2 ) msg ← Dec ( c , pk ) . . . msg = BCH decode ( m ~ ) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 3 / 16

  11. Motivation Want to use smallest modulus, q = 251 Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 4 / 16

  12. Use ECC to handle the errors The focus of the cryptanalysis Motivation Want to use smallest modulus, q = 251 Too many errors in the message Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 4 / 16

  13. The focus of the cryptanalysis Motivation Want to use smallest modulus, q = 251 Too many errors in the message Use ECC to handle the errors Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 4 / 16

  14. Motivation Want to use smallest modulus, q = 251 Too many errors in the message Use ECC to handle the errors The focus of the cryptanalysis Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 4 / 16

  15. And more cryptanalysis... This talk A summary of the cryptanalysis on LAC; The updated parameter sets in Round 2; Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 5 / 16

  16. This talk A summary of the cryptanalysis on LAC; The updated parameter sets in Round 2; And more cryptanalysis... Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 5 / 16

  17. Subfield Attack [Alp18a] Strategy x n + 1 = hg . . = ( x n / 2 + 91 x n / 4 + 250)( x n / 2 + 160 x n / 4 + 250) mod 251 Given ( a , b = as + e ), try to recover ( s g , e g ) := ( s , e ) mod g ( s h , e h ) := ( s , e ) mod h Analysis | s g , e g | ∞ = 25 too large, c.f. RHF No impact on LAC parameters for Round 1 submission Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 6 / 16

  18. High Hamming Weight Attack [Alp18b] Strategy s 1 , e 0 follows binomial distribution Choose s 1 , e 0 with higher-then-normal Hamming weight Decryption error rate increased to 2 − 44 . 4 Produce 2 19 . 6 decryption failures with 2 207 pre-computation and 2 64 oracle queries for level 5. Counter-measure Use binomial distribution with fixed Hamming weight. Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 7 / 16

  19. Timing attack on ECC [DTVV19] Round 1 BCH: non-constant time, O ( err ) Round 2 BCH: almost constant time, O ( max ( err )) Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 8 / 16

  20. Error Correlation [DVV19] Round 1 parameter Dependency aware model: “ independence assumption is suitable for schemes without error correction, but that it might lead to under-estimating the failure probability of algorithms using error correcting codes ” Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 9 / 16

  21. Error Correlation [DVV19], continued Round 2 parameter Red line: Experimental data Blue line: Dependency aware model Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 10 / 16

  22. Major updates Round 1 Round 2 Message space 256, 384, 512 256 Noise dist. binomial fix-weight BCH(511,264,29) BCH(511,256,16) ECC BCH(511,392,13) BCH(511,256,8) BCH(1023,520,55) BCH(511,256,16)+D2 Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 11 / 16

  23. Hybrid attacks, Round5 team and [Son19] Hybrid primal attack Reduces security margin of LAC-192 from 286 to 278 No impact on LAC-128/256 Hybrid dual attack Discovered by Round5 team and Son independently last week We are evaluating the impact Current thought: may affect security margin by a few bits Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 12 / 16

  24. Pattern Attack [GJY19] Strategy Assume e 0 has certain pattern e.g., 33 consecutive 1 , − 1 , ... ; happens with prob 2 − 122 s has certain distribution e.g., | s odd (1) | + | s even (1) | > 208; happens with prob 2 − 70 A higher than normal error rate e.g., < 2 − 30 , c.f., norm error rate 2 − 122 Repeat for enough errors to attack secret key e.g., ≈ 2 30 errors (?), with a total cost 2 122+70+30+30 ≈ 2 252 Impact [GJY19] focused on LAC256 of round 1 parameter Our evaluation on round 2 parameter: LAC128/192 remain intacct; LAC256 needs a revision on error correct code. Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 13 / 16

  25. Performance Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 14 / 16

  26. Performance [Dus19] Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 15 / 16

  27. A positive note LAC trials with a new direction to improve performance: super small q + heavy error corrections; c.f. different rings, lattice structures, etc. LAC has sparked a lot of new cryptanalysis technique. Future work Improve error correction performance Almost constant time → constant-time implementation Re-write ring multiplication with Assembly Improve m4 and FPGA implementation Lu et al. (CAS, Algorand, NUAA) LAC: an update August 24, 2019 16 / 16

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