Imprimer |
Machine learning for side-channel analysis (Apprentissage automatique pour les attaques par canaux auxiliaires) Genevey-Metat, Christophe - (2023-09-28) / Université de Rennes - Machine learning for side-channel analysis
| |||
Langue : Anglais Directeur(s) de thèse: Jézéquel, Jean-Marc; Goubin, Louis Discipline : Informatique Laboratoire : IRISA Ecole Doctorale : MATISSE Classification : Informatique Mots-clés : Apprentissage automatique, apprentissage profond, attaques par canaux auxiliaire, réseaux GAN, apprentissage par transfert
| |||
Résumé : De nos jours, les systèmes embarqués sont plus nombreux et répandus dans la nature. Ces systèmes sont vulnérables aux attaques par canaux auxiliaires. Ces attaques consistent à utiliser des mesures physiques pour observer des fuites d'information sur des systèmes cryptographiques embarqués. Avec l'émergence de l'intelligence artificielle, de nouvelles attaques par canaux auxiliaires basées sur de l'apprentissage profond ont été développées. Dans un grand nombre de cas, ces nouvelles techniques d'attaque sont plus efficaces pour exploiter des fuites de données que des attaques classiques. Dans cette thèse, nous étudions les techniques d'apprentissage profond dans le contexte où nous avons plusieurs sources d'information disponibles. Dans un premier temps, nous avons cherché à savoir si la combinaison de plusieurs canaux d'observation provenant d'un même système mais de sondes différentes peut aider un attaquant à élaborer une attaque plus efficace qu'avec une source unique. Dans un deuxième temps, nous avons cherché à savoir si des ensembles de données supplémentaires qui n'ont pas été mesurés à partir de la même plateforme/sonde/système peuvent aider un attaquant à monter une attaque plus puissante ou bien à accélérer le temps d'une évaluation en facilitant la convergence d'un réseau. Nous avons utilisé la technique appelée apprentissage par transfert pour monter ce type d'attaque. Nous avons démontré que l'apprentissage par transfert permet en général de faciliter la convergence du réseau et, dans certains cas, d'améliorer son efficacité finale. Enfin, dans le contexte où nous avons deux ensembles de données avec des efficacités différentes du point de vue de l'attaque, nous avons étudié s'il était possible de traduire les traces d'un système qui est plus difficile à attaquer en d'autres traces d'un système qui est plus facile à attaquer. Abstract : Nowadays, embedded systems are more numerous and widespread in the real world. These systems are vulnerable to side channel attacks. Such attacks consist in exploiting information leaks from physical measures observed on embedded cryptographic systems. With the emergence of artificial intelligence, new side channel attacks based on deep learning techniques arose out. In many contexts, those techniques are more efficient in exploiting data leakages than classical ones. In this thesis, we study deep learning techniques in the context of having multiple sources of information available. In a first step, we investigated if the combination of multiple sources that are measured from the same setup/device could help an attacker to build a more effective attack compared to a single-source one. We have shown that it is not simple to combine sources to improve the efficiency of a neural network. In a second step, we investigated if the use of additional datasets that are not measured from the same setup/device could help an attacker to mount a stronger attack (or could decrease the evaluation time by helping the network convergence). We used a technique called transfer learning to mount this kind of attack. We have shown that transfer learning usually helps convergence and, in some cases, may improve the final efficiency of the neural network. Eventually, in the context where an attacker has access to two datasets leading to different attack efficiencies, we investigated whether it is possible to translate traces from the actual target (dataset that is harder to attack) into traces from the second dataset (which is easier to attack) |