p lan n.
Skip this Video
Loading SlideShow in 5 Seconds..
P lan PowerPoint Presentation
Download Presentation
P lan

Loading in 2 Seconds...

  share
play fullscreen
1 / 38
Download Presentation

P lan - PowerPoint PPT Presentation

esme
104 Views
Download Presentation

P lan

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Chapitre 6 : La sécurité par le chiffrement Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP; - Capturer un mot de passe transmis en clair sur le réseau. Mounir GRARI Sécurité informatique167

  2. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux 1) Vocabulaire Le chiffrement est l’opération par laquelle on crypte un message, c’est une opération de codage. Chiffrer ou crypter une information a pour but de la rendre incompressible en l’absence d’un décodeur particulier. un cryptogramme est un message écrit en langage chiffré (message chiffré). La cryptographie est la science qui consiste à écrire l’ information (voix, son, textes, image fixe ou animée) en la rendant incompressible à ceux ne possédant pas les capacités de la déchiffrer. La cryptanalyse est l’ensemble des moyens qui permettent d’analyser une information chiffrée, afin de la déchiffrer. Mounir GRARI Sécurité informatique168

  3. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux 2) Algorithmes et clés des chiffrement Les systèmes de chiffrement utilisent des algorithmes de chiffrement qui s’appuient sur des fonctions mathématiques souvent complexes qui, à l’ aide d’ une clé de chiffrement, modifient les données à protéger en générant des données apparemment aléatoires. Le texte chiffré (cyphertext) peut alors être envoyé sur un réseau non sécurisé. Même s’ il est intercepté, le cryptogramme, est uniquement compréhensible par un tiers qui possède la clé de déchiffrement permettant d’ obtenir le texte initial en clair( plaintext). Mounir GRARI Sécurité informatique169

  4. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux Deux participants en communication dans un modèle de chiffrement. e est la clé de chiffrement. d est la clé de déchiffrement. E, D sont les algorithme du chiffrement et du déchiffrement. Eve joue le rôle d’un attaquant Mounir GRARI Sécurité informatique170

  5. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux Taille de la clé Une clé codée sur n bits (taille de la clé) peut prendre 2n valeurs. Plus la clé est longue, plus le nombre de clés possibles est important, et plus cela nécessite de la puissance et du temps de calcul (pou un attaquant) pour le trouver. Une clé de chiffrement/déchiffrement doit avoir une taille minimale afin d’ éviter qu’elle soit déterminée trop facilement. puisqsue il est devenu relativement simple de casser des clés d’ une longueur de 40 bits (environ 1012 possibilités de clés différentes), il est préférable de chiffrer les informations sensibles avec des clés plus longues de 128 bits (1038 possibilités) ou 256 bits, par exemple. Casser de telles clésdemande une très lourde infrastructure informatique et des temps de traitement important, ce qui est un empêchement pour certains. Le moyen le plus simple pour obtenir une clé est de la procurer directement auprès de l’utilisateur ou à partir du système qui la stocke, plutôt que d’essayer de la deviner par itération. Mounir GRARI Sécurité informatique171

  6. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux Robustesse du système La taille de la clé utilisée, la puissance de l’algorithme et la capacité à garder les clés secrètes de façon sécurisé, déterminent la robustesse d’un système de chiffrement. L’algorithme n’a pas besoin d’ être secret. Il est même recommandé qu’il soit publié afin que la communauté scientifique puisse tester sa résistance aux attaques et trouver les failles avant qu’un attaquant ne les exploite. Il n’est pas facile de garder des clés secrètes alors garder secret un algorithme l’est encore moins dans la mesure ou les algorithmes sont utilisées par un grand nombre d’ utilisateurs et durant de longues périodes. Un système de chiffrement est dit fiable, robuste, sûr ou sécurisé s’il reste inviolable indépendamment de la puissance de calcul ou du temps dont dispose un attaquant. Le système est opérationnellement sécurisé (computationalsecure) si sa sécurité dépend d’une série d’ opérations réalisables en théorie, mais irréalisable pratiquement (temps de traitement top long en appliquant les méthodes connues et en utilisant la puissance de calcul disponible). Mounir GRARI Sécurité informatique172

  7. Chapitre 6 : La sécurité par le chiffrement 1. Principes fondamentaux Notes : - Plus une clé est spécifique et son utilisation est limitée dans le temps, voir à usage unique, meilleure est la sécurité du système de chiffrement. - La robustesse d’ un système de chiffrement réside dans l’algorithme de chiffrement lui même et non sur la clé (l’ algorithme est incassable), modifier fréquemment les clés de chiffrement le rend encore plus sûr. - Si l’ algorithme constitue le maillon faible du système de chiffrement, changer la clé fréquemment n’ augmente pas sa robustesse. Mounir GRARI Sécurité informatique173

  8. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie 1) Introduction La cryptographie traditionnelle ou classique inclut tous les mécanismes et algorithmes basés sur des fonctions mathématiques ou logiques. Elle comprend tous les systèmes de chiffrement utilisés depuis l’Egypte ancienne jusqu’aux principaux systèmes de chiffrement actuellement en vigueur. Elle se devise en deux classes de systèmes déchiffrement : - les chiffrement symétrique - et les systèmes de chiffrement asymétrique Mounir GRARI Sécurité informatique174

  9. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie 2) Systèmes de chiffrement symétrique Mode opératoire Pour crypter ou décrypter un texte, il faut détenir une clé et un algorithme de chiffrement. S’il s’agit de la même clé pour effectuer ces deux opérations, le système de chiffrement est dit symétrique. L’ émetteur et le récepteur doivent posséder la même clé secrète pour rendre confidentielles des données et pouvoir les comprendre (chiffrer et déchiffrer). Mounir GRARI Sécurité informatique175

  10. Chapitre 6 : La sécurité par le chiffrement Emetteur Clé secrète Texte en clair Algorithme de chiffrement symétrique DES, IDEA, AES, Blowfish, RC4, RC5, … 2. Cryptographie Réseau Texte chiffré Texte chiffré Clé secrète Algorithme de chiffrement symétrique Texte en clair Destinataire Mounir GRARI Sécurité informatique176

  11. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Un exemple : “chiffrement de César” Pour crypter un message, il faut décaler de trois lettres dans l’alphabet chaque lettre du message à transmettre. Pour décrypter un message chiffré, il suffit de décaler chacune des lettres de 3 positions dans le sens inverse de l’alphabet. Exemple numérique: - La clé : 3 - Texte en clair : salam - Texte chiffré : vdodp(décaler en arrière de trois lettres dans l’alphabet) Mounir GRARI Sécurité informatique177

  12. Chapitre 6 : La sécurité par le chiffrement Emetteur Clé secrète = 3 Texte en clair : salam Algorithme de chiffrement symétrique : Décalage des lettres de l’alphabet (+3) 2. Cryptographie Réseau Texte chiffré : vdodp Texte chiffré : vdodp Clé secrète = 3 Algorithme de déchiffrement symétrique : Décalage des lettres de l’alphabet (-3) Texte en clair : salam +3 : décalage en avant par 3 - 3 : décalage en arrière par 3 Destinataire Mounir GRARI Sécurité informatique178

  13. Chapitre 6 : La sécurité par le chiffrement • Les grandes lignes de l'algorithme sont les suivantes : • - Fractionnement du texte en blocs de 64 bits; • - Permutation initiale des blocs ; • - Découpage des blocs en deux parties: gauche et droite, nommées G et D; • - Etapes de permutation et de substitution répétées 16 fois (appelées rondes) ; • - Recollement des parties gauche et droite puis permutation initiale inverse. • Notes : La clé est codée sur 64 bits et formée de 16 blocs de 4 bits, généralement notés k1 à k16. 2. Cryptographie Autre exemple : DES Mounir GRARI Sécurité informatique179

  14. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Principaux algorithmes DES (Data Encryption Standard) a été elaboré par le NIST(National Institute of Standards and Technology) en 1977. Les informations sont chiffrées par blocs de 64 bits avec une clé de 56 bits. Cet algorithme est largement utilisé pour les applications financières. Il est generalement mis en œuvre en un mode dit de chainage de blocs (CBC, Cipher Block Chaining) ou le chiffrement d’ un bloc dépend du précédent. Les algorithmes Triple DES, DESX (DES XORed), GDES (Generalized DES), RDES(Randomized DES) sont déduites de l’algorithme DES, elle exploitent des clés plus longues, rendant ainsi l’ algorithme plus puissant. Le triple DES tire son nom du fait que l’on réalise trois niveau de chiffrement ce qui donne une clé effective de chiffrement de 168 bits (56 bits trois trois). RC2, RC4 et RC5 sont des algorithmes propriétaires élaborés par Ronald Rivest et diffusé par la société RSA Security Inc. Ces algorithmes utilisent des clés de longueur variable pouvant aller jusqu’à 2048 bits. Ils sont utilisés principalement pour rendre confidentielle des flux applicatifs. Mounir GRARI Sécurité informatique180

  15. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie IDEA (International Data EncryptionAlgorithm) elaboré conjointement par des chercheurs de l’ école polytechnique fédéral de Zurich et de la société Ascom, utilise une clé de 128 bits pour coder des blocs de données de 64 bits. Il est principalement utiliser par le protocole de messagerie sécurisée PGP (Pretty Good Privacy). Blowfishest un algorithme de chiffrement symétrique implimanté par Bruce Schneierr en 1993. AES (Advanced Encryption Standard) est un algorithme qui a été publié pour la première fois en 1998 par les Belges Vincent Rijmen et Joan Daemen. Il exploite des clés de 128 bits, 192 ou 256 bits sur des blocs de 128 bits. L’ AES est considéré rapide, facile à implémenter et ne requiert que peu de ressource mémoire. Actuellement, ce système demeure incassable et reste le plus sûr des systèmes de chiffrement symétrique. Mounir GRARI Sécurité informatique181

  16. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Cryptanalyse Les cryptanalyse des systèmes de chiffrement se base en générale sur la découverte de la clés de chiffrement, sur l’analyse des message indépendamment de la connaissance des clés. En réalité, La majorité des systèmes de chiffrement symétrique sont opérationnellement sécurisés (ils résistent aux attaques de force brute). Toutefois, avec le progrès scientifique dans le domaine de l’informatique et de l’ électronique, les systèmes qui sont jugés actuellement sûrs ne le seront peut être plus dans le futur proche (ce qui est déjà le cas du DES simple avec une clé 56 bits) du fait de l’ augmentation de la capacité et de la rapidité de traitement mises à disposition de la communauté. Le cryptanalyste peut par exemple tester plusieurs clés qui ne diffèrent les unes par rapport aux autre que de quelques bit sur un seul message pour deviner le comportement du système de chiffrement. Ensuite il va tenter de retrouver les messages originaux à partir des messages chiffrés sans avoir recours à l’utilisation effective de la clé des utilisateurs. Mounir GRARI Sécurité informatique182

  17. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Limites du chiffrement symétrique Chaque personne doit posséder autant de clés secrètes qu’ elle a d’ interlocuteurs. Il faut disposer d’ autant de paires différentes de clés qu’il y a de paires de correspondants! Ce qui devient vite impossible à implémenter et inadapté aux communications multipartenaires et aux services d’ Internet. Un système de chiffrement symétrique pose donc le problème de la gestion et notamment de la distribution des clés secrètes. Cela aspect constitue une faiblesse des systèmes de chiffrement symétrique. C’est pour pallier la complexité du problème de la gestion et la distribution des clés des systèmes de chiffrement symétrique qu’un autre type de système de chiffrement, qualifié de chiffrement asymétrique ou chiffrement à clé publique a été conçu et est actuellement largement utilisé dans le monde d’ Internet. Mounir GRARI Sécurité informatique183

  18. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie 2) Système de chiffrement asymétrique Mode opératoire Un système de chiffrement asymétrique est basé sur l’ utilisation d’un couple unique de deux clés complémentaires, calculées l’une par rapport à l’autre. Cette bicléest constituée d’une clé publique (connue par tous) et d’une clé privée (connu par son propriétaire). Seule la clé publique peut être connue de tous, tandis que la clé privée doit être confidentielle et traitée comme un secret. On doit connaitre la clé publique d’ une destinataire pour lui envoyer des informations chiffrées. Ce dernier les décryptera à leur réception avec sa clé privée qu’il est le seul à connaitre . Le message est confidentiel pour le destinataire dans le mesure ou lui seul peut le déchiffrer par sa clé privée. De cette façon, pour transmettre des données de manière confidentielle avec un système de chiffrement asymétrique, l’ émetteur chiffre un message avec la clé publique du destinataire du message et le destinataire le déchiffre avec sa clé privée. Mounir GRARI Sécurité informatique184

  19. Chapitre 6 : La sécurité par le chiffrement Emetteur Clé publique + clé privée Clé publique du destinataire Texte en clair Algorithme de chiffrement asymétrique RSA, Diffie-Hellman, ElGamal, … 2. Cryptographie Réseau Texte chiffré Texte chiffré Clé privée du destinataire Le destinataire possède deux clés : Algorithme de chiffrement asymétrique Texte en clair Destinataire Mounir GRARI Sécurité informatique185

  20. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Un exemple : RSA Génération des clés par le destinataire : Le destinataire choisit au hasard deux nombres premiers p et q et calcule . Il choisit au hasard e tel que : le nombre d'entiers, inférieurs à n , premiers avec n . est le plus grand diviseur commun de et de e . Le destinataire calcule l'entier d tel que : La clé publique du destinataire est le couple (n,e) et sa clé secrète est (n,d). Mounir GRARI Sécurité informatique186

  21. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Chiffrement : L’ émetteur récupère la clé publique (n,e) du destinataire et souhaite lui envoyer la version cryptée d'un texte en clair, représenté par la donnée d'un entier m tel que : L’ émetteur calcule : Déchiffrement : Lorsque le destinataire reçoit , il calcule et récupère ainsi le message m puisque : Notes : 1) Ce qu’est en rouge sont des nombres privée du destinataire. 2) Quelle est la relation qui lie la clé privée et la clé secrète ? 3) Comment casser donc RSA? Mounir GRARI Sécurité informatique187

  22. Chapitre 6 : La sécurité par le chiffrement Emetteur (n,e) + (n,d) Clé publique du destinataire : (n,e) Texte en clair : m Algorithme de chiffrement asymétrique : RSA 2. Cryptographie Texte chiffré : Texte chiffré : Réseau Clé privée du destinataire : (n,d) Le destinataire possède deux clés : Algorithme de chiffrement asymétrique : RSA Texte en clair : Destinataire Mounir GRARI Sécurité informatique188

  23. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Exemple numérique de RSA: Prenons deux nombres premiers aléatoirement : p = 29 , q = 37. On calcule n = pq = 29 * 37 = 1073 . On doit choisir e au hasard tel que e et ( p -1)(q -1) = (29 -1)(37 -1) = 1008 soient premiers entre eux. On prend e = 71. On choisit d tel que 71*dmod 1008 = 1. On trouve d = 1079 . Voici alors les deux clés privée et publique : Mounir GRARI Sécurité informatique189

  24. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie On va encrypter le message 'HELLO'. On va prendre d’abord le code ASCII de chaque caractère et on les met bout à bout : m = 72(H) 69(E) 76(L)76(L) 79(O) . Ensuite, il faut découper le message m en blocs qui comportent moins de chiffres que n . n comporte 4 chiffres, on va donc découper notre message m en blocs de 3 chiffres : 726 976 767 900 (on complète avec des zéros) par suite on encrypte chacun de ces blocs : 72671mod1073 = 436 97671mod1073 = 822 76771mod1073 = 825 90071mod1073 = 552 Le message encrypté est 436 822 825 552. On peut reconstituer le message chiffré avec d : 4361079mod1073 = 726 8221079mod1073 = 976 8251079mod1073 = 767 5521079mod1073 = 900 C'est à dire la suite de chiffre 726 976 767 900.On retrouve notre message en clair 72 69 76 76 79 c’est à dire 'HELLO'. Mounir GRARI Sécurité informatique190

  25. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Le challenge RSA : Après la découverte de l'algorithme RSA, la société RSA Security a été créée pour vendre le cryptosystèmesRSA. en 1991, ils ont mis en place un concours de factorisation avec de l'argent à la clé pour montrer à quel point ils étaient sûrs de la sécurité de leurs algorithmes(factoriser des nombres de 100 à 617 chiffres décimaux). En 2007, RSA Security a mis fin au concours. RSA-768est un nombre du concours RSA. Il est long de 768 bits (232 chiffres décimaux). Il a été factorisé après 2 ans et demi de recherche et calculs. Cinq grands organismes de recherches étaient associés (EPFL à Lausanne, NTT au Japon, l'Université de Bonn, CWI au Pays-Bas et LORIA à Nancy). Quelques chiffres pour donner une idée des calculs nécessaires : - 5To de données traitées ; - Calcul distribué sur plus de 1700 cœurs ; - Environ 1020 opérations (soit 2000 ans sur un processeur simple cœur 2,2GHz) ; Notes : Pour avoir une sécurité optimale il ne faut plus utiliser des clés RSA inférieures à 1024 bits. Selon les chercheurs, RSA-1024 devrait résister pendant encore 5 à 10 ans (sauf découverte mathématique majeure). Mounir GRARI Sécurité informatique191

  26. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Un autre exemple : l’algorithme ElGamal Si RSA est un des algorithmes à clé publique les plus populaires, il en existe quelques autres. L’un d’entre eux, l’algorithme ElGamal, a été développé par TaherElGamal en 1984. Il n’est pas breveté et peut être utilisé librement. Ce cryptosystème repose sur la difficulté de la résolution du logarithme discret. (si y = g xmod p , on dit que x est le logarithme discret de y de base g modulo p) Il présente l'avantage de faire appel à deux processus aléatoires, mais présente l'inconvénient de générer des messages chiffrés particulièrement longs. Mounir GRARI Sécurité informatique192

  27. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Le fonctionnement de l’algorithme d’ ElGamal Génération des clés : Alice (destinataire) choisit deux paramètres non-secrets : un nombre premier p et une un nombre g inferieur à p. Elle choisit aléatoirement un nombre a dans l'intervalle [1, . . , p-2 ] et calcule α = gamodp. Elle publie sa clé (p, g, α) et garde secrète sa clé a. Chiffrement: Bob, qui désire envoyer un message m à Alice, l'exprime sous la forme d'un nombre entre 0 et p-1. Il choisit aléatoirement un nombre b dans l'intervalle [1, . . , p-2 ] et calcule β = gbmod p. Il chiffre alors son message m en m' = αb.mmodp. Il transmet enfin à Alice le couple (β, m') Déchiffrement : Pour déchiffrer le message de Bob, Alice détermine le nombre x = p-1-a. Elle calcule βx.m' modp et retrouve le message m initial (à vérifier). Mounir GRARI Sécurité informatique193

  28. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie en effet on : car on a d’ après le petit théorème de Fermant (Théorème : pour tout entier naturel non nul net tout entier a premier avec n, on a: où φ(n) désigne la fonction φ d'Euler comptant les entiers entre 1 et n qui sont premiers avec n. Si n est un nombre premier, alors φ(n) = n - 1) Note importante : Casser cet algorithme c’est trouver a partir de l’ équation : α = gamodp Application numérique de l’ algorihtme de ElGamal Alice : p = 97 et g = 13. Elle choisit aléatoirement un nombre a, disons 45, dans l'intervalle [1, . . , 95]. Elle calcule α = 1345mod97 = 20. Elle publie sa clé (97, 13, 20 ) et garde secrète sa clé 45. Bob veut envoyer le message “vew”à Alice. En utilisant le code ASCII, son message est 118 101 119. Il le découpe en nombres entre 0 et 97 : 11 81 01 11 09. Il choisit aléatoirement un nombre b, disons 35, dans l'intervalle [1, . . , 95]. Il calcule β = 1335mod 97 = 71 mod97. Mounir GRARI Sécurité informatique194

  29. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Il chiffre alors son message nombre par nombre : 11 est chiffré 2035 · 11 mod 97 = 46 · 11 mod 97 = 21 81 est chiffré 2035 · 81 mod 97 = 46 · 81 mod 97 = 40 01 est chiffré 2035 · 1 mod 97 = 46 · 1 mod 97 = 46 09 est chiffré 2035 · 9 mod 97 = 46 · 9 mod 97 = 26 Il transmet enfin à Alice le couple (71, 21 40 46 26) Pour déchiffrer le message de Bob, Alice détermine le nombre x = 97-1-45= 51. Pour chaque partie m' du message, elle calcule 7151·m' mod97 : 7151· 21 mod 97 = 19 · 21 mod 97 = 11 7151· 40 mod 97 = 19 · 40 mod 97 = 81 7151· 46 mod 97 = 19 · 46 mod 97 = 1 7151· 26 mod 97 = 19 · 26 mod 97 = 9. Elle retrouve le message 11810109 après concaténation (deux chiffres par deux chiffres). Mounir GRARI Sécurité informatique195

  30. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Notes : - La mise en œuvre du chiffrement asymétrique permet de vérifier l’ origine d’ un message et d’ authentifier un émetteur (utilisation de signature et certificat). - L’utilisation des algorithmes de chiffrement asymétrique est très utilisé pour réaliser des échange confidentiels et pour effectuer des signature électronique, notamment dans le domaine du commerce électronique et des transactions financières. - Le temps d’ exécution de ces algorithmes produit des temps de traitement processeur supplémentaire importants, rendant non performant le chiffrement de messages longs. Mounir GRARI Sécurité informatique196

  31. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Principaux algorithmes Les principaux algorithmes de chiffrement à clé publique, dont le nom est celui de leur inventeurs, exploitent le plus souvent des clés de longueur variant de 512 à 1024 bits voir 2048. Nous retiendrons les algorithmes importants : RSA (pour Ron Rivest, Adi Shamir, Len Adelman) qui est basé su la difficulté de factorisation des nombre premiers. Diffie-Hellman et ElGamal qui sont basé sur le problème mathématique de calcul de logarithmes discrets. Certains algorithmes basés sur les équations de calcul de circonférences des ellipses sont à l’origine de la cryptographie à courbe elliptique (ECC, EllipticCurveCryptography), qui pourrait remplacer les algorithmes actuels. Mounir GRARI Sécurité informatique197

  32. Chapitre 6 : La sécurité par le chiffrement 2. Cryptographie Cryptanalyse La cryptanalyse des systèmes de chiffrement asymétrique s’ appuie sur les mathématiques. Elle est basée sur la résolution ou la réduction de la complexité des fonctions inverses à celles utilisées par les systèmes de chiffrement symétrique. Donald Coppersmith (www.research.ibm.com) a élaboré en 1983 une méthode permettant de calculer les algorithmes discrets dans un temps polynomial (qui varie linéairement avec la longueur de la clé). Celle-ci est devenue un moyen incontournable pour les cryptanalyse de l’algorithme Diffie-Hellman. Des mathématiciens ont trouvé en 1980, un algorithme qui permettait de factoriser des nombres à 50 chiffres en 1012 opérations élémentaires. En 2005, une équipe chinoise a annoncée qu’elle avait réussi à réduire la complexité de 280 à 269 opération élémentaires et a démontré qu’elle a cassé l’ algorithme SHA-1. Note : Même en l’absence de la diffusion d’une méthode prouvant qu’un algorithme a été casse, cela ne veut pas dire que la méthode n’existe pas ou que l’algorithme n’ a pas été cassé. Aucune preuve mathématique ne permet d’affirmer que ce n’est pas possible. Mounir GRARI Sécurité informatique198

  33. Chapitre 6 : La sécurité par le chiffrement 3. Clés secrètes La sécurité du processus des chiffrement repose en grande partie sur la sécurité et la confidentialité des clés utilisées, sur la robustesse des algorithmes et sur la sécurité des plates-formes matérielles et logicielles qui les supportent. La durée de vie d’une clé de chiffrement (et de déchiffrement) dépend de son utilisation. Il est conseillé de changer la clé périodiquement, tout en évitant les modification trop fréquentes qui rendent difficile la gestion des clés. En revanche, pour toutes les applications ouvertes au réseau, il est hautement souhaitable d’utiliser une clé à usage unique, particulière à chaque session de travail. Le système de gestion de clés basé sur l’usage d’une carte à puce (et d’un lecteur de carte) autorise l’usage d’une clé unique à chaque session de travail. En fonction des besoins, les données à chiffrer ou à déchiffrer le sont par le processeur de la carte à puce et le résultat est retourné à l’utilisateur. Ainsi, la clé secrète ne quitte jamais la puce. Mounir GRARI Sécurité informatique199

  34. Chapitre 6 : La sécurité par le chiffrement 3. Clés secrètes Les fonctions d’un système de gestion de clés sont celles qui permettent de réaliser les services de: - Génération d’une clé en fonction des besoins et des systèmes de chiffrement; - Distribution des clés aux entités (vérification, authentification des entités, etc.); - Stockage des clés de manière sécurisé (chiffrement des clés , sécurité du serveur, archivage fiable afin d’assurer la confidentialité et l’ intégrité des clés); - Surveillance(monitoring), d’ enregistrement, d’audit , de traçage, de sécurité, de test de bon fonctionnement, de alarme de contrôle d’ accès aux clés, etc.; - Destruction des clés inutiles (destruction physique, etc.); Dans un système d’information, plusieurs clés de chiffrement sont généralement utilisées. Il peut alors exister une certaine hiérarchie des clés (notion de clé maitresse, physiquement protégée, et de clés filles chiffrées à partir de celle-ci). Mounir GRARI Sécurité informatique200

  35. Chapitre 6 : La sécurité par le chiffrement 3. Clés secrètes Exemple de l’ algorithme de DiffieHellman pour créer une clé partagée Les deux participants (Alice et Bob) partagent deux paramètres non-secrets : un nombre premier p et un nombre g tel que 1< g < p . Chacun d'eux choisit une clé privée dans l'intervalle [1,.., p - 2 ], Alice choisissant une valeur a et Bob une valeur b . Chacun des participants calcule alors une valeur publique qu'ils s'échangent : Alice envoie A = gamod p à Bob qui lui envoie B = gbmod p . Bob calcule Abmodp et Alice calcule Bamodp . Cette valeur étant nécessairement la même, ainsi, ils disposent d’une valeur k qui fait office de clé secrète partagée puisque on a : k = Bamod p = (gbmod p)a = gbamod p k = Abmod p = (gamodp)b = gbamod p Mounir GRARI Sécurité informatique201

  36. Chapitre 6 : La sécurité par le chiffrement 3. Clés secrètes Exemple numérique de l’ algorithme de DiffieHellman Supposons à titre d’exemple, qu’Alice et Bob partagent les deux informations suivantes : p = 233 et g = 45 . Si Alice choisit a = 11et Bob b = 20 , alors A = 4511mod233 =147 , B = 4520mod233 =195 . Aussi on a : Bamod p=19511mod 233=169 et Abmod p=14720mod 233 =169. Alice et Bob disposent d’une clé privée, k = 169 . La sécurité de cette technique repose sur la difficulté de calcul de k (= gabmod p) à partir de A= gamodp ou B= gbmod p lorsque p est grand. La fonction utilisée dans cette méthode f (x ) = gxmod pest une fonction à sens unique : f (x ) est facile à calculer, mais “retrouver x à partir de { f (x ) , g et p }” est très délicat . L’algorithme de DiffieHellmanse base ainsi sur le problème du logarithme discret. Question : Comment casse l’algorithme de diffieHellman? Mounir GRARI Sécurité informatique202

  37. Chapitre 6 : La sécurité par le chiffrement 3. Clés secrètes Les faiblesse de l’ algorithme de DiffieHellman Quand Alice veut envoyer un message chiffré à Bob, elle doit d’abord entrer en contact avec lui afin de fixer la clé lors d’un premier échange; chaque transmission de message se trouve ainsi fortement ralentie et perd toute instantanéité. On parle dans ce cas du problème d’authentification. Une tierce personne peut intervenir lors du processus d’échange des clés publiques en les modifiant par des clés de son choix; elle sera alors en mesure de décrypter les messages envoyés sans que les participants ne s’en aperçoivent. Ainsi, lors de l’échange des clés, l'attaquant choisit sa propre clé c et calcule G = gcmod p . Il remplace a et b par cette valeur. Alice va employer la clé k1 =Ga =gacmod p et Bob la clé k2 =Gb= gbcmod p. Lors de l’échange d’un message chiffré, l'attaquant déchiffre les messages d’Alice à l’aide de la clé k1qu’il partage avec Alice, puis les chiffres avec la clé k2qu’il partage avec Bob. Ce dernier va décrypter le message d’Alice sans s’apercevoir qu’il a été intercepté et manipulé. Ici on parle de l’attaque “man in the middle”. Aussi l’algorithme de DiffieHellman est menacé par le progrès en mathématiques car le problème difficile du logarithme discret peut être résolu dans le futur. Mounir GRARI Sécurité informatique203

  38. Chapitre 6 : La sécurité par le chiffrement Exercice 32 : Quels sont les principaux avantages, inconvénients et limites associé au chiffrement symétrique? Exercice 33 : Quels sont les principaux avantages, inconvénients et limites associé au chiffrement asymétrique? Exercice 34 : pourquoi l’ usage du chiffrement asymétrique est-il préféré au chiffrement symétrique dans les transaction commerciale sur Internet? Dans quelles circonstances le chiffrement symétrique peut-il être utilisé? Exercice 35 : Qu’est ce qui permet de qualifier un algorithme de chiffrement de robuste? Exercice 36 : Pourquoi est-il difficile d’ avoir confiance dans les produit de chiffrement commercialisés? Mounir GRARI Sécurité informatique204