logo EDITE Sujets de doctorat

Optimisation des recherches de points de fuite par canaux auxiliaires sur composants cryptographiques

Sujet proposé par
Directeur de thèse:
Encadré par
Doctorant: Margaux DUGARDIN
Unité de recherche UMR 5141 Laboratoire Traitement et Communication de l'Information

Domaine: Sciences et technologies de l'information et de la communication

Projet

Contexte

Tout composant électronique produit des émanations physiques, telles que le champ magnétique qu'il rayonne, le courant qu'il consomme ou encore le temps qu'il met à achever un calcul. Or il se trouve que ces quantités portent de l'information sur l'évolution de l'état interne. On parle donc de canal caché, car il permet à un attaquant avisé de retrouver des secrets cachés dans le composant par l'analyse de la « fuite » involontaire [1]. Plus précisément, il existe deux façons d'extraire de l'information : par une analyse passive des fuite ou par l'utilisation de la fuite à des fins de synchronisation, dans l'optique de lancer dans une seconde étape une perturbation bien ciblée dans le temps. Les premières preuves de concept d'attaques ont environ 15 ans. Depuis, on assiste à une explosion du nombre d’attaques potentielles, plus ou moins dépendantes des choix d’implémentation et / ou des contremesures algorithmiques mises en œuvre. Par conséquent, il devient de plus en plus difficile d’estimer le niveau de résistance d’un produit face à ce type d’attaques. La connaissance fine de l’implémentation réelle peut permettre de choisir à priori quelle est la méthode la mieux adaptée pour attaquer le produit mais cette approche reste subjective et présente le risque de ne pas détecter certaines fuites d’information. D’un autre côté dans un contexte industriel d’évaluation d’un produit de sécurité, réalisé en temps contraint, il n’est pas possible de mettre en œuvre l’intégralité des attaques publiées (DPA, CPA, MIA, Template ….) à ce jour sur l’ensemble des algorithmes cryptographiques proposés par les microcircuits soumis à évaluation.

Verrous et objectifs

Une approche alternative consiste à mettre en œuvre des mesures de type signal sur bruit sur les composants testés. En choisissant des vecteurs de tests particuliers il est possible d’identifier les points de fuites d’information et de caractériser leur évolution selon les hypothèses d’utilisation du produit et les conditions expérimentales de mesure. Le sujet de thèse proposé entre dans cette catégorie. Pour les principaux algorithmes cryptographiques utilisés aujourd’hui (DES, AES, RSA, ECC...), le candidat devra être capable de mettre en œuvre des compétences transverses (développement, traitement statistique de l’information, problématiques liées aux mesures physiques et à leur exploitation, cryptographie) pour développer une méthodologie innovante et complète, permettant d’identifier de telles fuites d’information. Parmi les questions et problèmes posés, figurent notamment les suivantes :

  • Comment effectuer une localisation spatiale de la fuite ? Sur quel critère décide-t-on que l'on a identifié un point de fuite pertinent ? Peut-on effectuer une cartographie aveugle, sans connaître les données traitées par le circuit sous analyse ? Gagne-t-on effectivement à combiner plusieurs capteurs [2] [3] ? Si oui, dans quelle mesure ?
  • Comment effectuer une localisation temporelle de la fuite ? Peut-on se passer d'une étape de resynchronisation ? Et est-ce que des prétraitements de substitution sont toujours efficaces ? Si oui, à quel prix, en terme de nombre de traces supplémentaires ?
  • Est-ce que l’identification des fuites et des modèles de fuite nécessite un distingueur particulier permettant d’optimiser la recherche ? Y-a-t'il une méthodologie de recherche de fuite adaptée à un distingueur, c'est-à-dire une identification compatible avec une exploitation ? Un exemple est l'analyse de variance (ANOVA, comme SOSD ou SOST [4], la PCA [5], les T-tests, le NICV [6], des méthodes des projection [7], etc.), qui semble être de nature semblable à une covariance ou à une corrélation de Pearson [8], voire à une attaque sur la valeur propre d'une PCA (voir la FPCA [9]).
  • Enjeux

    Méthodologie de recherche

    Cette thèse commencera par une analyse théorique du problème de la détection de fuites. Elle nécessitera trois étapes détaillées ci-dessous :

  • Modélisation de la fuite. Il y a d'ores et déjà de tels modèles dans la littérature existante, mais ils présentent différents défauts, comme d'être partiels et simplifiés. Par exemple, ils ne capturent qu'un échantillon temporel, considèrent que le bruit est i.i.d. (indépendant et identiquement distribué), voire même carrément Gaussien. Nous relâcherons les hypothèses, pour une plus grande généralité de l'étude, et aussi pour mieux capturer la complexité des mesures physiques réelles.
  • Expression du problème recherché. Informellement, le problème peut s'énoncer comme suit : maximiser la capacité de détection. Cette étape fera appel à des statistiques.
  • Résolution du problème. On s'attend à ce que la solution prenne une forme MAP (Maximum A Posteriori). Selon les hypothèses sur le modèle (ce que l'on appelle aussi des scénarios), il s'agira de dégager des « archétypes » de situations où une solution analytique existe. Celle-ci sera interprétée, afin d'être contrastée notamment avec l'état de l'art [10] (pour pouvoir qualifier des caractéristiques originales). De plus, on s'efforcera de déduire les caractéristiques du modèle qui induisent telle ou telle méthode identifiée dans l'analyse théorique. Durant cette étape, les techniques d'apprentissage automatique seront également comparées aux méthodes à base de modèle préalablement connu.
  • Puis, à la fois auprès du partenaire académique que du partenaire industriel, le candidat procédera à une validation expérimentale (soit sur environnement ouvert, comme des cartes SASEBO, soit sur des composants commerciaux, bien protégés). Il est en effet très important que les techniques optimisées en théorie soient efficaces en pratique. Les aspects expérimentaux consisteront en une technique de caractérisation et deux séries de tests de validation.

  • Une technique de caractérisation visera à définir un protocole expérimental pour mesurer les caractéristiques du bruit (densité de probabilité, couleur, c'est-à-dire sa dépendance dans le temps, son lien avec les données fonctionnelles traitées, caractère additif, etc.)
  • Ensuite, on validera avec de nombreuses mesures le taux d'efficacité de la détection de fuite. Il s'agit du miroir « heuristique » de la métrique optimisée dans la pré-étude théorique. Il se posera alors la question d'éventuels estimateurs (i.e., méthodes de calcul des quantités statistiques).
  • Une fois les fuites détectées efficacement, on validera leur pertinence au regard de l'amélioration en terme de vitesse de convergence des attaques en extraction de clé. On attend des gains d'autant plus important qu'il y aura des contremesures.
  • Remarques additionnelles

    Cadre de la thèse

    Cette thèse se déroulera dans le cadre d’un contrat CIFRE. L’encadrement scientifique sera assuré par le département COMELEC de TELECOM-ParisTech. Le partenaire industriel est le Centre d’évaluation de la sécurité des systèmes de traitement de l’Information (CESTI) de Thales Communication and Security situé à Toulouse. La thèse se déroulera donc en partie sur les deux sites (Paris et Toulouse).

    Biblographie


    [1] « Power Analysis Attacks: Revealing the Secrets of Smart Cards », Stefan Mangard, Elisabeth Oswald and Thomas Popp, 2006. Springer, 338 pages. http://www.dpabook.org/
    [2] « Towards Different Flavors of Combined Side Channel Attacks », Youssef Souissi, Shivam Bhasin, Sylvain Guilley, Maxime Nassar and Jean-Luc Danger, CT-RSA 2012, LNCS 7178, February 27 - March 2, pp 245-259
    [3] « Localized Electromagnetic Analysis of Cryptographic Implementations », Johann Heyszl, Stefan Mangard, Benedikt Heinz, Frederic Stumpf and Georg Sigl, CT-RSA 2012, LNCS 7178, February 27 - March 2, pp 231-244
    [4] « Templates vs. Stochastic Methods », Benedikt Gierlichs, Kerstin Lemke-Rust and Christof Paar, CHES 2006, LNCS 4249, pp 15—29.
    [5] « Template Attacks in Principal Subspaces », Cédric Archambeau, Eric Peeters, François-Xavier Standaert and Jean-Jacques Quisquater, CHES 2006, LNCS 4249, pp 1—14
    [6] « NICV: Normalized Inter-Class Variance for Detection of Side-Channel Leakage », Shivam Bhasin, Jean-Luc Danger, Sylvain Guilley and Zakaria Najm, EMC 2014, May 12-16
    [7] « On the Optimal Pre-processing for Non-Profiling Differential Power Analysis  », Suvadeep Hajra and Debdeep Mukhopadhyay, COSADE 2014, LNCS, April 14-15
    [8] « Correlation Power Analysis with a Leakage Model », Éric Brier, Christophe Clavier and Francis Olivier, CHES 2004, LNCS 3156, pp 16-29
    [9] « First Principal Components Analysis: A New Side Channel Distinguisher », Youssef Souissi, Maxime Nassar, Sylvain Guilley, Jean-Luc Danger and Florent Flament, ICISC 2011, LNCS 6829, pp 407-419
    [10] « A Comparison of Statistical Techniques for Detecting Side-Channel Information Leakage in Cryptographic Devices », Luke Mather, Elisabeth Oswald, Joe Bandenburg, Marcin Wójcik, IACR Cryptology ePrint Archive 2013: 298 (2013)