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),
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Explore More Topics
Stay informed with curated content and fresh updates.