Concevoir des systèmes cryptographiques post-quantiques efficaces, pratiques et sûrs
| Auteur / Autrice : | Anaëlle Le dévéhat |
| Direction : | Benjamin Smith, François Morain |
| Type : | Projet de thèse |
| Discipline(s) : | Informatique, données, IA |
| Date : | Inscription en doctorat le 01/10/2022 |
| Etablissement(s) : | Institut polytechnique de Paris |
| Ecole(s) doctorale(s) : | École doctorale de l'Institut polytechnique de Paris |
| Partenaire(s) de recherche : | Laboratoire : LIX - Laboratoire d'informatique |
| Equipe de recherche : GRACE |
Mots clés
Mots clés libres
Résumé
Face aux avances dans le calcul quantique, qui pourrait un jour casser tout cryptosystème à clé publique actuellment deployé sur internet, la cryptographie post-quantique devient de plus en plus importante. Un cryptosystème est dit post-quantique s'il peut être utilisé n'avec que des ordinateurs classiques, mais qu'il resiste aux adversaires ayant des grands moyens de calcul classique *et* quantique. La recherche en cryptographie post-quantique tourne autour du processus de standardisation mené par le NIST (National Institute of Standards and Technology, USA) depuis 2016, dont la 4ème phase va bientôt démarrer. Ce projet est focalisé sur la hybridation sûr et éfficace des cryptosystèmes pré- et post-quantique. La hybridation combine un cryptosystème d'aujourd'hui, estimé fort par rapport au calcul classique mais faible en quantique, avec un nouveau cryptosystème post-quantique, qui est supposé être résistant aux attaques quantiques mais où l'analyse de sécurité est loin d'être mûr (par exemple : le problème 'hard' sous-jaccent est jeune et peu étudié ; ou bien le problème est bien dûr, mais les techniques pour implantations résistants aux attaques par canaux auxiliaires ne sont pas encore au point). L'union des deux systèmes n'aura pas forcement le même niveau de sécurité ; il faut donc mettre à jour les preuves de sécurité. On doit aussi penser aux optimisations et opportunités pour la mutualisation des ressources, et surtout (vu la pré-maturité du plupart des cryposystèmes post-quantiques) assurer l'agilité des implantations : c'est à dire, developper des cryptosystèmes et implantations qui facilitent la modification et re-parameterisation de leurs composants primitifs. Pendant ce projet, on va étudier l'amélioration des schèmas post-quantiques basés sur les isogénies, mais aussi les réseaux Euclidiens et les codes correcteurs. Dans le cadre des signatures, on va étudier l'application de deux techniques orthogonales : 1. Les méthodes de compression des clés et des signatures déjà proposées dans une cadre théorétique dans [1]. 2. Les méthodes de 'vérification progressive' proposées dans [2] En prenant les signatures GPV (à base des réseaux) et Wave (à base des codes, et developpé chez GRACE) comme cas d'étude, on va tenter de mettre les techniques ci-dessus, essentiellement théoriques jusqu'à là, en oeuvre, toutefois en visant des solutions hybrides avec des signatures pré-quantiques basés sur les courbes elliptiques (notamment EdDSA). On va commencer par une première implantation dans un système de calcul formel à haut niveau (soit Sage, soit Magma). Cela nous permettra de mieux comprendre les enjeux algorithmiques et goulets d'étranglement, pour étudier les trade-offs et optimisations au plus haut niveau. Cela nous permettra aussi de facilement varier les paramètre des cryptosystèmes, et mieux définir les jeux de paramètres optimaux correspondants aux niveaux de sécurité post-quantique du NIST. Cette implantation est susceptible d'être publié en open-source, pour faciliter la vérification de nos résultats par la communauté des chercheurs en cryptologie. Ensuite, au moins pour les paramètres les plus compacts, on va étudier une implantation en C, ciblant les microcontroleurs et objets connectés sous RIOT OS (https://riot-os.org). Le développement des logiciels pour RIOT ressemble fortement au développement en C standard ou Rust, mais sans l'allocation dynamique de memoire. RIOT étant une plateforme open-source, ce code peut être publié comme un paquet pour distribution libre en RIOT OS.