side channel analysis countermeasures
play

Side Channel Analysis & Countermeasures Begl Bilgin 27 Dec. - PowerPoint PPT Presentation

Side Channel Analysis & Countermeasures Begl Bilgin 27 Dec. 2014 - IAM Alumni Meeting Adversary Models 2 Adversary Models 2 Adversary Models Black-box Gray-box White-box 3 Adversary Models Black-box Gray-box White-box Key


  1. Differential Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 )&1 1234… 1 abcd… 0 8aef… 0 0354... 1 7791… 1 c80d… 0 7e9e... 1 11 [courtesy: B.Gierlichs]

  2. Differential Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 )&1 1234… 1 abcd… 0 8aef… 0 0354... 1 7791… 1 c80d… 0 7e9e... 1 11 [courtesy: B.Gierlichs]

  3. Differential Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 )&1 1234… 1 abcd… 0 8aef… 0 0354... 1 7791… 1 c80d… 0 7e9e... 1 Take means 11 [courtesy: B.Gierlichs]

  4. Differential Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 )&1 1234… 1 abcd… 0 8aef… 0 0354... 1 7791… 1 c80d… 0 7e9e... 1 Take means Take difference 11 [courtesy: B.Gierlichs]

  5. Differential Power Analysis pt 1234… abcd… 8aef… 0354... 7791… c80d… 7e9e... 12 [courtesy: B.Gierlichs]

  6. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 8aef… 0 0354... 0 7791… 0 c80d… 1 7e9e... 1 12 [courtesy: B.Gierlichs]

  7. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 8aef… 0 0354... 0 7791… 0 c80d… 1 7e9e... 1 12 [courtesy: B.Gierlichs]

  8. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 8aef… 0 0354... 0 7791… 0 c80d… 1 7e9e... 1 Take means 12 [courtesy: B.Gierlichs]

  9. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 8aef… 0 0354... 0 7791… 0 c80d… 1 7e9e... 1 Take means Take difference 12 [courtesy: B.Gierlichs]

  10. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 8aef… 0 0354... 0 7791… 0 c80d… 1 7e9e... 1 Take means Take difference 12 [courtesy: B.Gierlichs]

  11. Differential Power Analysis key 1 =2b pt S(pt 1 ⊕ key 1 )&1 1234… 0 abcd… 1 s n a e M f 8aef… 0 o e c n e r e f f i 0354... 0 D 7791… 0 c80d… 1 7e9e... 1 Take means Take difference 12 [courtesy: B.Gierlichs]

  12. Differential Power Analysis Correlation Power Analysis pt 1234… abcd… 8aef… 0354... 7791… c80d… 7e9e... 13

  13. Differential Power Analysis Correlation Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 ) 1234… 82 abcd… 62 8aef… 7e 0354... 7b 7791… f6 c80d… e8 7e9e... f3 13

  14. Differential Power Analysis Correlation Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 ) 1234… 82 abcd… 62 8aef… 7e 0354... 7b 7791… f6 c80d… e8 7e9e... f3 Corr. 13

  15. Differential Power Analysis Correlation Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 ) 1234… 82 abcd… 62 8aef… 7e 0354... 7b 7791… f6 c80d… e8 7e9e... f3 Corr. 13

  16. Differential Power Analysis Correlation Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 ) 1234… 82 abcd… 62 8aef… 7e 0354... 7b 7791… f6 c80d… e8 7e9e... f3 Corr. 13

  17. Differential Power Analysis Correlation Power Analysis key 1 =00 pt S(pt 1 ⊕ key 1 ) 1234… 82 abcd… 62 8aef… 7e 0354... 7b 7791… f6 c80d… e8 7e9e... f3 13

  18. Differential Power Analysis Correlation Power Analysis key 1 =00 key 1 =2b pt S(pt 1 ⊕ key 1 ) S(pt 1 ⊕ key 1 ) 1234… 82 12 abcd… 62 cd 8aef… 7e 32 0354... 7b 34 7791… f6 4a c80d… e8 11 7e9e... f3 fc 13

  19. Differential Power Analysis Correlation Power Analysis key 1 =00 key 1 =2b pt S(pt 1 ⊕ key 1 ) S(pt 1 ⊕ key 1 ) 1234… HW(82) HW(12) abcd… HW(62) HW(cd) 8aef… HW(7e) HW(32) 0354... HW(7b) HW(34) 7791… HW(f6) HW(4a) c80d… HW(e8) HW(11) 7e9e... HW(f3) HW(fc) 13

  20. Differential Power Analysis Correlation Power Analysis key 1 =00 key 1 =2b pt S(pt 1 ⊕ key 1 ) S(pt 1 ⊕ key 1 ) 1234… HW(82) HW(12) abcd… HW(62) HW(cd) 8aef… HW(7e) HW(32) 0354... HW(7b) HW(34) 7791… HW(f6) HW(4a) c80d… HW(e8) HW(11) 7e9e... HW(f3) HW(fc) Better leakage model → better attack 13

  21. Differential Power Analysis (Notes & Assumptions) 14

  22. Differential Power Analysis (Notes & Assumptions) • Knowledge about the algorithm 14

  23. Differential Power Analysis (Notes & Assumptions) • Knowledge about the algorithm • Timing of the intermediate value computation 14

  24. Differential Power Analysis (Notes & Assumptions) • Knowledge about the algorithm • Timing of the intermediate value computation • Perfectly aligned traces 14

  25. Differential Power Analysis (Notes & Assumptions) • Knowledge about the algorithm • Timing of the intermediate value computation • Perfectly aligned traces • No countermeasures 14

  26. Differential Power Analysis (Notes & Assumptions) • Knowledge about the algorithm • Timing of the intermediate value computation • Perfectly aligned traces • No countermeasures • # of traces increase with noise 14

  27. Countermeasures Against DPA 15

  28. Countermeasures 16

  29. Countermeasures • Limit number of encryptions per key 16

  30. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult 16

  31. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms 16

  32. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop 16

  33. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop • Decrease Signal-to-Noise Ratio (SNR) 16

  34. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop • Decrease Signal-to-Noise Ratio (SNR) - Decreasing signal (~constant power imp., special cells) 16

  35. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop • Decrease Signal-to-Noise Ratio (SNR) - Decreasing signal (~constant power imp., special cells) - Increasing noise (dummy operations, shuffling) 16

  36. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop • Decrease Signal-to-Noise Ratio (SNR) - Decreasing signal (~constant power imp., special cells) - Increasing noise (dummy operations, shuffling) • Breaking the correlation 16

  37. Countermeasures • Limit number of encryptions per key - Distribution of key is difficult - Leakage resilient algorithms - Performance drop • Decrease Signal-to-Noise Ratio (SNR) - Decreasing signal (~constant power imp., special cells) - Increasing noise (dummy operations, shuffling) • Breaking the correlation - Masking 16

  38. Boolean Masking S (x ,y ,z , ... ) (a ,b ,c , ... ) 17

  39. Boolean Masking 18

  40. Boolean Masking (x 1 ,y 1 ,z 1 , ... ) 18

  41. Boolean Masking (x 1 ,y 1 ,z 1 , ... ) ⊕ (x 2 ,y 2 ,z 2 , ... ) = (x, y, z , ... ) 18

  42. Boolean Masking S 1 (x 1 ,y 1 ,z 1 , ... ) (a 1 ,b 1 ,c 1 , ... ) ⊕ ⊕ S 2 (x 2 ,y 2 ,z 2 , ... ) (a 2 ,b 2 ,c 2 , ... ) = (x, y, z , ... ) 18

  43. Boolean Masking S 1 (x 1 ,y 1 ,z 1 , ... ) (a 1 ,b 1 ,c 1 , ... ) ⊕ ⊕ S 2 (x 2 ,y 2 ,z 2 , ... ) (a 2 ,b 2 ,c 2 , ... ) = = (x, y, z , ... ) (a, b, c , ... ) 18

  44. Boolean Masking S 1 (x 1 ,y 1 ,z 1 , ... ) (a 1 ,b 1 ,c 1 , ... ) ⊕ ⊕ S 2 (x 2 ,y 2 ,z 2 , ... ) (a 2 ,b 2 ,c 2 , ... ) = = (x, y, z , ... ) (a, b, c , ... ) Random input/output shares ➡ Random intermediate values 18

  45. Boolean Masking S 1 (x 1 ,y 1 ,z 1 , ... ) (a 1 ,b 1 ,c 1 , ... ) ⊕ ⊕ S 2 (x 2 ,y 2 ,z 2 , ... ) (a 2 ,b 2 ,c 2 , ... ) = = (x, y, z , ... ) (a, b, c , ... ) Random input/output shares ➡ Random intermediate values unshared shares mean var 0,0=0 0 0 1,5 1,5 1,5 1,5 1,1=3 0,1=1 1 1 1,5 1,5 0.5 0.5 1,0=2 18

  46. Boolean Masking S 1 (x 1 ,y 1 ,z 1 , ... ) (a 1 ,b 1 ,c 1 , ... ) ⊕ ⊕ S 2 (x 2 ,y 2 ,z 2 , ... ) (a 2 ,b 2 ,c 2 , ... ) = = (x, y, z , ... ) (a, b, c , ... ) Random input/output shares ➡ Random intermediate values unshared shares mean var 0,0=0 0 0 1,5 1,5 1,5 1,5 1,1=3 0,1=1 1 1 1,5 1,5 0.5 0.5 1,0=2 18

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