deep learning for embedded security evaluation
play

Deep Learning For Embedded Security Evaluation Emmanuel PROUFF Joint - PowerPoint PPT Presentation

Deep Learning For Embedded Security Evaluation Deep Learning For Embedded Security Evaluation Emmanuel PROUFF Joint work with Ryad Benadjila, Eleonora Cagli (CEA LETI), C ecile Dumas (CEA LETI), Houssem Maghrebi (UL), Loic Masure (CEA LETI),


  1. Deep Learning For Embedded Security Evaluation Deep Learning For Embedded Security Evaluation Emmanuel PROUFF Joint work with Ryad Benadjila, Eleonora Cagli (CEA LETI), C´ ecile Dumas (CEA LETI), Houssem Maghrebi (UL), Loic Masure (CEA LETI), Thibault Portigliatti (ex SAFRAN), R´ emi Strullu and Adrian Thillard ANSSI (French Network and Information Security Agency) June 17, 2019 June 2019, Summer School, ˇ Sibenik, Croatia | E. Prouff | 0/18

  2. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Probability distribution function (pdf) of Electromagnetic Emanations Cryptographic Processing with a secret k = 1. 1/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  3. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Probability distribution function (pdf) of Electromagnetic Emanations Cryptographic Processing with a secret k = 1. 1/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  4. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Probability distribution function (pdf) of Electromagnetic Emanations Cryptographic Processing with a secret k = 2. 1/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  5. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Probability distribution function (pdf) of Electromagnetic Emanations Cryptographic Processing with a secret k = 3. 1/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  6. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Probability distribution function (pdf) of Electromagnetic Emanations Cryptographic Processing with a secret k = 4. 1/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  7. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Context: Target Device Clone Device 2/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  8. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Context: Target Device Clone Device [On Clone Device] For every k estimate the pdf of − → X | K = k . k = 1 k = 2 k = 3 k = 4 2/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  9. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Context: Target Device Clone Device [On Clone Device] For every k estimate the pdf of − → X | K = k . k = 1 k = 2 k = 3 k = 4 2/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  10. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Context: Target Device Clone Device [On Clone Device] For every k estimate the pdf of − → X | K = k . k = 1 k = 2 k = 3 k = 4 [On Target Device] Estimate the pdf of − → X . k = ? 2/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  11. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Context: Target Device Clone Device [On Clone Device] For every k estimate the pdf of − → X | K = k . k = 1 k = 2 k = 3 k = 4 [On Target Device] Estimate the pdf of − → X . k = ? [Key-recovery] Compare the pdf estimations. 2/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  12. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � X 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  13. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  14. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] Template Attacks Profiling phase (using profiling traces under known Z ) Attack phase ( N attack traces � x i , e.g. with known plaintexts p i ) Log-likelihood score for each key hypothesis k N log Pr[ � � d k = X = � x i | Z = f ( p i , k )] i =1 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  15. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] Template Attacks Profiling phase (using profiling traces under known Z ) ◮ estimate Pr[ � X | Z = z ] by simple distributions for each value of z Attack phase ( N attack traces � x i , e.g. with known plaintexts p i ) Log-likelihood score for each key hypothesis k N � log Pr[ � d k = X = � x i | Z = f ( p i , k )] i =1 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  16. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] Template Attacks Profiling phase (using profiling traces under known Z ) ◮ estimate Pr[ � X | Z = z ] for each value of z Attack phase ( N attack traces � x i , e.g. with known plaintexts p i ) ◮ Log-likelihood score for each key hypothesis k N � log Pr[ � d k = X = � x i | Z = f ( p i , k )] i =1 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  17. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] Template Attacks Profiling phase (using profiling traces under known Z ) ◮ mandatory dimensionality reduction ◮ estimate Pr[ � X | Z = z ] for each value of z Attack phase ( N attack traces � x i , e.g. with known plaintexts p i ) ◮ Log-likelihood score for each key hypothesis k N � log Pr[ � d k = X = � x i | Z = f ( p i , k )] i =1 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  18. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Illustration| Template Attacks| Side Channel Attacks (Classical Approach) Notations � X observation of the device behaviour P public input of the processing Z target (a cryptographic sensitive variable Z = f ( P, K )) Goal: make inference over Z , observing � Pr[ Z | � X X ] Template Attacks Profiling phase (using profiling traces under known Z ) ◮ manage de-synchronization problem ◮ mandatory dimensionality reduction ◮ estimate Pr[ ε ( ˜ X ) | Z = z ] for each value of z Attack phase ( N attack traces � x i , e.g. with known plaintexts p i ) ◮ Log-likelihood score for each key hypothesis k N � log Pr[ ε ( ˜ d k = X ) = ε ( ˜ x i ) | Z = f ( p i , k )] i =1 3/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  19. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Defensive Mechanisms Misaligning Countermeasures Random Delays, Clock Jittering, ... + In theory: assume to be insufficient to provide security In practice: one of the main issues for evaluators = ⇒ Need for efficient resynchronization techniques 4/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  20. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Defensive Mechanisms Misaligning Countermeasures Random Delays, Clock Jittering, ... + In theory: assume to be insufficient to provide security In practice: one of the main issues for evaluators = ⇒ Need for efficient resynchronization techniques Masking Countermeasure Each key-dependent internal state element is randomly split into 2 shares The crypto algorithm is adapted to always manipulate shares at � = times The adversary needs to recover information on the two shares to recover K = ⇒ Need for efficient Methods to recover tuple of leakage samples that jointly depend on the target secret 4/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

  21. Learning| Countermeasures| Machine Learning| Building a Community| Conclusions| Introduction| Convolutional Neural Networks| Training of Models| Motivating Conclusions 5/18 Emmanuel PROUFF - ANSSI / Invited Talk PANDA 2018

Recommend


More recommend