Primitives symétriques de faible complexité multiplicative, attaques canaux auxiliaires et masquage

par Nicolas Bordes

Projet de thèse en Mathématiques et Informatique

Sous la direction de Jean-Guillaume Dumas.

Thèses en préparation à Grenoble Alpes , dans le cadre de École doctorale mathématiques, sciences et technologies de l'information, informatique (Grenoble) , en partenariat avec Laboratoire Jean Kuntzmann (Grenoble) (laboratoire) et de CASYS (Calculs Algébriques et Systèmes Dynamiques) (equipe de recherche) depuis le 01-10-2018 .


  • Résumé

    Un premier objectif de cette thèse sera de concevoir, analysr et implémenter (à la fois en logiciel et en matériel) des algorithmes de chiffrement de faible complexité multiplicative ; c'est àdire des algorithmes pouvant être implémentés avec peu de multiplications sur un corps fini (correspondant à des ET logiques si le corps en question est GF(2)). De tels chiffrements jouent un rôle important dans la sécurisation des systèmes embarqués, car le surcoût nécessaire pour les protéger contre des attaques physiques par canaux auxiliaires est alors relativement modéré. Ceci est particulièrement vrai lorsque les contre-mesures sont employées à des ordres très élevés, comme par exemple 32. Plusieurs algorithmes ont déjà été proposés dans ce contexte, comme Zorro, Fantomas, Mysterion ou LowMC. Cependant, certains comme Zorro ont été attaqués, et d'autres comme LowMC basent leur sécurité sur des arguments statistiques peu habituels. Dans cette thèse, nous souhaitons étudier de nouvelles constructions basées sur des codes géométriques. Une première approache consiste à exploiter des codes de grandes dimension et distance minimale construits sur de petits corps comme GF(16). Ceci permettrait de définir un chiffrement avec une structure de substitution/permutation classique nécessitant remarquablement peu de tours, et donc peu d'accès à une boîte de substituion sur 4 bits, elle-même de faible complexité multiplicative. Un enjeu important consistera à implémenter efficacement la multiplication matrice-vecteur associée, avec une matrice dense et de grande dimension mais possédant éventuellement une forte structure. Un second enjeu sera de coupler la fonction de tour alors obtenue avec un algorithme de cadencement de clef minimaliste, tout en évitant les faiblesses souvent conséquences de cette approche, comme les attaques par sous-espaces invariants. Une seconde approche consistera à chercher des instantiations alternatives du paradigme initié par Zorro et suivi par les chiffrements LowMC. Plus précisément, nous envisageons de remplacer les matrices de diffusion aléatoires par des matrices issues de codes de Goppa binaires. Ceci permettrait de simplifier l'analyse de sécurité actuelle de LowMC, en supprimant le caractère aléatoire de ses instances. Cependant, la structure particulière de fonction de tour incomplète utilisée dans cette famille présentera toujours un obstacle intéressant à surmonter avant d'obtenir des arguments ``wide-trail'' convaincants. Une seconde partie de cette thèse s'intéressera directement aux algorithmes de masquage utilisés comme contre-mesures contre les attaques par canaux auxiliaires, et plus particulièrement ceuxde faible complexité. Des travaux récents ont présenté des algorithmes de complexité remarquablement faible, en termes de complexité multiplicative ou en besoins d'aléas. Cependant, la sûreté de ces constructions dépend de matrices devant satisfaire des conditions complexes. Ceci a notamment pour conséquence que la cardinalité du corps sur lequel le masquage peut être implémenté augment fortement avec l'ordre de ce dernier. Une question intéressante est de déterminer si ce phénomène est intrinsèque à ce type de constructions, ou si des alternatives moins coûteuses existent. Un problème lié est de chercher à concevoir directement un schéma autour de conditions matricielles faciles à instancier, dans l'espoir qu'il maintienne une faible complexité. Enfin, la cryptographie étant un domaine très actif, une partie importante de l'activité de cette thèse consistera à étudier les nouvelles propositions d'algorithmes, de schémas de masquage et d'implémentations de primitives, pour éventuellement chercher à les attaquer et plus généralement avec pour objectif d'interagir avec la communauté scientifique.

  • Titre traduit

    Symmetric primitives of low multiplicative complexity, side-chanel attacks and masking


  • Résumé

    A first objective of this thesis will be to design, analyse and implement (both in low-level software and hardware) block ciphers with low multiplicative complexity, that is, algorithms whose implementation requires few finite field multiplications (e.g. few AND gates for an implementation over GF(2)). Such primitives play an important role in the security of embedded systems, as the overhead in protecting them against side-channel attacks such as DPA is relatively low. This is especially true when the deployed counter-measures such as masking are used at very high order, e.g. 32. So far, quite a few algorithms have been proposed in this setting, such as Zorro, Fantomas, Mysterion, or LowMC. However, some (e.g. Zorro) have now been broken, and others (e.g. LowMC) base their security on statistical arguments. In this thesis, we wish to study new constructions based on algebraic geometry codes. A first approach consists in exploiting codes of large dimension and high minimum distance built over small fields, such as GF(16). This would allow defining a block cipher with a classical SPN structure requiring few rounds, and globally few accesses to a 4-bit S-box of low multiplicative complexity. An important challenge will be to find efficient implementations of the relevant matrix-vector multiplication, where the matrix is dense and of large dimension, but possibly possessing some structure. Another challenge will be to couple the resulting round function with a minimal key derivation algorithm, while avoiding the typical weaknesses of this kind of approach, such as invariant subspace attacks. A second approach will be to study alternative instantiations of the paradigm followed by the LowMC ciphers. Namely, we wish to replace the randomly drawn diffusion matrices by ones coming from binary Goppa codes. This would allow to get rid of the statistical argument currently used to analyse the security of LowMC. Even then, the peculiar structure of the incomplete round function of this cipher family would still present an interesting challenge in finding strong wide-trail arguments. Another part of this thesis will focus more closely on masking algorithms themselves, especially ones of low complexity. Some recent work introduced algorithms with remarkably low multiplicative or randomness complexity. Yet these require complex matrix conditions to be safely instantiated, with a side effect that the cardinality of the field over which the masking scheme is built increases sharply with the masking order. An interesting question is whether this phenomenon is intrinsic to the approach, or if a less costly alternative could be designed. A related challenge would be to build a scheme that would be easier to instantiate by relaxing its associated matrix conditions. Finally, cryptography as a whole being a very active field, a major part of the thesis will focus on studying newly proposed block ciphers, masking schemes, primitive implementations, with the view of analysing (and possibly attacking) them, and more generally of interacting with the scientific community.