ORAL PROBATOIRE – CNAM de PARIS Le cryptosystème RSA à clés publiques 21 mai 2003 Jérémy LECLERT Plan 1. Principe de fonctionnement du RSA 1. tilisation des clés 2. Applications du RSA 3. La force du RSA 1. Facilité de trouver deux nombres premiers 2. Difficulté de factoriser un grand nombre 4. Les faiblesses du RSA 2 Introduction Définition du cryptosystème à clé publique Histoire du RSA 3 Applications du RSA Signature et authentification au niveau de la messagerie électronique (ex: PGP) Sécurisation des échanges d’informations sur Internet (ex: SSL, SET) Certification de cartes bancaires Systèmes d’exploitation, etc… 4 5 Principe du fonctionnement du RSA Elaboration des clés La clé publique (n,e) – Multiplier 2 nombres premiers p et q : n = pq – Trouver e premier avec Φ(n)=(p-1)(q-1) La clé privée (n,d) – Calculer d l’inverse de e modulo Φ(n) 6 Principe du fonctionnement du RSA Utilisation des clés 1. Coder un message en un nombre M 2. Découper si besoin ce nombre en tronçons Mi(de tailles égales) inférieurs à n 3. Crypter chaque tronçon en calculant Ci = Mie [n] 4. Décrypter chaque Ci en calculant Mi=Cid [n] 7 Force du RSA Il est « facile » de trouver deux grands nombres premiers… – Les algorithmes de composition : • Miller-Rabin • Solovay-Strassen – Les algorithmes de preuve de primarité : • « Les sommes de Jacobi » de C,L,A,P,R • L’algorithme d’Agrawal, Kayal et Saxena • ECPP de Goldwasser, Kilian et Atkin 8 graph1 9 Force du RSA …mais très difficile de factoriser un grand nombre – La méthode d’Erathosthène • Diviser n par tous les nombres premiers < n : trop long si n est grand! – L’algorithme GNFS • Trouver v et w tels que n divise v2-w2 • Complexité du GNFS : exp((c+o(1))(log n)1/3(log log n)2/3) où c ≈ 1.902 10 graph2 11 Faiblesses du RSA Dues surtout à une mauvaise utilisation… Clés trop longues : attention à la concurrence! 12 Conclusion « Il est vraiment douteux que l'ingéniosité humaine puisse créer une énigme […] dont l'ingéniosité humaine ne vienne à bout […] » Edgar Allan Poe, Le scarabée d’or 13