La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Electif P2011 (2009) - Cryptologie Cryptologie Boris BLAZEJCZAK.

Présentations similaires


Présentation au sujet: "Electif P2011 (2009) - Cryptologie Cryptologie Boris BLAZEJCZAK."— Transcription de la présentation:

1 Electif P2011 (2009) - Cryptologie Cryptologie Boris BLAZEJCZAK

2 Electif P2011 (2009) - Cryptologie - 2 Objectifs Saisir l’importance de la sécurité dans l’ère de l’informatique Comprendre les différents types d’algorithmes cryptographiques  Algorithmes de chiffrement symétrique  Algorithmes d’échange de clés  Algorithmes de chiffrement asymétrique Saisir l’importance des longueurs de clés dans la cryptographie Découvrir quelques applications de la cryptographie Avertissement : Les transparents sont en français/anglais Il peut avoir des mathématiques dans l’informatique

3 Electif P2011 (2009) - Cryptologie - 3 Cryptologie « Art / Science du Secret » Définition La cryptographie vit grâce à la cryptanalyse dont elle est indissociable Un bon cryptogramme doit résister à la cryptanalyse, au moins pendant la durée de vie du secret qu’il protège Une attaque est viable si :  Le travail du cryptanalyste et les moyens nécessaires restent « raisonnables »  … et si le coût induit ne dépasse pas la valeur du secret à découvrir ! Enfin, ne pas oublier que le secret peut aussi être obtenu par la menace, la force, la corruption, le vol, l’indiscrétion, la séduction… Les pirates ne sont pas forcément tous cryptanalystes ! Secret Msg chiffré Msg clair Cryptographie « Ecriture secrète » Cryptanalyse « Analyse de l’écriture secrète »

4 Electif P2011 (2009) - Cryptologie - 4 Transmettre une information que seules les personnes habilitées peuvent utiliser Première solution : un algorithme de chiffrement secret  Connu des seules personnes habilitées, donc partagé par N acteurs  Une personne extérieure peut découvrir l’algorithme, et tout est à refaire  Exemple : Jules César – décalage de 13 lettres de chaque lettre du message Pour qu’un algorithme soit sûr, il faut qu’il soit public afin que tout le monde puisse en étudier le fonctionnement et découvrir les failles qu’il contient (Kerckhoffs)‏  Seul un paramètre de chiffrement, appelé clé, ne sera pas public  La difficulté pour un tiers de trouver la clé inconnue fait la force du système Introduction Quel secret ? (1/2)‏ Msg clair Algorithme secret Msg chiffré Msg clair Msg clair Algorithme public Msg chiffré Msg clair clé

5 Electif P2011 (2009) - Cryptologie - 5 Exemple d’algorithme secret (qui ne l’est pas resté longtemps) :  Le chiffrement des DVD pour empêcher les copies :  Cet algorithme a été maintenu secret  Et adopté par l’industrie du divertissement grand public  Et implémenté dans des millions de lecteurs DVD  … et craqué par un étudiant !  Il est impossible aujourd’hui de conserver un algorithme secret  Le programme sera tôt ou tard récupéré par un « pirate »  Et dé-assemblé, et traité en « reverse-engineering »  Et l’algorithme sera mis à jour Conclusion : un algorithme secret n’est jamais sûr en cryptographie  En cryptographie moderne, un axiome de base est que la sécurité d’un cryptogramme doit résider uniquement dans la clé de chiffrement, et jamais dans l’algorithme de chiffrement (principe de Kerckhoffs)‏  Il est donc prudent d’utiliser les algorithmes standards bien connus et éprouvés, dont on connaît les limites et la force (taille des clés, etc…)‏  La taille des clés sera choisie suffisamment grande pour rendre impossible l’aboutissement d’une attaque par force brute (essai de toutes les clés possibles)‏  On verra plus loin l’exemple de la Carte Bleue… Introduction Quel secret ? (2/2)‏

6 Electif P2011 (2009) - Cryptologie - 6 Bases mathématiques Les Nombres Premiers Nombre premiers  Il existe une infinité de nombres premiers  Card { P / P <= n } ~ n / ln n (de la Vallée Poussin) Pour n=10 154, ln n = 154 ln 10 = 354  Par exemple, il y a donc environ 10 150 nombres premiers de 512 bits ou moins (2 512 = 10 154 )‏  Et on a 1 chance sur ln(10 150 ) de tomber sur un premier en choisissant au hasard un nombre de 150 chiffres, soit 1 chance sur 345 : c’est tout à fait gérable  Approximation de P n (n ème nombre premier) : P n ~ n ln n. n ln n =6)‏  Test de primalité probabiliste (taux d’erreur < 2 -100 ) :  Test de primalité de Fermat (mais échoue pour les nombres de Carmichael)‏  Test de primalité de Solovay-Strassen (ne pas l’utiliser)‏  Test de primalité de Miller-Rabin (plus efficace et au moins aussi correct que Solovay-Strassen)‏  Factorisation d’un nombre (en produit de facteurs premiers)‏  La factorisation des grands nombres est un problème plus difficile que la recherche des nombres premiers  Quelques nombres premiers célèbres :  M 127 = 2 127 –1 = ~10 39 = Premier de Mersenne, découvert par Lucas = 170 141 183 460 469 231 731 687 303 715 884 105 727 … est resté jusqu’en 1952 le plus grand nombre premier connu…  M 32 582 657 est le plus grand connu à ce jour : 9 808 358 chiffres, le 4/9/2006  Rep-Unit « Nombre uniforme en 1 », 5 sont premiers :  R 2 = 11, R 19, R 23 = 11 111 111 111 111 111 111 111, R 317, R 1021  R 49081 = (10 49081 – 1)/9 est probablement premier  On conjecture que les Rep-Units premiers sont en nombre infini  909 090 909 090 909 090 909 090 909 091 est premier

7 Electif P2011 (2009) - Cryptologie - 7 Bases mathématiques (1/) Générateurs de nombres aléatoires Une séquence de 0 et de 1 est aléatoire si le prochain bit est imprévisible (il ne peut pas être déduit des bits précédents)‏  Un ordinateur est une machine déterministe, il n’est pas facile de lui faire générér une séquence aléatoire  On génère des nombres « pseudo-aléatoires », presque aléatoires  Satisfaisants pour des simulations  Non acceptables pour la cryptographie Générateurs de nombres aléatoires (de qualité) « cryptographique » :  Algorithme « Blum Blum Shub » : x n+1 =(x n )² [pq], avec p,q 2 grands nombres premiers  On ne conserve en sortie de x n que son LSB ou au maxi ses log(log(pq)) bits de poids faible  Avec certaines conditions sur p et q, il est impossible de différencier la suite produite d’une suite aléatoire  Algorithme « Fortuna » : (du nom de la déesse romaine du hasard)‏  Un algorithme de chiffrement par bloc chiffre un compteur, et la clé est changée régulièrement Utilisations :  Génération de Clés aléatoires  Chiffrement par un simple XOR entre les bits du générateur et les bits du message clair  C’est le cryptogramme parfait (si le générateur est bien aléatoire), indéchiffrable sans la clé (et si cette clé est elle-même aléatoire)‏  Protocoles « Challenge/Response » 0100111001101010100101000010 101101010100010101010100

8 Electif P2011 (2009) - Cryptologie - 8 Bases mathématiques Arithmétique dans Z/nZ, et Courbes elliptiques Arithmétique dans Z/nZ (anneau des entiers modulo n)‏  Z/nZ contient les classes 0 à n-1, avec x = { z = x + k  n, k   }  Un élément a est inversible ssi  u / a  u = 1 et donc pgcd(a,n) = a  n = 1  Si n est premier Z/nZ est un corps  Tout a non nul admet un symétrique u pour la multiplication : a  u = 1 Relation de Bezout  Si pgcd(a,n) = a  n = 1,  (u, q)   x  / a  u + n  q = 1 et donc a  u = 1 [n] g est primitif par rapport à n si pour chaque u de 1 à n-1, il existe un certain v tel que g v = u [n] dans Z/nZ Logarithme discret  Etant donnés les entiers (g,h) inférieurs à n (et g, générateur, donc > 1) :  trouver l’entier e  [0,n-1] / h = g e [n]  Autrement dit, inverser l’exponentiation dans Z/nZ  Il s’agit d’un problème difficile quand n et g sont de grands nombres Courbes elliptiques : y 2 + a 1 xy + a 3 y = x 3 + a 2 x + a 4 x + a 6 à coefficients dans un corps  On définit une addition sur les points de la courbe, et un groupe.  L’addition est le dual de la multiplication modulaire, et l’addition multiple est le dual de l’exponentiation modulaire

9 Electif P2011 (2009) - Cryptologie - 9 Cryptographie : les principes Chiffrement par substitution : remplacer une lettre par une autre. Plusieurs types :  Mono-alphabétique : bijection dans l’alphabet, pour chaque lettre (César)‏  Homophonique : simple mais sans bijection  de polygrammes : simple par blocs (chaque bloc est substitué par un autre)‏  Poly-alphabétique : simple à N alphabets chiffrés, l’alphabet chiffré utilisé change au cours du chiffrement (Vigenère, Enigma)‏ Chiffrement par transposition : mélanger les lettres du message (changer leur position)‏ Chiffrement Symétrique  Rapide et bien maîtrisée  Multiplication des clés : dans une communauté de N personnes, il faut N(N-1)/2 clés  Pas de garantie d’intégrité et de signature Génération d’une clé partagée sans transmission de cette clé  Algorithme de Diffie-Hellman (1976)‏ Chiffrement Asymétrique  Moins rapide (de l’ordre d’un facteur 10 -3 )‏  Permet la signature électronique  Nécessite des Certificats

10 Electif P2011 (2009) - Cryptologie - 10 Cryptographie Histoire Jules César 100 - 44 av JC  Utilisation du chiffrement à des fins militaires. 1 ère guerre mondiale 1914 - 1918  1917 - 1918 : Les français cassent le système ADFGVX allemand. 2 ème guerre mondiale 1940 - 1945  Les anglais cassent les codes allemands (ENIGMA et Alan Turing).  Les américains cassent le code japonais PURPLE (bataille de MIDWAY). Les années 1960 - 1990  Ordinateurs et réseau font entrer la cryptographie dans une nouvelle ère  Algorithmes de chiffrement, invention de la cryptographie à clefs publiques Aujourd’hui  Utilisation du chiffrement à des fins militaires, économiques, et privées Chiffrement manuel Chiffrement mécanique Chiffrement informatique

11 Electif P2011 (2009) - Cryptologie - 11 Cryptographie : Substitution mono alphabétique Chiffre de César - Jules César 100 - 44 av JC Le chiffre de César consiste à décaler les lettres de l'alphabet de quelques crans vers la droite ou la gauche. Exemple 1: Décalage des lettres de 3 rangs vers la gauche  Alphabet clair A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  Alphabet chiffré D E F G H I J K L M N O P Q R S T U V W X Y Z A B C  Le message Ave Caesar morituri te salutant devient DYHFD HVDUP RULWX ULWHV DOXWD QW Exemple 2: ROT13 est un codage Jules César, avec un décalage de 13, d'où son nom ROT13 ! ('ROT' vient de 'ROTation').  Alphabet original :A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  Alphabet codé : N O P Q R S T U V W X Y Z A B C D E F G H I J K L M  Le message codé OBAWBHE YRF TNEF signifie BONJOUR LES GARS Cryptanalyse basée sur la fréquence d'apparition des lettres  « Si nous savons dans quelle langue est écrit un texte, il suffit de nous procurer un autre texte en clair dans la même langue et de compter les apparitions de chaque lettre. Nous nous reportons au texte chiffré et relevons de même ses symboles. Nous remplaçons le symbole le plus fréquent par la plus fréquente du texte clair, le suivant par la 2 ème, … » Al- Kindi (801-873)‏

12 Electif P2011 (2009) - Cryptologie - 12 Cryptographie : Substitution poly alphabétique ENIGMA et Alan Turing Machine à chiffrer / déchiffrer utilisée par les armées allemandes de 1930 à 1945  automatise le chiffrement par substitution  est composé de 3 rotors cylindriques ; la position initiale correspond à la clé de chiffrement / déchiffrement Quand on presse sur une touche :  une lettre s'allume sur un panneau lumineux : c'est la lettre chiffrée.  un mécanisme fait tourner le rotor de droite d'un cran  toutes les 26 frappes, le deuxième rotor tourne d'un cran,  toutes les 676 frappes (26 au carré), c'est le troisième rotor qui tourne d'un cran.  les rotors tournants modifient les connexions électriques dans la machine, ce qui fait que la touche "A" allumera peut-être le "B" la 1 ère fois, mais le "X" la 2 ème, le "E" la 3 ème, … Exemple de Rotor Machine Enigma

13 Electif P2011 (2009) - Cryptologie - 13 Cryptographie : Substitution poly alphabétique ENIGMA et Alan Turing On peut changer l'ordre de rotors, leur orientation initiale et les branchement du tableau de connexions.  L’espace des clés ~ 10 6 clés possibles Pour déchiffrer, il faut retrouver les bons réglages de chiffrement/déchiffrement.  C'est dans ce but qu'ont été produites les bombes de Turing (gigantesques machines à calculer)‏  Idée : Deviner certains mots du message et voir si l'on pouvait faire correspondre une partie du cryptogramme avec ce mot probable (crib en anglais) afin de retrouver les réglages de chiffrement/déchiffrement L’équipe était dirigée par Alan Turing, père de l’informatique théorique.

14 Electif P2011 (2009) - Cryptologie - 14 Cryptographie et mathématiques Théorie de la complexité (années 1970)‏ La théorie de la complexité est la pierre angulaire de la cryptographie  Estime (de façon théorique) les temps de calcul (complexité en temps) et les besoins en mémoire (complexité en espace)‏ Exemples de classes de complexité (en temps)‏ P : Un problème est de classe P s’il peut être résolu par un algorithme en un temps polynomial:  Plus court chemins, etc. NP : Un problème est de classe NP si une proposition de solution peut être vérifiée par un algorithme en un temps polynomial:  Problème du voyageur de commerce  Problème de la factorisation d’un nombre  Problème du logarithme discret  Etc. 1 Un voyageur de commerce doit pour son travail traverser un ensemble de N villes. Il doit toutes les traverser une fois et une seule. Le chemin choisi doit le ramener à son point de départ. Le problème est de trouver le ou les chemins les plus courts qui vérifient ces propriétés.

15 Electif P2011 (2009) - Cryptologie - 15 Chiffrement symétrique Principes Le chiffrement symétrique utilise une même clé et un même algorithme pour chiffrer et déchiffrer un message 2 types d’algorithme de chiffrement symétrique:  À flot qui chiffrent le flux de données bit par bit  En général, une opération simple (XOR) avec une séquence de bits générés  En blocs qui prennent n bits en entrée et en ressortent n  Les blocs sont en général les résultats successifs d’une permutation F pilotée par une sous-clé k (déduite de la clé K fournie en entrée)‏  Les permutations successives agissent généralement sur des blocs mélangeant des données du message initial et des données chiffrées d’un bloc précédent Message en clair AliceBob Message chiffré Message en clair Clé de chiffrement = A Algorithme de chiffrement Clé de déchiffrement = A Algorithme de déchiffrement Clé de chiffrement = Clé de déchiffrement

16 Electif P2011 (2009) - Cryptologie - 16 Chiffrement symétrique One-Time Pad – Masque jetable – (1920)‏ Exemple fondamental d’algorithme symétrique en mode flot  Conçu par Gilbert Vernam et Joseph Mauborgne dans les années 20  transforme chaque bit du message (0/1) en un autre (0/1), via l’opérateur XOR noté   La clé secrète est générée aléatoirement, à usage unique, de longueur identique à celle du message à chiffrer Le bit Ci du cryptogramme C est obtenu à partir du bit Mi du message clair et du bit Ki de la clé K par : Ci = Mi  Ki soit C = M  K Un tel chiffrement est inviolable  La longueur de la clé K doit être égale à la longueur du message M  En 1949, Claude Shannon a démontré que les systèmes de chiffrement symétriques doivent utiliser des clés de longueur au moins égale à celle du message à chiffrer  Mais en pratique cela est inutilisable : clé difficile à générer, à transmettre et à conserver de façon sûre, à usage unique… Utilisations :  Téléphone rouge Kremlin – Maison Blanche  Communications cryptées par One-Time Pad  La clé privée était communiquée par la valise diplomatique (canal sûr)‏ 011 100 10 

17 Electif P2011 (2009) - Cryptologie - 17 Chiffrement symétrique DES - Data Encryption Standard (1976)‏ Texte à chiffrer par bloc de 64 bits …. Texte chiffré par bloc de 64 bits 16 Rounds : Chaque ronde utilise la clé K i Arithmétique binaire : Exponentiation binaire, substitution binaire, permutation binaire R1R1 R2R2 R 16 DES  utilise des clés de 56 bits donc 2 56 = 7.2 x 10 16 clés différentes possibles  transforme un bloc de 64 bits en un autre bloc de 64 bits  Le plus connu et le plus utilisé des algorithmes symétriques  Mais sa faiblesse s’est révélée avec le temps : sa clé est trop petite  En 1997 le NIST lance un concours international pour le remplacer Étapes  Permutation initiale et fixe d’un bloc  Calcul des sous clés K 1, K 2..K 16 à partir de la clé initiale de l’utilisateur  Le résultat de la permutation est soumis à 16 itérations d’une transformation. Ces itérations dépendent à chaque ronde (R i ) d’une autre clé partielle (K i )‏  Le dernier résultat de la dernière ronde est transformé par la fonction inverse de la permutation initiale

18 Electif P2011 (2009) - Cryptologie - 18 Chiffrement symétrique AES - Advanced Encryption Standard (2000)‏ AES : successeur du DES avec des clés plus grandes et variables, libre de droit  Par Rijmen et Daemen cryptographes belges, vainqueurs du concours  Clé de 128, 192 ou 256 bits  2 128 = 3.4 x 10 38 clés de 128-bit possibles  2 192 = 6.2 x 10 57 clés de 192-bit possibles  2 256 = 1.1 x 10 77 clés de 256-bit possibles  Transforme un bloc de 128 bits (16 octets) en un autre bloc de 128 bits Étapes  Calcul des sous clés K 1, K 2..K n  Les 16 octets en entrée sont permutés selon une table définie au préalable  Puis placés dans une matrice, ses lignes subissent plusieurs opérations (multiplication, calcul de l’inverse,...) qui définissent un tour. Texte à chiffrer par clé-bloc …. Texte à chiffrer par clé-bloc R1R1 R2R2 RnRn n Rounds (chaque round utilise la clé K i )‏ Arithmétique dans le Corps de Galois GF(2 8 ) ou Z/2Z[X]/n(x) et n(x) irréductible

19 Electif P2011 (2009) - Cryptologie - 19 Chiffrement symétrique Les « modes » de traitement des blocs (1/2)‏ Un chiffreur de bloc (block cipher) transforme un bloc en clair en un bloc crypté de même taille. Il réalise donc une permutation dans l’espace des blocs On combine plusieurs chiffreurs de différentes façons :  ECB – Electronic Code Book :  on place plusieurs chiffreurs en parallèle  CBC – Cipher Block Chaining :  chaque bloc subit un XOR avec le bloc chiffré précédent puis chiffré  CFB – Cipher Feedback :  chaque bloc subit un XOR avec le bloc chiffré précédent  OFB – Output Feedback :  chaque bloc subit un XOR avec une « graine » (seed) chiffrée successivement par les chiffreurs  … d’autres modes sont possibles, l’objectif est de réduire, dans le message chiffré, la quantité d’information sur le message en clair. Ces modes se distinguent par leur rapidité, leur résistance aux attaques, leur capacité à « brasser » les données en entrée… et ont donc un impact direct sur la force de l’algorithme

20 Electif P2011 (2009) - Cryptologie - 20 Chiffrement symétrique Les « modes » de traitement des blocs (2/2)‏

21 Electif P2011 (2009) - Cryptologie - 21 Chiffrement symétrique Exemples d’algorithmes de chiffrement Breveté par RSA Data Security, Chiffrement par blocs, clé variable (jusqu’à 2024 bits)‏ Rivest’s Cipher / Ron’s CodeRC5 Blocs de 128 bits, Clé de 128, 192 ou 256 bits, 10, 12 ou 14 tours selon la taille de la clé Advanced Encryption StandardAES Blocs de 64 bits, clé de 128 bits, 8 toursInternational Data Encryption StandardIDEA Blocs de 64 bits, Clé de 168 bits mais 112 bits effectifs, 3 fois x 16 tours de DES Triple Data Encryption StandardTripleDES Blocs de 64 bits, Clé de 56 bits, 16 toursData Encryption StandardDES Taille de la clé, commentairesAlgorithme de chiffrement par blocs Un problème majeur se pose : Comment distribuer la clé ? Taille de clé variableRC4 Rivest’s Cipher / Ron’s Code Taille de la clé, commentairesAlgorithme de chiffrement par flot

22 Electif P2011 (2009) - Cryptologie - 22 Rappel mathématique : Soit p et g des grands nombres, g < p, p premier g est primitif par rapport à p dans le corps de Galois Z/pZ Pour tout nombre n entre 1 et p-1, il existe k tel que n = g k [p] a un grand entier choisi par Alice, elle calcule : A = g a [p] 1) Alice envoie A à Bob Alice calcule Z A = B a [p] Z = Z A = Z B = g ab [p] est le secret partagé… … qui peut servir de clé de chiffrement symétrique Chiffrement - Partage d’un secret Diffie-Hellman (1976)‏ AliceBob 2) Bob envoie B à Alice g et p sont partagés. b un grand entier choisi par Bob, il calcule : B = g b [p] Bob calcule Z B = A b [p]

23 Electif P2011 (2009) - Cryptologie - 23 Clé publique Alice Clé privée Alice Clé publique Bob Clé privée Bob Domaine public Chiffrement asymétrique Clé publique vs privée Le cryptage asymétrique permet d’avoir des clés différentes pour crypter et décrypter un message Le principal avantage par rapport au chiffrement symétrique est qu’il n’est pas nécessaire de partager un secret commun Si Alice et Bob souhaitent communiquer au moyen du cryptage asymétrique, ils possèdent chacun une paire de clés différentes (publique, privée). Les clés privées ne sont jamais divulguées, par contre les clés publiques peuvent être publiées et connues de tous AliceBob Clé publique Alice Clé publique Bob Bob et Alice publient leurs clés publiques

24 Electif P2011 (2009) - Cryptologie - 24 Chiffrement asymétrique Clé publique vs privée AliceBob Message en clair Message chiffré Message en clair Alice crypte le message en utilisant la clé publique de Bob Algorithme de chiffrement Bob décrypte le message en utilisant sa clé privée (seule la clé privée de Bob peut décrypter le message) Algorithme de déchiffrement AliceBob Message en clair Message chiffré Message en clair Clé privée Alice Algorithme de déchiffrement Clé publique Alice Algorithme de chiffrement Clé de chiffrement ≠ Clé de déchiffrement

25 Electif P2011 (2009) - Cryptologie - 25 Fonction de hachage Empreinte d’un message Une fonction de hachage cryptographique reçoit en entrée un message de longueur variable et produit en sortie un code de longueur fixe (ex. 128 bits) appelé condensât, ou haché. Cette fonction est non réversible La probabilité que deux messages aient une même empreinte est très faible (collision-free)‏ Une petite variation du message entraîne un changement complet de l’empreinte Exemple d’application : Stockage des mots de passe des utilisateurs sur un système UNIX ou autre  Utilisateur = Bob  mot de passe de Bob = bob-mot-passe  Bob + bob-mot-passe [ + salage]  fonction de hachage  kefdeoz436jfgdes&&  kefdeoz436jfgdes&& est le mot de passe stocké sur le système  Chaque fois que Bob se connecte au système, le système calcule le condensât de Bob + bob-mot-passe [+ salage] et le compare à celui stocké sur le système. S’ils correspondent, l’accès est donné.  Avantage : Le mot de passe de Bob sur le système est loin d’être devinable

26 Electif P2011 (2009) - Cryptologie - 26 Fonction de hachage Garantie de l’intégrité d’un message L’utilisation d’une fonction de hachage permet de vérifier que l’intégrité du message a été préservée. Exemple de fonction de hachage : MD5  D = caractère ASCII de code 68 soit en binaire : 0100 0100  E = caractère ASCII de code 69 soit en binaire : 0100 0101  Le changement d’un bit change radicalement la signature Effet d’avalanche ATTENTION :  MD5 n’est plus considéré comme étant de qualité cryptographique  MD5 était considéré comme sûr mais a été “cassé” en 2004 par des chercheurs Chinois qui ont trouvé des collisions (2 messages différents qui produisent la même empreinte)‏  Toutefois, il reste difficile de falsifier des documents produisant une empreinte donnée  Il est recommandé d’utiliser des fonctions de hachage plus récentes :  SHA-256 : fournit une signature de 256 bits  SHA-512 : fournit une signature de 512 bits 2f07cf8d9c67d7759299f240479e651a MD5(‘Dcole Centrale Paris')‏ 8efe289d3fce2f7af4ef82f4064d60d9 MD5('Ecole Centrale Paris')‏

27 Electif P2011 (2009) - Cryptologie - 27 0dgdfg4154d fdsg45dflaf23 md5 = Signature Numérique appelée « sceau » Chiffrement asymétrique Signature électronique et scellement des données La signature numérique est un code qui authentifie l’auteur d’un message et contient la preuve de l’intégrité du message Le but est de fournir à l’expéditeur un moyen de pouvoir lier son identité à l’information transmise Le principe de fonctionnement est inverse au chiffrement à clé publique :  L’expéditeur voulant s’authentifier auprès du destinataire chiffrera l’empreinte de son message avec sa clé privée La signature électronique :  Permet la lecture du contenu du document (qui n’est pas nécessairement crypté)‏  Permet la vérification de l’identité du signataire  Apporte la garantie de l’intégrité du document Bob Message en clair Algorithme de chiffrement Clé privée Bob

28 Electif P2011 (2009) - Cryptologie - 28 Chiffrement asymétrique Signature électronique et scellement des données La signature (manuscrite) du Directeur peut avoir été imitée ou reproduite… Ou bien la signature est authentique, mais le message a été modifié… Personne ne peut vérifier l’intégrité du document et l’authentificité de la signature. Ecole Centrale Paris Le Directeur Les élèves de l’Electif seront en congés aux mois d’Avril et Mai 2009. Le Directeur,

29 Electif P2011 (2009) - Cryptologie - 29 Ecole Centrale Paris Le Directeur Les élèves de l’Electif ne seront pas en congés aux mois d’Avril et Mai 2009. Le Directeur, Chiffrement asymétrique Signature électronique et scellement des données En revanche, la signature électronique ne présente aucun de ces 2 défauts. Chacun peut vérifier l’intégrité du document et l’authenticité de la signature, à condition de faire confiance à une Autorité de Certification qui garantit l’appartenance de la clé publique du signataire. Pourtant, la signature manuscrite est utilisée pour les chèques, les actes notariés… 0dgdfg4154d fdsg45dflaf23

30 Electif P2011 (2009) - Cryptologie - 30 Chiffrement asymétrique Chiffrement et signature : envoi du message Message chiffré Message en clair Clé publique Alice Algorithme de chiffrement 0dgdfg4154d fdsg45dflaf23 md5 Signature numérique Bob Message en clair Algorithme de chiffrement Clé privée Bob + Alice Bob veut que seule Alice puisse lire le message et qu’elle soit certaine que ce message a bien été émis par lui.

31 Electif P2011 (2009) - Cryptologie - 31 Chiffrement asymétrique Chiffrement et signature : réception du message Message chiffré Message en clair Signature numérique Algorithme de déchiffrement Clé privée Alice + Alice 0dgdfg4154d fdsg45dflaf23 md5 Algorithme de déchiffrement Clé publique Bob 0dgdfg4154d fdsg45dflaf23 = Bob Si il y a égalité entre les empreintes alors le message : - n’a pas été altéré - provient bien de Bob

32 Electif P2011 (2009) - Cryptologie - 32 Chiffrement asymétrique RSA - Rivest Shamir Adleman (1978)‏ Théorème de Fermat, fonction d’Euler, Congruence, Nombres premiers, Corps de Galois, Factorisation …. Choix de la clé :  p et q premiers, n = p * q  Exemple : p = 47, q = 59, n = 47*59 = 2773  e premier avec (p-1) * (q-1)‏  Exemple : (47-1)*(59-1) = 2668, prenons e = 157  Clé publique (e,n)  d = e -1 [ (p-1)*(q-1) ]  d = 157 -1 [ 2668 ] = 17  Clé privée (d,n)‏ Chiffrement du message m  Chiffrement de m avec la clé publique (e,n) : c = m e [n]  Exemple : m = 26, m = 26 157 [2773] = 2181 Déchiffrement du message chiffré c  Déchiffrement de c avec la clé privée (d,n): m = c d mod(n)‏  Exemple : m = 2181 17 [2773] = 26

33 Electif P2011 (2009) - Cryptologie - 33 Chiffrement asymétrique RSA - Rivest Shamir Adleman (1978)‏ Les formules précédentes illustrent que m ed = m [n] Les explications mathématiques suivantes valident cette formule : e et d sont inverses modulo (p-1)(q-1) donc il existe un entier k tel que ed = 1+k(p-1)(q-1)‏ Dans le cas où m ! = 0 [p], on a :  m ed = m 1+k(p-1)(q-1) [p]  m ed = m(m (p-1) ) k(q-1) [p] D'après le théorème de Fermat :  Si p est premier, a p-1 = 1 [p] pour tout a  Zp*, donc  m ed = m(1) k(q-1) [p]  m ed = m [p]

34 Electif P2011 (2009) - Cryptologie - 34 Chiffrement asymétrique RSA - Rivest Shamir Adleman (1978)‏ D'autre part :  m ed = m [p] si m = 0 [p], Donc pour tout m, on a :  m ed = m [p] On montre de la même manière que pour tout m,  m ed = m [q] D'après un corollaire du théorème du reste Chinois:  Si n 1, n 2,…, n k sont premiers entre eux deux à deux et si n = n 1 n 2... n k, alors pour deux entiers x et a quelconques, x = a [n i ] pour i=1,2..k si et seulement si x = a [n] On a donc pour tout m, si n 1 =p et n 2 =q :  m ed = m [p*q]  m ed = m [n]

35 Electif P2011 (2009) - Cryptologie - 35 Chiffrement asymétrique RSA - Complexité en temps Chaque entier strictement positif peut être écrit comme un produit de nombres premiers d'une unique façon RSA (1978): repose sur la difficulté (en temps) de décomposer un nombre en facteurs premiers. Il s’agit d’un problème difficile pour de grands nombres Sachant qu’en général la complexité en temps d’un algorithme permettant de vérifier si un nombre est premier (n s’écrit avec k chiffres en base b) est proportionnelle à b k/2, combien de temps faut-il pour vérifier qu’un nombre de 20 et 50 chiffres décimaux est premier ? On considère qu’il faut 1 microseconde par opération.  La complexité en temps pour un chiffre de 20 chiffres est donc de l’ordre 10 10, sachant qu’une opération nécessite 10 -6 seconde, il faut 10 000 secondes pour vérifier.  La complexité pour un chiffre de 50 chiffres est donc de l’ordre 10 25, sachant qu’une opération nécessite 10 -6 seconde, il faut 10 19 secondes. Le problème est que l’on dépasse l’âge de l’univers !! Il existe aujourd'hui des attaques sous-exponentielles pour factoriser un entier qui nécessitent d’avoir des tailles de clés de 1024 bits (minimum).

36 Electif P2011 (2009) - Cryptologie - 36 Chiffrement asymétrique RSA - Complexité en temps Pour les sceptiques, factoriser le nombre suivant … 9267685130781936781116813861190740761712237908818637623516360448082876460840383433003528659757222 2213064711437124737854126911331327648530052562481448609191374739133284858538413147400015205530150 4247709708104461190577182656264731270453902948768957486093155242510196378173174402632480479427658 3152523487056371674462413482944226537019275015740139472223473062482972055317024737257833413832792 2218573458049954305735253793174879378072547657983343366563415277735235054890855588753528840180514 2913408399246044957726364852574377820074085280339988298799099746414832234318476466538773536428907 1309513853178723953027905621824103406541384428311284540565194747982266263740125118562421824823810 0967874609342963654969013156403318614982136550836544920996873881769607334285378126283397431050628 6231817824917057964301760689203676780949759276883336888077869303918869223779334395357178114920935 4205108108944199015861862790324722696123209466265454249359339626205917268937792881359873341896980 3885419994361385179875459696385213270237731289848910591026648852573054889151326344989796747305281 8426082809739270270075680511067807180566245109512149271849927499329212410177339559692500350760448 0665622159881319203594846747873232085623510638274022709998048260541013534643685806792916396736405 7148762148821964581327286761358946020623672866566222083372854247075090712308071135451560000232638 2362634859677240124028306116888187871319600332106339876104790407001757950435213127632569153221848 6782696705459705028917935628027625648145300652448051555880086942859902406208698458016908811997215 8622545176102171601933412314051526950309740165202133759489012754781163472594813999323215169901454 1779563332773201919537637937668424071892671664440598534557528509917112178041531938090872302862615 7940138061582251059302085991175856302810277933945192782050012208684105986586310205278432420509808 4301776176819264525493964027347466723175329836891989031121806227812821216380480806442045413763013 101513643888349569940339234248391977657017690812765250983067

37 Electif P2011 (2009) - Cryptologie - 37 Chiffrement asymétrique Exemple de clés – Démonstration de PGP (http://www.pgpi.org/)‏ -----BEGIN PRIVATE KEY BLOCK----- (CLE PRIVEE)‏ lQOgA0Odah4AAAEIAL55MlrVwZz+IRx4RhWBGMZa5UEq6T4KGslypMPonNxo490Z3+Q8isPM+ngPLOJjW9s2YDvMW36rXNJ6zVwCzuUii X1j5XBkA1GbBuXUFA2/a85pcGGGToACj3sb1MB7oJyMifCoEqrFo5kXYWaojOlMn+qh4qdkLu6Qv/ZE3tnuYOM2ZkiIWlDTRjhrnSPlDkIW18 zOkW2M8mjT+UwbvAbzSGnGnhQfHIjhVYlV8Ujex0G/yAU1NCs9mnaFxeTGZuzPwU76+vIX4muB/uDAerW3x6go6MEPDytjd4fgusxif+WXJ Bv079LMviFx8m5ZmQkm4iYvJMDs83llhKubF00ABREBw5qNPV6TBP0H/gcdfJD2IQoZ+m0o8Ln/9CWh367U0jL2hvVVhXAgxcmo143S0d/i Mmfsfg3muYElVmyPd8tDEfiNBlc0LTQChgXtXr7nrobhIzb8ec4CSnij7dw+QmM3FsMXy/fWFq3goJInQqhW2E908qofhKCZebwLPwWcUaO hcPXyZOwn4OcBc9oiLRb0nBi0J4Ws9i/hHGzKeIinytYSSw0xaXuOn1xuFfJlf5fCNGuxQgk6/4K0zq1+HdwXlPTU4K9NyehB4XgLlrV7vSCRS Ghc1GXsopoxMyB88uXCtsQUNFMHxQw/HajHxNA2vT4zf4tx7lAR8JV2FihTpo9H5vLXkPQGI1cEAKHCjQk37dsPuvELFhBLPnohHmkarRd vO4c8k+lADynEEY+JKyuAHrx5FITlJiKls2ph5G6PW4XY7sGmNzjD0e+q7n0fGs2uk8qhQbkjHRXidmSlkoOxtMjGasdnwKjh6EPqvb2vSJWC mCl3ggaM6lMO+TptnRayNAoSntZaVi5BABmQLSLDiBvaOSLRc00YFeEMipGEjMYXwyD1mna0DtQ0ism+i8ogSIMw7F/BR4Z+qJtWbPU2w smQ04uTRnVD9/HNzqwsUl4b+RzsHMRXOjNqA24LuRy+IM7eI229SZtfQyAwpsnywAH0rnEXid/PY9CoHQLQvgwWTEzxKpYO5lIwgP+HhTK orso+uoKl/WSyE4PsgMlfh3f8nEe9qLSzYebdUUQ4BoSWP3mvKjE5s46fMz4ujPMiGormvQ0f/p5F2Ek8jQcyUxiKpO1H1O9vB3/X3Niboob4h LLXGNe3i8JDdhC1MlwXzeWX2g58iW2XPy6M7+s2wHeIS2EG+v6pYHcDDQ7wLQQZWNwIDxlY3BAZWNwLmZyPg===oDGm -----END PRIVATE KEY BLOCK----- (CLE PRIVEE)‏ -----BEGIN PUBLIC KEY BLOCK----- (CLE PUBLIQUE)‏ mQENA0Odah4AAAEIAL55MlrVwZz+IRx4RhWBGMZa5UEq6T4KGslypMPonNxo490Z3+Q8isPM+ngPLOJjW9s2YDvMW36rXNJ6zVwCzuUi iX1j5XBkA1GbBuXUFA2/a85pcGGGToACj3sb1MB7oJyMifCoEqrFo5kXYWaojOlMn+qh4qdkLu6Qv/ZE3tnuYOM2ZkiIWlDTRjhrnSPlDkIW18 zOkW2M8mjT+UwbvAbzSGnGnhQfHIjhVYlV8Ujex0G/yAU1NCs9mnaFxeTGZuzPwU76+vIX4muB/uDAerW3x6go6MEPDytjd4fgusxif+WXJ Bv079LMviFx8m5ZmQkm4iYvJMDs83llhKubF00ABRG0EGVjcCA8ZWNwQGVjcC5mcj6JARUDBRBDnWoe83llhKubF00BAa1wB/9w6reAY C8UkFHmPdEJkKwnGzmJXqleSGM04YgJxglZqIRN/b0SUFoTFQwAGhItBRE1lntrlWAyhWow9Ua7DFoeeMYJtXX66L7PTzfnM1nF5SPRZge SD0e7h9yOdcyLsmWtctB2spRBkbvp1OICLi7PsBuVAsUrR5OJ8zMjc8fOwprXpKVqiizFrTfjttlUmyXmptVYHbRcEm5csZJpzQylyw58FY0Mu /yxFcJo9wNvBAReIpaSk/bvYB4YxMbmPRnH6AnFmt8dcWKARGBbH8p37k22c387od8qD13XwFYo9O+qPztxGG6nvT/Y+CLoOLlL4+IgjVZp MHREpJmawVk4=6gkD -----END PUBLIC KEY BLOCK----- (CLE PUBLIQUE)‏

38 Electif P2011 (2009) - Cryptologie - 38 GBkhj6EneFKxjRmIcDOfBVjicuVZuBL0YUyX4qKEidBurROUCfMnTSMgk VDtI34ywldNAryjFXghq1PIpoPlr1JT4v63KN0VGFwYrJvnw3RoiirNREsU0 sb5QcdAVtIFVkmXSwoFf62T7Gzfx36popK8dW55SIGq0rqEDMU2TIQZy8 GGkBJik4kiMD5mbb4cZSax6mk4P8Rzhych4ltvC77tLbrhQVyydS9LcsQa S3JpDwytsLRYZ0lfvHwvf86LwU3DGJYLU9Y6UKBQrJD9lQaTPkpGQUY V4v7hZeMrvFVJZ3rcxZaUUDzDOMr1oMWEvNpwR0uk10OGTcIzNuU2Z TZwXlvQJf7pZc2rUNtscgPtLiE4QEpqyuPf4sITa2TE8WC6DMLyJlAngzZZ yw3KbcU3j0nm8A Clé privée Alice = GBkhj6EneFKxjRmIcDOfBVjicuVZuBL0YUy Clé publique Alice = P8Rzhych4ltvC77tLbrhQVyydS9VZuBL0Y Clé publique Bob = IpoPlr1JT4v63KN0VGFwYrJvnw3RoiS9VZ Clé privée Bob = 2TE8WC6DMLyJlAngzZZyw3KuVZuBL0YUy Chiffrement asymétrique Résumé Alice Bob Clé publique Alice Clé publique Bob Message chiffré Message clair

39 Electif P2011 (2009) - Cryptologie - 39 Chiffrement – Authentification d’un message Algorithmes MAC Message Authentication Code MAC : Code d’Authentification de Message (CAM)‏  Objectif : garantir l’intégrité du message et l’authentification de l’émetteur  On utilise généralement une fonction de hachage, on parle alors de HMAC :  Si h() = MD5, on parle de HMAC-MD5  Si h() = SHA-1, on parle de HMAC-SHA-1 Définition de HMAC (cf RFC 2104) : avec :  m : message à authentifier  h : fonction de hachage (MD5 ou SHA-1 par exemple)‏  K : clé secrète complétée avec des 0 jusqu’à la taille de bloc de h()‏  || : opérateur de concaténation,  : opérateur XOR (ou exclusif)‏  Ipad : séquence Hexa 0x363636…36, et opad = 0x5c5c5c…5c taille de bloc de h()‏ Utilisation :  Dans les protocoles IPsec et TLS (SSL)‏  Pour une authentification d’un message à seul usage des destinataires du message

40 Electif P2011 (2009) - Cryptologie - 40 Certificat et tiers de confiance Les algorithmes de chiffrement asymétrique sont basés sur le partage entre les différents utilisateurs d'une clé publique  Généralement le partage de cette clé se fait au travers d'un annuaire électronique ou bien d'un site web Rien ne garantit que la clé est bien celle de l'utilisateur à qui elle est associée Un certificat permet d'associer une clé publique à une entité afin d'en assurer la validité. Le certificat est la carte d'identité de la clé publique, délivré par un organisme appelé autorité de certification L'autorité de certification est chargée :  de s’assurer de l’identité du futur porteur,  de délivrer les certificats,  de leur assigner une date de validité (ou d’expiration),  de révoquer éventuellement des certificats avant cette date en cas de compromission de la clé (ou du propriétaire)

41 Electif P2011 (2009) - Cryptologie - 41 Certificat et tiers de confiance Un certificat électronique ou certificat numérique est un bloc de données contenant, dans un format spécifié, les parties suivantes :  la partie publique d'une paire de clés asymétriques,  des informations sur le porteur de cette paire de clés, tels que son nom, son adresse électronique, son titre, son numéro de téléphone, le nom de l'entité qui a délivrée ce certificat, la date d’expiration du certificat  et enfin la signature numérique des données ci-dessus par une personne ou entité prenant en charge la création de ce certificat et ayant autorité de certification Les applications majeures des certificats sont :  l’authentification,  la signature numérique,  le chiffrement des données, au travers des Infrastructures à Clés Publiques (PKI : Public Key Infrastructure)‏

42 Electif P2011 (2009) - Cryptologie - 42 Certificat et tiers de confiance Exemple de certificat Version: V3 Numéro de série: 37A5 9078 Emetteur: O =... Valide à partir du: lundi 2 août 1999 13:10:48 Valide jusqu'au: vendredi 2 août 2002 13:40:48 Objet: CN = M..Dupont Clé publique (RSA 1 024 bits en hexa): 3081 8702 8181 00D6 21BE 8C1D 1653 735C D424 A3D9 7415 678A 7B6C 55CE BFFB 6CED 7ED2 2D03 FFBD 1D95 42E3 26F0 4A79 FFEF 7BE3 DCC8 17B1 C907 EDCF 1D59 30CD C418 D997 F4A3 C2B0 9CED 8A99 CEF6 5EEF 7F0F AF41 E1CD 96DC B434 BDEE E54A A99B 0B81 B14C B14D 5A9A 242A 8D8E 2C28 9DB2 4BBC 49E2 DAA1 14D7 9A4A ABD7 99A1 62B2 13EB 2151 5433 0BB7 8702 0103 Utilisation de la clé (extension): Chiffrement de la clé(20)‏ Identificateur de la clé de l'autorité (extension): ID de la clé=D433 6276 E35E 426C 7DC0 8BFB BAAD 7835 6892 5E12 Identificateur de la clé du sujet (extension): 54AB BE12 F475 60EC B057 453C F092 8BC8 E056 E719 Algorithme de signature: sha1RSA Algorithme de hachage: sha1 Signature (par l’autorité de certification) : DACA 58CB 6D01 E968 1526 906E A2BA B947 6D4F DAF5

43 Electif P2011 (2009) - Cryptologie - 43 Certificat et tiers de confiance Signature d’un certificat L’autorité de certification a une paire de clés John a une paire de clés Hachage des informations 0dgdfg4154d fdsg45dflaf23 Chiffrement avec la clé privée de l'autorité de certification John Certificat Signature de l'autorité de certification John

44 Electif P2011 (2009) - Cryptologie - 44 Certificat et tiers de confiance Vérification d’un certificat L’autorité de certification a une paire de clés John a une paire de clés Hachage des informations Déchiffrement de la signature avec la clé publique de l'autorité de certification Il y a égalité des empreintes, le certificat est valide Certificat Signature de l'autorité de certification John 0dgdfg4154d fdsg45dflaf23 0dgdfg4154d fdsg45dflaf23

45 Electif P2011 (2009) - Cryptologie - 45 Certificat Quelques exemples d’utilisation Le certificat client : Stocké sur le poste de travail de l'utilisateur ou embarqué dans une carte à puce, permet d'identifier un utilisateur et de lui associer des droits.  En général transmis au serveur lors d'une connexion, qui affecte des droits en fonction de l'accréditation de l'utilisateur. Il s'agit d'une véritable carte d'identité numérique utilisant une paire de clé asymétrique d'une longueur de 512 à 1 024 bits. Le certificat serveur : Installé sur un serveur web permet d'assurer le lien entre le service et le propriétaire du service.  Dans le cas d'un site web, il permet de garantir que l'URL et en particulier le domaine de la page web appartiennent bien à telle ou telle entreprise. Par ailleurs il permet de sécuriser les transactions avec les utilisateurs grâce au protocole SSL. Le certificat VPN : Installé dans les équipement réseaux, permettant de chiffrer les flux de communication de bout en bout entre deux points (par exemple deux sites d'une entreprise).  Les utilisateurs possèdent un certificat client, les serveurs mettent en œuvre un certificat serveur et les équipements de communication utilisent un certificat particulier)‏

46 Electif P2011 (2009) - Cryptologie - 46 Cryptographie Efficience des algorithmes (1/3)‏ Les algorithmes de chiffrement asymétriques sont lents, donc à réserver aux échanges de données de faibles volumes :  identification, échanges de clés symétriques générées localement Les algorithmes de chiffrement symétriques sont évalués selon :  Leur rapidité d’exécution : leur performance doit satisfaire l’application cible  Leur résistance à la cryptanalyse (notamment linéaire ou différentielle) :  Brassage important de l’information à chiffrer (pas d’information utile)‏  Absence de failles (pas d’attaques non exhaustives)‏  Taille de clé élevée (résistance à l’attaque en force brute)‏ Pour une application à haut débit :  augmentation des débits d’information à traiter pour une puissance de calcul constante :  le temps affecté aux opérations de brassage de l’information décroît  compromis en terme de résistance à la cryptanalyse  obligation de chiffrer / déchiffrer en temps réel :  utilisation incontournable d’algorithmes de chiffrement symétriques par flot

47 Electif P2011 (2009) - Cryptologie - 47 Cryptographie Efficience des algorithmes symétriques : blocs (2/3)‏ En chiffrement symétrique par blocs :  Traitement des blocs :  de taille généralement fixe (2 n de 32 à 512 bits), sont chiffrés les uns après les autres (ECB)‏  Afin d’éviter les fuites d’information (2 blocs en clair identiques donnent deux blocs chiffrés identiques), les blocs sont chaînés entre eux à l’aide de modes opératoires (CBC, CTR…)‏  Ces techniques offrent un niveau de protection des données intrinsèquement élevé, mais présentent deux inconvénients majeurs :  Le brassage de l’information, bien qu’implémentable matériellement, reste complexe et essentiellement optimisé pour une implémentation logicielle  L’implémentation matérielle offre des débits (bits codés par seconde) systématiquement plus faibles que les algorithmes de chiffrement par flot classiques du fait du nombre conséquent d’instructions de base à effectuer par cycle d’horloge  La taille des blocs de données à chiffrer est fixe et a tendance à augmenter dans les dernières générations d’algorithmes, au fur et à mesure de l’augmentation de taille de clés :  Cette taille de bloc ne correspont pas aux besoins réels des applications (quelques octets sont généralement suffisants pour coder une valeur)‏  Et nécessite des regroupements et des temps de latence incompatibles avec certaines applications haut débit qui requièrent un flux constant de données Ces algorithmes, bien que sûrs, s’avèrent donc trop lents et peu adaptés aux données à traiter pour les applications de chiffrement à très haut débit

48 Electif P2011 (2009) - Cryptologie - 48 Cryptographie Efficience des algorithmes symétriques : flot (3/3)‏ En chiffrement symétrique par flot :  Le chiffrement par flot permet de traiter à très haut débit des données de longueur quelconque. Les données sont chiffrées en continu de façon extrêmement rapide  Un chiffrement par flot se présente généralement sous la forme d'un générateur de nombres Pseudo-Aléatoire paramétré par une clé K et un vecteur d’initialisation VI, avec lequel on opère un XOR avec les données Mais, bien qu’extrêmement rapides et simples à implémenter matériellement et logiciellement, ces techniques présentent plusieurs carences sévères connues :  Le générateur pseudo-aléatoire lui-même :  quelle que soit sa complexité, il évolue de façon déterministe et donc prévisible en fonction de la clé et du vecteur d’initialisation, limitant la taille des messages chiffrables  Le générateur pseudo-aléatoire directement observable dans le cadre d’une cryptanalyse classique :  Un XOR de la sortie avec le message clair donne la sortie du générateur  Cela implique de changer VI pour chaque nouveau message Le nombre de bits chiffrés à chaque itération est limité à un (en général) :  ne correspond donc pas aux besoins réels des applications  Les données sont codées sur N bits ou octets, pas sur 1 bit !  Des algorithmes récents chiffrent N bits simultanément, mais N est limité et reste fixe Taille de clé en général fixe ou limitée :  évolutivité limitée et pas d’ajustement de la profondeur de chiffrement pour l’application

49 Electif P2011 (2009) - Cryptologie - 49 Les applications de la Cryptographie 0 - Aperçu Confidentialité des Communications Tous supports y compris Téléphones Identification Vérifier l’identité Authentification Vérifier l’habilitation Partition de Secret e-Commerce Commerce électronique Certification Permet l’identification et l’authentification à grande échelle Contrôle d’Accès Les besoins suscitent l’émergence d’applications Fort besoin de standardisation Intégrité, Signature Lettre Recommandée Electronique

50 Electif P2011 (2009) - Cryptologie - 50 Les applications de la Cryptographie 0 – Pour quels utilisateurs ? Institutionnels Etats, Armées, Polices, Banques, Santé… Entreprises de toutes natures et de toutes tailles Vendeurs & Acheteurs Particuliers Commerce électronique, Badges, Moyens de paiement, Communications (tél), Cable-TV, Pay-Per-View… Systèmes planétaires Satellites, GPS, Transports, Réseaux, Bourses, Sondes spatiales… Une e-transaction est bien plus sécurisée que sa version non électronique ! Le e-Commerce n’aurait pas pu exploser sans les techniques de cryptographie ; Internet non plus ! Organisations Légales ou non… Terroristes ou non…

51 Electif P2011 (2009) - Cryptologie - 51 Les applications de la Cryptographie 1 - Les fonctions de base, fondamentales et universelles Sans objet (s'identifier c'est communiquer son identité, en saisissant un login par exemple, ou une empreinte biométrique [qui n’authentifie pas !], etc)‏ Communiquer son identité Identification Scellement avec horodatation des éléments garantissant l’identification et la non-répudiation, par une autorité Aptitude à retrouver l’historique, l’utilisation ou la localisation d’une entité (activité, processus, produit, etc.) au moyen d’identifications enregistrées Traçabilité Scellement = { Hachage + Signature } par une Authorité d'Horodatation (TSA : Time Stamping Authority) qui atteste que document lui a été présenté à l’instant t Assurer qu'un document électronique a été créé ou signé à une certaine date (ou avant) Horodatation Scellement = { Hachage + Signature }Impossibilité de nier avoir émis un document électronique Non-répudiation Scellement = { Hachage + Signature } + Certificat (permettant d’authentifier le signataire)‏ Vérifier l’identité dont une entité se réclame … et de l'égalité entre le message reçu et envoyé Authentification Hachage (=génération d'une empreinte ou condensat). Scellement (=génération d'un sceau qui est une empreinte signée)‏ Assurer qu’un document électronique qui n’a subi aucune destruction, altération ou modification Intégrité Chiffrement et DéchiffrementN'autoriser l’accès à certaines données qu'aux personnes ou entités autorisées Confidentialité Technique cryptographiqueObjectifFonction

52 Electif P2011 (2009) - Cryptologie - 52 Les applications de la Cryptographie 2 - Les applications pratiques Applications pratiques  Applications militaires, industrielles ou civiles  Télécommunications  Chiffrement des réseaux (informatiques, télécoms, TV, câble…)‏  SSH : Shell distant sécurisé (c’est la version sécurisé de Telnet)‏  Réseau privé virtuel, dans un réseau étendu non sécurisé  Transmissions hertziennes (terrestres, spatiales, LAN [Wifi, Bluetooth], GSM…)‏  Sécurisation des données stockées  Chiffrement à la volée vers/depuis tous supports de stockage  Chiffrement des données sur les supports nomades  Transactions e-Commerce, Bancaires  Paiement à distance  Protection de la vie privée  Messagerie, Téléphone, et Téléphonie mobile (toutes les communications sont cryptées, et tout utilisateur est authentifié pour éviter le vol de n° de portable)‏  Gestion des droits numériques (à considérer avec circonspection…)‏  Protection du Copyright sur tout type de support  Diffusion de contenu multimédia protégé (Streaming par exemple)‏

53 Electif P2011 (2009) - Cryptologie - 53 Les applications de la Cryptographie 3 - VPN : Réseau privé virtuel sur Internet Objectif : créer un réseau privé entre N machines reliées à Internet (réseau de faible sécurité)‏  Authentifier les données échangées (par signature)‏  Assurer la confidentialité des données au moyen d’un chiffrement symétrique, avec une clé de session définie en un point et diffusée à l’autre point chiffrée par chiffrement asymétrique (transport de clé)‏ A quel niveau chiffrer dans la pile des protocoles réseau ?  Au niveau de la couche 3 « Réseau » (IP en TCP/IP), avec Ipsec  Au niveau de la couche 7 « Application », avec SSL-TLS (HTTPS, IMAPS, POPS ou SSH)‏  SSL développé au départ par NetScape a été repris en OpenSource sous le nom de TLS (Transport Layer Security), défini par la RFC 2246 (TLS V1.0 est équivalent à SSL V3)‏  Exemple de solution VPN : OpenVPN  Il est possible de créer :  Un réseau privé entre N machines sans chiffrement des échanges  Un réseau privé entre N machines avec chiffrement symétrique  Un réseau privé entre N machines avec chiffrement asymétriques et certificats

54 Electif P2011 (2009) - Cryptologie - 54 Les applications de la Cryptographie 4 - La Carte Bleue (1/5) – Les modèles / clés RSA La Carte Bleue a 40 ans - créée le 6 novembre 1967  Acceptée internationalement depuis 1974  Dotée d’une puce grâce à l’invention de Roland MORENO et Michel HUGON  La puce contient 1 processeur pour les calculs et 3 zones mémoire :  1 en Lecture/Ecriture, 1 en Lecture seule, 1 en Lecture cachée (contient une clé K secrète)‏  Plus de 60 millions de CB en circulation, 7 milliards d’opérations, 350 Mds €  Carte « B0’ » : à/c de 1985, clé RSA de 321 bits  Carte « VS » : à/c de 1/11/1999, clé RSA de 768 bits  Carte « EMV Eurocard MasterCard Visa » (2 ème génération) : à/c de 07/2003 : clé RSA entre 768 et 1024 bits, puis taille agrandie tous les 2 ans  Carte « DDA » (3 ème génération) : technologie EMV + complément Dynamic Data Authentication, lancée en 2005. Déjà plus de 26 millions de cartes DDA émises  La carte contient désormais : une clé privée et un crypto-processeur  Une signature unique lors de chaque transaction à partir de données aléatoires  8 transactions sur 10 sont effectuées par son intermédiaire  Le montant global de la fraude représente 252 M€ Le GIE des Cartes Bancaires : http://www.cartes-bancaires.comhttp://www.cartes-bancaires.com  Créé en 1984, afin d'organiser en France un système interbancaire de paiement et de retrait par carte  17/01/2008 : Colloque sur la Prévention et la Gestion de la Fraude aux CB…  La migration vers l’EMV en France est presque terminée

55 Electif P2011 (2009) - Cryptologie - 55 Les applications de la Cryptographie 4 - La Carte Bleue (2/5) – 3 phases cryptographiques Quand la carte est insérée dans le terminal d’un commerçant :  1. Authentification de la carte - Hors-Ligne, en local sur le Terminal CB  La carte contient une signature S=RSA KprivGIE (H(i)) des infos d’identification i  i = { Nom, Prénom, N°de Carte Bleue, Date d’expiration }  La signature S est gravée lors de la fabrication de la carte « en lieu sûr »  Le terminal lit i et S, calcule H(i) et compare avec RSA KpubGIE (S)  2. Authentification du porteur (code PIN – Personal Identification Number)‏  La carte contient le PIN chiffré 3-DES en mémoire et sur la piste magnétique  La puce chiffre le PIN saisi au clavier et transmet l’accord/le refus au terminal  3. Authentification en ligne, si montant important (affichage ‘AUTORISATION’)‏  Le terminal se connecte à un centre d’autorisation et lui fournit i  Le centre lui renvoie une valeur aléatoire a. Le centre calcule 3-DES K (a), avec K = clé secrète de la carte (le centre connaît toutes les clés secrètes de toutes les cartes en circulation). Le centre peut aussi consulter la banque débitrice pour connaître le solde du compte, et une éventuelle opposition  La carte calcule 3-DES K (a) et le terminal renvoie cette valeur au Centre, qui donne alors l’autorisation si le « défi » est relevé, authentifiant la carte

56 Electif P2011 (2009) - Cryptologie - 56 Les applications de la Cryptographie 4 - La Carte Bleue (3/5) – Affaire de la « YesCard » Affaire « Serge Humpich » en 1998 : il a démontré que le Système n’était pas fiable  Il a contourné l’authentification hors-ligne RSA en factorisant le ‘n’ du GIE !  Le ‘n’ du GIE faisait 321 bits (taille inchangée depuis 1985), alors que cette taille était notoirement connue comme insuffisante en 1998 (512 bits à minima)‏  Humpich a factorisé n = p.q avec un logiciel de factorisation et en a déduit la clé secrète du GIE démontrant ainsi la vulnérabilité du système des CB !  Il a fabriqué des ‘Yes Cards’ qui acceptent n’importe quel code PIN  Depuis cette affaire, le GIE a réagi :  n est passé à 768 bits (mais seulement à/c du 1/11/1999)‏  L’authentification en ligne est passée du DES au 3DES Serge HUMPICH est poursuivi en Justice par le GIE CB  Jugement du 25/02/2000 : Serge Humpich a été déclaré coupable de falsification de CB et d'introduction frau- duleuse dans un système automatisé de traitement  Il a été condamné à 10 mois de prison avec sursis  Le tribunal a ordonné la confiscation des scellés  Il devra verser le franc symbolique de dommages et intérêts au GIE cartes bancaires ainsi que 12000 francs de frais d'avocat  Les avocats de Serge Humpich ont fait appel de cette décision Humpich, le 25/02/2000, après le verdict

57 Electif P2011 (2009) - Cryptologie - 57 Les applications de la Cryptographie 4 - La CB (4/5) – Avertissement de Banque de France (2000)‏

58 Electif P2011 (2009) - Cryptologie - 58 Les applications de la Cryptographie 4 - La Carte Bleue (5/5) – Algo EMV - DDA Avant EMV, il est possible de recopier les données publiques d’une CB sur une YesCard  Dernière escroquerie révélée le 9/2/2007 pour un montant de 640 000 € (125 YesCards)‏ Quand la carte est insérée dans le terminal d’un commerçant :  1. Authentification de la carte - Hors-Ligne, en local sur le Terminal CB  La Carte contient une signature S=RSA KprivGIE (H(i)) des infos d’identification i  + La Carte contient une clé RSA (K Cpub, K Cpriv ) et un module de calcul RSA (mém. cachée)‏  + La Carte contient 1 certificat de la clé publique K pubGIE signé par une AC  + La Carte contient 1 certificat de la clé publique K Cpub signé par K privGIE  La carte envoie au terminal les 2 certificats, i et S  Le terminal lit i et S, calcule H(i) et compare avec RSA KpubGIE (S)‏  Le terminal vérifie le 1er certificat K pubGIE et utilise cette clé pour vérifier le 2ème : K Cpub  Puis le Terminal génère un nombre aléatoire Z et l’envoie à la carte  La carte chiffre Z’=RSA KCpriv (Z) et l’envoie au terminal, qui calcule RSA KCpub (Z’) : s’il trouve Z, il a authentifié la carte, seule capable de connaître K Cpriv.  2. Authentification du porteur (code PIN – Personal Identification Number)‏  Le PIN est fourni par le Terminal sous forme chiffrée RSA KCpub (PIN), et non en clair  La carte contient le PIN chiffré 3-DES en mémoire et sur la piste magnétique  La puce chiffre le PIN saisi au clavier et transmet l’accord/le refus au terminal  3. Authentification en ligne, si montant important (affichage ‘AUTORISATION’)‏  Comme précédemment

59 Electif P2011 (2009) - Cryptologie - 59 Les applications de la Cryptographie 5 - Commerce et Transactions en ligne (1/2)‏ E-Commerce / Paiement en ligne / HTTPS – SSL/TSL  L’internaute se connecte au site marchand et le vendeur lui communique :  Sa clé RSA publique et le certificat qui atteste de son identité (authentification)‏  Si l’internaute (son navigateur) fait confiance à l’AC ayant signé le certificat  Il (son navigateur) vérifie le Certificat (avec la clé publique de l’AC)‏  Il négocie avec le site le meilleur protocole de sécurisation  Il génère une clé secrète en local qu’il envoie chiffrée avec la clé vendeur  Cette clé sert de clé de chiffrement symétrique pour les échanges, le temps de la session, notamment pour envoyer le n° de carte bancaire  Le vendeur déchiffre le n° de carte bancaire et effectue la transaction avec la banque de l’internaute. L’internaute ne fournit pas son code PIN  2 inconvénients :  Le commerçant n’a pas authentifié l’acheteur (la CB est peut-être usurpée ?)‏  L’internaute / Le titulaire de la carte peut contester auprès de sa banque  Le commerçant est en possession du numéro de Carte Bancaire de l’acheteur  Et la clé de 128 bits pose aujourd’hui des questions de sécurité… E-Commerce / Paiement en ligne / HTTPS – SET « Secure Electronic Transaction »  Elimine les 2 inconvénients du mode SSL/TSL  Fait intervenir 2 acteurs supplémentaires : les banques (de l’acheteur et du vendeur)‏

60 Electif P2011 (2009) - Cryptologie - 60 Les applications de la Cryptographie 5 - Commerce et Transactions en ligne (2/2)‏ e-Carte Bleue www.e-cartebleue.com (2002)‏www.e-cartebleue.com  Un numéro de carte bleue à chaque nouvel achat  Attention : certains sites marchands exigent la carte physique pour le retrait (SNCF…) !  Attention : cas des livraisons et des paiements partiels…  Se connecter en ligne (Identification + Authentification) pour avoir un numéro de CB à usage unique (valable 90 jours)‏  Aucune contestation n’a été signalée… mais des aménagements à faire chez les vendeurs Téléprocédure « Impôts en Ligne » ou « Télé-TVA »  Dans ce cas, à l’authentification du Ministère des Finances (pour l’internaute), s’ajoute en plus l’authentification du contribuable (pour le Ministère des Finances) :  Soit à l’aide d’une clé RSA générée à l’inscription sur le poste du particulier, accompagnée d’un Certificat généré par … le Ministère des Finances lui-même  Soit à l’aide d’une clé RSA générée par l’entreprise et certifiée par une Autorité de Certification validée par le Ministère des Finances  Ainsi, les protocoles assurent une authentification mutuelle des 2 partenaires  Indispensable car l’administration peut ainsi attaquer le contribuable

61 Electif P2011 (2009) - Cryptologie - 61 Les applications de la Cryptographie 6 – Communications GSM (1/2) – Liaison aérienne Entre le mobile et la BSC (Base Station Controller), les communications sont chiffrées pour éviter une écoute trop facile en captant le signal GSM  Après, sur le réseau filaire, les données ne sont plus chiffrées Algorithme A5/1 : chiffreur par flot qui XOR les données avec une suite pseudo-aléatoire générée par 3 registres à décalage de 19, 22 et 23 bits soit 64 bits en tout :  Une conversation GSM est en Full-Duplex TDMA avec des blocs de 2*114 bits de 4,6 ms  Une clé de session K de 64 bits est utilisée pour la communication (partagée entre le mobile et la BSC)‏  Pour chaque bloc, K et un compteur de blocs de 22 bits initialisent les 3 registres. Le générateur pseudo-aléatoire génère alors les 228 bits nécessaires pour XORer les 228 bits de données transmis ou reçus (full-duplex)‏ Le générateur étant pseudo-aléatoire, la cryptanalyse est rendue possible  Attaques à texte clair connu : qques secondes de conversation en clair et 1 minute de calcul (2004)‏  Attaques à texte chiffré : existe mais nécessite une grosse puissance de calcul Un registre est décalé si son bit en orange correspond à la majorité des trois bits orange.

62 Electif P2011 (2009) - Cryptologie - 62 Les applications de la Cryptographie 6 – Communications GSM (2/2)‏ Téléphone Portable avec Chiffrement de bout en bout  Dans ce cas, le chiffrement « aérien » n’a plus lieu d’être… (mode A5/0)‏  Technologie « standard » d’un point de vue de la cryptographie Exemple : SAGEM MW 3026 S/S-MR  Numérisation et Chiffrement de la voie en local par un algorithme symétrique propriétaire non publié à clé secrète de 128 bits, permettant d’assurer la confidentialité  Donc, indépendant du réseau utilisé (sur lequel les données transitent chiffrées)‏  Nécessite un correspondant avec un terminal assurant les mêmes fonctions Exemple : SecurePhone Qtek 8500  Triple chiffrement AES clé 256 bits + Twofish + Serpent  Utilisation de l’algorithme Diffie-Hellman Avec ce type de téléphone :  on a un chiffrage de bout en bout  On dispose de toutes les fonctions « classiques » en cryptographie :  Authentification des correspondants  Non-répudiation…

63 Electif P2011 (2009) - Cryptologie - 63 Les applications de la Cryptographie 7 – Communications BlueTooth (1994)‏ Le BlueTooth est utilisé pour des communications à courte distance  Entre ordinateurs, imprimantes, claviers, souris, PDA, téléphones portables…  Débit de 1 Mb/s à plusieurs dizaines de Mb/s, portée qques dizaines de mètres Comme pour le GSM, utilisation d’un algorithme E0 de chiffrement par flot avec un générateur pseudo-aléatoire :  Clé K de 2 à 128 bits (en général 128)‏  Organisation interne :  4 registres à décalage de longueurs 25, 31, 33 et 39 bits (total 128 bits)‏  2 états internes de 2 bits (câblé sur les registres)‏  A chaque « tic » d’horloge, on décale les registres d’un cran, et on met à jour les états  On extrait 4 bits des 4 registres, on les somme, et on fait un XOR de cette somme avec la valeur d’un des états, le premier bit obtenu est la sortie  Initialisation du générateur, en utilisant un autre générateur E0 qui permet de générer 200 bits pseudo-aléatoires dont on conserve les 128 derniers, avec :  le compteur de 26 bits du « Maître » du « piconet »  l’adresse BlueTooth du composant (48 bits)‏  La clé K de 2 à 128 bits  L’appel à une fonction polynomiale

64 Electif P2011 (2009) - Cryptologie - 64 Les applications de la Cryptographie 8 – Autres applications : TV, GPS (1/1)‏ TV Câble ou Satellite avec abonnement  La diffusion des programmes est chiffrée  Le système de déchiffrement repose sur plusieurs couches :  La couche identification / authentification : généralement par une carte à puce comme une carte bleue  Le logiciel décodeur :  Mediagard : pour Canal+  Viaccess : pour TPS  Les chiffrements : SECA 1, SECA 2… Système de Positionnement par Satellite GALILEO (Européen) :  Le générateur de nombre pseudo aléatoires de Galileo a été cassé le 1/4/2006  Les séquences de fréquences sur lesquelles le signal GPS peut être capté en continu (il existe des sauts de fréquence)‏ Slide à compléter…

65 Electif P2011 (2009) - Cryptologie - 65 Les applications de la Cryptographie 9 – La GND - Gestion Numérique des Droits GND en Français ou en Anglais DRM : Digital Rights Management  Contrôler l’utilisation des œuvres numériques : e-books, fichiers musicaux, vidéos…  Définir qui a le droit de consulter l’œuvre, et pendant combien de temps  Définir le nombre et le mode de consultation de l’œuvre  Définir si l’œuvre peut être copiée, et en combien d’exemplaires  Empêcher la consultation d’une œuvre hors de la zone géographique prévue ou sur un matériel non verrouillé  Lier la consultation d’une œuvre à un matériel / logiciel prévu (ex : iTunes)‏  Empêcher la copie depuis le support ou un flux de données issu de ce support après déchiffrement…  Un système de GND est basé sur le chiffrement des œuvres  Les matériels doivent donc être en mesure de gérer une clé de déchiffrement  Mais ces matériels sont dans le public… Problèmes et Tendances :  Un fichier chiffré est toujours copiable  Après déchiffrement et conversion en analogique, il n’y a plus aucune protection ; c’est le « Trou Analogique »  La maîtrise de l’ensemble du cycle de vie d’une œuvre numérique semble impossible  La tendance actuelle est donc à l’abandon de la GND :  Steve Jobs demande en 2007 aux Majors d’abandonner la GND  EMI a annoncé avec Apple en 2007 que tout le catalogue iTunesStore sera disponible sans GND

66 Electif P2011 (2009) - Cryptologie - 66 Les applications de la Cryptographie 10 – La protection de la Vie Privée - PGP Communications privées – PGP « Pretty Good Privacy »  PGP est un logiciel créé par Philip Zimmermann entre 1984 et 1991  Mais il utilisait RSA sans l’accord de RSA Laboratories, ce qui lui a valu des procès pendant 3 ans… et les foudres des Douanes Américaines…  Il s’agit tout simplement d’une utilisation « personnelle » de la cryptographie  « If privacy is outlawed, only outlaws will have privacy »  « Si l’intimité est mise hors la loi, seuls les hors-la-loi auront une intimité »  PGP le plus utilisé au monde pour chiffrer le courrier numérique…  Les AC sont vos amis et « les amis de vos amis »… (proximité sociale)‏  Utilise les algorithmes :  Asymétrique RSA pour le chiffrement des clés symétriques, signature, etc…  Clés de 512, 768, 1024 ou 1280 bits  Symétrique IDEA pour le chiffrement des données (rapidité)‏  Hachage MD5 Serrures Electroniques : voitures, radiocommandes…

67 Electif P2011 (2009) - Cryptologie - 67 L’espace des clés : concrètement (1/2)‏ Une clé DES : 56 bits – 2 56 clés différentes (ou environ 10 17 )‏  Or log 10 (2 56 ) = 56 * log 10 (2) = 16,8, la clé est un nombre de 17 chiffres  Il existe 4 clés k t.q. DES k (m)=m, et 6 paires k1,k2 t.q. DES k1 (DES k2 (m))=m  Donc 16 clés à éviter, probabilité d’en choisir une : 2 -52  DES n’est pas un groupe : il n’existe pas k t.q. DES k (m)= DES k1 (DES k2 (m))‏  D’où le Triple-DES, qui agrandit l’espace des clés à 2 56*3 = 2 168 Une clé RSA actuelle : 1024 bits  Or log 10 (2 1024 ) = 1024 * log 10 (2) = 508, le clé est un nombre de 508 chiffres  Il existe donc ~ 10 508 clés différentes de 508 chiffres  En comparaison :  Le nombre d’atomes dans l’univers : 10 78 < N < 10 80 (La Terre : 10 50 atomes)‏  L’age de l’Univers : 12 à 15 milliards d’années, soit plus de 3,7. 10 17 secondes  Une attaque de 1% des clés, étalée sur l’âge de l’univers, demande un rythme de 10 508 / 100 / ( 3,7.10 17 ) clés par seconde, soit : plus de 10 488 clés/s… !!!  L’attaque brute est donc impossible

68 Electif P2011 (2009) - Cryptologie - 68 L’espace des clés : concrètement (2/2)‏ Quelques mesures :  Secondes dans 1 année :3. 10 7 s  Age du Système Solaire :6. 10 9 ans  Age du Système Solaire :6. 10 17 s  Chaînes binaires de 64 bits (8 caractères) :2 64 = 1,8. 10 19  Chaînes binaires de 128 bits (16 car.) :2 128 = 3,4. 10 38  Chaînes binaires de 256 bits (32 car.) :2 256 = 1,2. 10 77  nombre de Premiers de 75 chiffres : 5,2. 10 72  Electrons dans l’Univers : 8,37. 10 77

69 Electif P2011 (2009) - Cryptologie - 69 L’espace des clés : exemples d’attaques brutes Les « Défis » des RSA Laboratories (Secret Key Challenge)‏  Permettent de mesurer le niveau de sécurité offert par les algorithmes à clé secrète  Sont d’une grande valeur ajoutée pour les chercheurs et développeurs  13 défis ont été lancés en Janvier 1997 :  12 défis RC5, avec des clés de 40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120, 128 bits  1 défi DES « DES I » avec une clé de 56 bits  Les défis RC5 à 40, 48 et 56 bits, et DES (à 56 bits) ont été résolus :  RC5 56 bits résolu par « distributed.net » en Octobre 1997 après 250 jours de recherche exhaustive sur 10 000 ordinateurs  En Janvier 1998, défis « DES II » (RSA décide de lancer 2 défis DES par an) :  Résolu en Février 1998 par « distributed.net » après 41 jours de recherche exhaustive sur 50 000 processeurs ; 85% des clés possibles ont été essayées  En Juillet 1998, défi « DES II-2 » :  Résolu par le Super-Ordinateur « DES Cracker » conçu par l’EFF en 56 heures  En Janvier 1999, défi « DES III » :  Résolu par le Super-Ordinateur « DES Cracker » + grille de 100 000 ordinateurs Internet de « distributed.net » en 22 heures

70 Electif P2011 (2009) - Cryptologie - 70 Cryptanalyse : les méthodes (1/2)‏ L’objectif du cryptanalyste est de déchiffrer de nouveaux cryptogrammes sans information supplémentaire ; l’idéal pour lui est donc de découvrir la clé secrète ou privée de la personne « espionnée » Les méthodes sont classées selon 6 catégories selon l’information disponible, en plus du cryptogramme à déchiffrer :  Rien d’autre : attaque « texte chiffré seul »  Le message en clair : attaque « message connu »  Les cryptogrammes associés à des messages choisis : « messages choisis »  Variante « adaptative » : Les cryptogrammes associés à des messages choisis selon les résultats des chiffrements précédents  Le messages déchiffré à partir d’un cryptogramme choisi : « cryptogramme choisi »  Variante « adaptative » : Les messages déchiffrés associés à des cryptogrammes choisis selon les résultats des déchiffrements précédents Les attaques visent les algorithmes de chiffrement mais aussi :  les algorithmes de signature  les algorithmes de MAC  les générateurs de nombres pseudo-aléatoires…tous utilisés en cryptographie

71 Electif P2011 (2009) - Cryptologie - 71 Cryptanalyse : les méthodes (2/2)‏ Mais ne pas sous-estimer d’autres méthodes :  S’introduire sur l’ordinateur du destinataire pour voler les documents déchiffrés  S’introduire sur l’ordinateur du destinataire pour voler sa clé privée  « Emprunter » une carte à puce à l’insu de son propriétaire… C’est le maillon le plus faible qui détermine, en final, le niveau de sécurité d’un système… L’aspect humain est primordial en sécurité informatique. “The only system which is truly secure is one which is switched off and unplugged, locked in a titanium lined safe, buried in a concrete bunker, and surrounded by nerve gas and very highly paid armed guards. Even then, I would not stake my life on it” An anonymous skilled Pirate.

72 Electif P2011 (2009) - Cryptologie - 72 Cryptanalyse : les techniques d’attaque (1/2)‏ Pour « casser » la clé, les techniques d’attaques possibles :  L’attaque par force brute = recherche exhaustive de la clé parmi toutes les clés possibles  L’accroissement des performances des ordinateurs et des réseaux permet de trouver des clés qui n’étaient pas vulnérables il y a quelques années  L’attaque par dictionnaire  De nombreuses personnes utilisent des clés / mot de passe qui sont des mots courants…  La cryptanalyse linéaire  recherche d’une approximation linéaire de l’algorithme de chiffrement, à partir de couples (message clair, cryptogramme). Nécessite un grand nombre de couples  La cryptanalyse différentielle  Analyse des perturbations du cryptogramme suite à des perturbations du message en clair  Chiffrer m puis m   m et analyser la « différentielle »  s = S(m)  S(m   m ).  = XOR  L’étude de l’impact de  m sur  s permet de déduire des informations sur S  L’analyse des « traces » lors des opérations de chiffrement / déchiffrement  En mesurant le temps de calcul ou la consommation électrique d’une carte à puce RSA, on peut déduire assez rapidement les valeurs de certains bits de la clé…

73 Electif P2011 (2009) - Cryptologie - 73 Cryptanalyse : les techniques d’attaque (2/2)‏ Les performances de calcul des ordinateurs doublent tous les 18 mois, à coût égal  Une clé de 64 bits est vulnérable à la recherche exhaustive aujourd’hui  Une clé de 80 bits sera suffisante jusqu’en 2015, mais vulnérable en 2020  Une clé de 128 bits (utilisée par IDEA et AES) ne sera a priori pas vulnérable à la recherche exhaustive à moyen terme

74 Electif P2011 (2009) - Cryptologie - 74 Le Challenge Cryptanalyse ECP 2009 Le précédent Challenge de 2006-2007 est tombé ! Nouveau Challenge : décrypter le message chiffré suivant :   Voir site Web « Etudes ECP », « Technologies de l’Information »

75 Electif P2011 (2009) - Cryptologie - 75 La Cryptographie aujourd’hui et demain Contexte favorable au besoin croissant de chiffrement  Ouverture législative  Explosion des besoins de dématérialisation de l’information  Utilisation systématique des échanges numériques Les limites des solutions existantes doivent être sans cesse repoussées  Compromis Rapidité / Complexité du chiffrement  Adaptabilité de l’implémentation :  aux applications cibles (taille des clés, taille des blocs…)‏  aux supports matériels Nouveaux algorithmes  Eliminer toute source d’information émanant du système, utile au cryptographe  Les systèmes de chiffrements doivent être :  « non-observables »  « non-commandables » Cryptographie quantique (exploitant les lois de la mécanique quantique)‏  Permettrait à deux interlocuteurs de s’entendre sur une clé privé commune en ayant l’assurance de ne pas avoir été espionnés  À l’aide d’un flux de photons à polarisation commandée par l’émetteur, lus par le récepteur  Si un pirate écoute, il doit ré-émettre les photons mais peu se tromper 1 fois sur 2 sur la polarisation à émettre. Cette « erreur » est immédiatement détectée (statistiquement)‏

76 Electif P2011 (2009) - Cryptologie - 76 Complément : la Stéganographie (du grec « stéganos », caché) Art / Science de la dissimulation d’un message dans un autre Un cryptogramme suscite l’ardeur des cryptographes intéressés. On sait que le message existe Un message clair, anodin en apparence, ne suscite cette ardeur que si l’on sait qu’il contient un autre message… ce qui est plus subtil. C’est l’existence du message que l’on veut dissimuler.  On parle de « stégo-médium ». L’analyse d’un stégo-médium est la « stéganalyse »  Exemple célèbre : correspondance Georges Sand / Alfred de Musset  Partitions musicales : chaque note représente une lettre du message  Les encres invisibles : chauffer le support pour faire apparaître le message  Dans le film « MR73 » : le rapport d’analyse ADN dissimulé dans la litière du chat…  Les critères essentiels sont :  L’imperceptibilité : altérer le moins possible le support pour rendre le message indétectable  La robustesse : le message ne doit pas être altéré par les modifications usuelles du médium  La capacité du médium : quelle quantité d’information peut-on y dissimuler ? Avec l’information numérique, il est possible de cacher un message dans un support numérique  Par exemple dans une image, dans un fichier audio, vidéo  Technique la plus basique : codage des bits du message dans les LSB des pixels  Al-Quaida aurait utilisé la stéganographie lors des préparatifs du 11 Sep 2001  Environ 1% des images des newsgroups dissimulent un message ! La cryptographie et la stéganographie peuvent être utilisées conjointement  Dissimuler un message chiffré (enterrer un coffre fort dans son jardin)‏  Chiffrer un message dissimulé (ranger dans son coffre fort un stégo-medium)‏

77 Electif P2011 (2009) - Cryptologie - 77 Exemple de stégo-médium (Source : http://lwh.free.fr/pages/algo/crypto/steganographie.htm)‏ Une méthode consiste à camoufler chaque bit du message dans le dernier bit significatif de chaque point d'une image.  L'image graphique ne changera pas de manière appréciable - la plupart des standards graphiques étant spécifiés pour plus de variations de couleurs que l‘œil humain ne peut en saisir - et le destinataire peut récupérer le message.  On peut stocker de cette façon un message de 64 Ko dans une image 1024 par 1024 à niveaux de gris.  Exemple ci-contre : L’image de droite contient le message « Voici un message bien dissimulé dans l'image de droite : ECOLE CENTRALE DE PARIS Rendez-vous à la Grande Voie des Vignes le 19 Mars 2009 pour le Cours de Crypto.… »


Télécharger ppt "Electif P2011 (2009) - Cryptologie Cryptologie Boris BLAZEJCZAK."

Présentations similaires


Annonces Google