You are here

Amélioration du désassemblage par canaux auxiliaires et contre mesure

MAILLARD Julien
Abstract: 

Cette thèse est centrée autour de deux questions : Est il possible d'effectuer du désassemblage par canaux auxiliaires sur des processus complexes et via quelles techniques ? Comment est il possible de protéger un programme contre le SCBD ? Nous proposons la stratégie (indicative, qui sera amenée à évoluer au cours de la thèse) suivante pour aborder ces questions. Dans un premier temps, nous travaillerons sur un processeur RISC-V32 bits (https://riscv.org/et tenterons de porter une atttaque de SCBD dessus. En particulier, nous chercherons à utiliser des méthodes de machine learning permettant de garder une mémoire et qui peuvent probablement exploiter les fortes structures présentes dans les flots d'instructions. Ensuite, nous étudierons s'il n'est pas plus facile pour des coeurs plus avancés de reconnaître des fonctionnalités (i.e., un groupe d'instructions) plutôt que des instructions individuelles. Enfin, une fois, une bonne maîtrise du paradigme d'attaque obtenue, nous étudierons dans quelle mesure, il est possible de transformer un programme (tout en préservant la sémantique, en vue de minimiser l'efficacité d'un attaquant SCBD. Pour mener ce sujet, il faudra ainsi développer des connaissances en architecture des ordinateurs et en micro électronique pour bien comprendre les phénomènes physiques mesurés. Pour exploiter les mesures, il faudra un minimum de connaissances en statistiques, en machine learning et être capable d'utiliser des bibliothèques de calculs scientifiques (comme Numpy en Python). L'utilisation des bancs de mesure du laboratoire LSOSP nécessitera d'être à l'aise sous Linux et d'écriture de script en Python, en Bash voire parfois utiliser le langage C. Nous n'attendons pas du candidat ou de la candidate qu'il ou elle possède tout ce large panel de compétences mais qu'il ou elle soit prêt(e) via des formations doctorales par exemple à se former sur certains de ces aspects.