1 / 68

Sécurité des Systèmes d’Information

Sécurité des Systèmes d’Information. Eléments de cryptographie corinne.fredouille@lia.univ-avignon.fr. Cryptologie = cryptographie & cryptanalyse. Transformer des données dans une forme illisible pour un inconnu. Décrypter un message sans connaître les clés (algorithmes connus). Oscar.

drago
Download Presentation

Sécurité des Systèmes d’Information

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sécurité des Systèmes d’Information Eléments de cryptographie corinne.fredouille@lia.univ-avignon.fr

  2. Cryptologie = cryptographie & cryptanalyse Transformer des données dans une forme illisible pour un inconnu Décrypter un message sans connaître les clés (algorithmes connus) Oscar Alice Bob Généralités (1) • cryptage = chiffrement, décryptage =déchiffrement • Sécurité de la cryptographie • Qualité & implémentation des algorithmes • Gestion des secrets Sécurité des Systèmes d'Information : Elements de cryptographie

  3. Ambiguïté Généralités (2) • Cryptographie  quintuplet (P, C, K, E, D) P : ensemble des textes clairs C : ensemble des textes chiffrés K : ensemble des clés E : ensemble des règles de chiffrement D : ensemble des règles de déchiffrement Sécurité des Systèmes d'Information : Elements de cryptographie

  4. Cryptanalyse ek dk y x Chiffrement Déchiffrement K Générateur de clés Généralités (3) x Cryptographie Sécurité des Systèmes d'Information : Elements de cryptographie

  5. Généralités (4) • Cryptanalyse : • Attaque en force : test de toutes les combinaisons possibles de clés ! • Attaque par analyse statistique : informations surfréquences ou séquences des lettres dans le texte clair • Attaque par textes chiffrés : hypothèse sur le texte clair (expressions, mots, sens du message, …) • Attaque par textes clairs : obtention de textes clairs (total ou partiel) et leurs versions chiffrées • Attaque par textes clairs choisis : obtention de textes clairs (total ou partiel) et leurs versions chiffrées et possibilité de tester d’autres textes clairs (et versions chiffrées) • Attaque d’une tierce personne (man in the middle) : changement des paramètres lors des échanges Sécurité des Systèmes d'Information : Elements de cryptographie

  6. Systèmes symétriques • clé symétrique • clé secrète (privée) Systèmes asymétriques • clé asymétrique • bi-clé : 1 publique, 1 privée Canal sûr Typologies des systèmes :Description(1) Sécurité des Systèmes d'Information : Elements de cryptographie

  7. Systèmes symétriques Systèmes asymétriques Bonjour Bonjour = hgtykhj = hgtykhj hgtykhj hgtykhj hgtykhj hgtykhj = Bonjour = Bonjour Typologies des systèmes :Description(2) Sécurité des Systèmes d'Information : Elements de cryptographie

  8. Systèmes symétriques 1 individu = 1 clé générée par membre du groupe Systèmes asymétriques 1 individu = 1 paire de clés publique & privée Typologies des systèmes :Description(3) Sécurité des Systèmes d'Information : Elements de cryptographie

  9. Typologies des systèmes :Avantages & inconvénient(1) Déséquilibre du nb de clés échangées !!! Sécurité des Systèmes d'Information : Elements de cryptographie

  10. Systèmes symétriques Systèmes asymétriques hkjdnfe hkjdnfe ? ? Alice reçoit un message chiffré : • Identifier l’émetteur  Gilles • Déchiffrer le message avec la clé associée à Gilles Alice reçoit un message chiffré : • Déchiffrer le message avec sa clé privée Typologies des systèmes :Avantages & inconvénient(2) Sécurité des Systèmes d'Information : Elements de cryptographie

  11. Typologies des systèmes :Avantages & inconvénient(3) Systèmes symétriques Systèmes asymétriques • Avantages : • Simple et facile • Traitement CPU rapide • Adapter aux grands flux de données à chiffrer • Inconvénients : • Absences de certains services de sécurité • Distribution et nombre des secrets • Avantages : • Distribution des secrets • Multiples services • Inconvénients : • Très gourmand en CPU • Non adapté pour les grand flux de données • Authentification du propriétaire de la clé publique Solution : combinaison des deux méthodes Sécurité des Systèmes d'Information : Elements de cryptographie

  12. Algorithmes :Quelques notions mathématiques (1) • Arithmétique modulaire • a mod m  reste de la division entière • Zmensemble {0,m-1} munis des op. + et * • Ex : 21 * 4 (dans Z15) ? = 9 • Soit a Zm, l’inverse de a, noté a-1  Zmest tel que: aa-1=a-1a=1 (mod m) • a admet un inverse dans Zmsssi pgcd(a,m)=1 (a et m sont premiers entre eux) Sécurité des Systèmes d'Information : Elements de cryptographie

  13. Algorithmes :Quelques notions mathématiques (2) • Probabilités : rappels • Soit x et y deux variables aléatoires issues des distributions X et Y: p(x,y) = p(x|y) . p(y) = p(y|x) . p(x) • Théorème de Bayes : • X et Y sont indépendantes sssi p(x|y) = p(x)  x et y Sécurité des Systèmes d'Information : Elements de cryptographie

  14. Algorithmes simples :Quelques notions mathématiques (3) • Probabilités & cryptographie • Confidentialité parfaite d’un système cryptographique si :  xP et yC,p(x|y) = p(x) Sécurité des Systèmes d'Information : Elements de cryptographie

  15. Algorithmes simples :Par décalage unephraseacrypter fypascldplncjaepc 20 13 4 15 7 17 0 18 4 0 2 17 24 15 19 4 17 5 24 15 0 18 2 11 3 15 11 13 2 9 0 4 15 2 k=11 Sécurité des Systèmes d'Information : Elements de cryptographie

  16. Algorithmes simples :Par substitution unephraseacrypter usflgcuvfuicelmfc u = e(a) = (a) (a = d(u) =  -1(u)) Sécurité des Systèmes d'Information : Elements de cryptographie

  17. Algorithmes simples :Chiffrement affine unephraseacrypter tyxegklnxlrkfgqxk 20 13 4 15 7 17 0 18 4 0 2 17 24 15 19 4 17 19 24 23 4 6 10 11 13 23 11 17 10 5 4 16 23 10 k=(3,11) Sécurité des Systèmes d'Information : Elements de cryptographie

  18. Algorithmes simples :Chiffrement de Vigenère unephraseacrypter uykdhcggelifyazcr 20 13 4 15 7 17 0 18 4 0 2 17 24 15 19 4 17 20 24 10 3 7 2 6 6 4 11 8 5 24 0 25 2 17 Mot-clé : algo, k=(0, 11, 6, 14) Sécurité des Systèmes d'Information : Elements de cryptographie

  19. Algorithmes simples :Par permutation unephraseacrypter neuhrpeasryctepr m=3, k=(1, 2, 0) Sécurité des Systèmes d'Information : Elements de cryptographie

  20. Algorithmes simples :Chiffrement en chaîne • Cryptographie en chaîne  (P, C, K, L, F, E, D) P : ensemble des textes clairs C : ensemble des textes chiffrés K : ensemble des clés L : alphabet de séquences z F : (f1, f2 , …) générateur de séquences z zi=fi(k,p1,p2,…,pi-1) E : ensemble des règles de chiffrement D : ensemble des règles de déchiffrement Sécurité des Systèmes d'Information : Elements de cryptographie

  21. Algorithmes simples :Chaîne asynchrone unephraseacrypter chrtwyrswectpnixv 20 13 4 15 7 17 0 18 4 0 2 17 24 15 19 4 17 2 7 17 19 22 24 17 18 22 4 2 19 15 13 8 23 21 k=8 8 20 13 4 15 … 15 19 4 Sécurité des Systèmes d'Information : Elements de cryptographie

  22. Algorithmes complexes :DES - Historique • 1973 : appel d’offres de systèmes cryptographiques par NIST • 1975 : IBM et le DES (Data Encryption Standard) • 1977 : adoption du DES comme standard • Depuis 1977 : un des systèmes le plus utilisé (ou ses variantes !) avec une révision tous les 5 ans • DES cassé en 1998 ! • Janvier : 39 jours sur 10 000 Pentium en // • Juillet : 56h sur 1 machine dédiée Sécurité des Systèmes d'Information : Elements de cryptographie

  23. Algorithmes complexes :DES - Propriétés • Algorithme à clé secrète • Algorithme par bloc (variantes par chaîne) • Systèmes cryptographiques produit Combinaison d’algorithmes simples basés principalement sur des permutations et des substitutions • Différents modes de fonctionnement possibles: • ECB (Electronic CodeBook): idem pour tous les blocs • CBC (Cipher Block Chaining): XOR(pi, ci-1) • CFB (Cipher FeedBack): XOR(pi,DES(ci-1)) • OFB (Output FeedBack): XOR(pi,DESN(IV)) Sécurité des Systèmes d'Information : Elements de cryptographie

  24. Algorithmes complexes :DES - Synopsis Bloc de texte clair de 64 bits : x + Clé de 56 bits : K = Bloc de texte chiffré de 64 bits : y Sécurité des Systèmes d'Information : Elements de cryptographie

  25. Initialisation • Itérations de f • Permutation inverse Li-1 Ri-1 x : 64 bits L16 R16 f Ki + y : 64 bits L0 R0 Li Ri 32 bits + 32 bits Algorithmes complexes :DES – Descriptif (1) Sécurité des Systèmes d'Information : Elements de cryptographie

  26. Algorithmes complexes :DES – Descriptif de f (1) Ri-1 32 bits f Ki 48 bits f(Ri-1, Ki) 32 bits Sécurité des Systèmes d'Information : Elements de cryptographie

  27. Ri-1 Ki 32 bits 48 bits E Réordonn. + copie E(Ri-1) 48 bits + B1 B2 B3 B4 B5 B6 B7 B8 48 bits Algorithmes complexes :DES – Descriptif de f (2) Sécurité des Systèmes d'Information : Elements de cryptographie

  28. 48 bits B1 B3 B4 B5 B6 B7 B8 B2 S1 S2 S3 S4 S5 S6 S7 S8 S-Boites C2 C1 C3 C4 C5 C6 C7 C8 32 bits P Permutation f(Ri-1, Ki) 32 bits Algorithmes complexes :DES – Descriptif de f (3) Sécurité des Systèmes d'Information : Elements de cryptographie

  29. Sj - Tableau d’entiers c : 0 c 15 6 bits Bj Sj Cj 4 bits b2b3b4b5 b1b6 Ligne Colonne Algorithmes complexes :DES – Descriptif de f (4) Bj = b1b2b3b4b5b6 Sécurité des Systèmes d'Information : Elements de cryptographie

  30. Algorithmes complexes :DES – Descriptif de f (5) Ri-1 32 bits E E(Ri-1) 48 bits Sécurité des Systèmes d'Information : Elements de cryptographie

  31. Algorithmes complexes :DES – Descriptif de K (1) K : 56 bits + 8 Bits de parité (8, 16, 24...) Retrait des bits de parité K : 56 bits Diversification de K  K1, K2, ..., K16 Sécurité des Systèmes d'Information : Elements de cryptographie

  32. K : 56 bits Permutation PC-1 Rotation circulaire (gauche) d’une position si i=1, 2, 9, 16 de deux positions sinon. C0 D0 LS1 LS1 C1 D1 PC-2 K1 : 48 bits LS2 LS2 Algorithmes complexes :DES – Descriptif de K (2) Sécurité des Systèmes d'Information : Elements de cryptographie

  33. Algorithmes complexes :DES – Déchiffrement • Application du même algorithme • Clé de départ : K16 Sécurité des Systèmes d'Information : Elements de cryptographie

  34. Algorithmes complexes :DES – Sécurité (1) • Algorithme entièrement connu  secret de la clé primordial • Efficace grâce à : • Non-linéarité des S-boites • 16 itérations  propagation du brouillage casi-uniforme • Version de base, nombre de clés : 256 • Considéré comme vulnérable aux attaques en force (minimum accepté 64 bits, mais 128 préconisé) • Longueur de clé facilement extensible => variantes: triple DES 112 ou 168 bits, algo. par chaîne Sécurité des Systèmes d'Information : Elements de cryptographie

  35. Algorithmes complexes :DES – Sécurité (2) • Avantages pratiques ! • Implémentation matérielle : chiffrement/déchif. de 300 Mbits à 3 Gbits/s • Idéal pour les échanges permanents : chiffrement réseaux, bus, chiffrement téléphone, signal vidéo ! • Transactions bancaires (3 DES): chiffrement des info. au niveau des DAB • Successeur de DES = AES (oct 2000) !!! • Advanced Encryption Standard • Blocs de messages de 128 bits • Taille de clés : 128, 192, 256 bits • Opérations similaires à DES Sécurité des Systèmes d'Information : Elements de cryptographie

  36. Algorithmes complexes :DES – Sécurité (3) • Autres algorithmes à clé privé : • Blowfish (clé de 32 à 448 bits) : utilisation libre et gratuite, sensiblement + rapide que DES • IDEA (clé de 128 bits): droits détenus, rapidité équivalente à DES • RC2, RC4, RC5, RC6 : droits détenus, + rapide que DES • RC4 : 1 à 256 octets (mais + souvent 40 bits => peu fiable !) • RC2 : 1 à 128 octets • RC5/RC6 : variabilité possible dans la taille des blocs, la taille des clés et le nb de rounds Sécurité des Systèmes d'Information : Elements de cryptographie

  37. Algorithmes complexes :Systèmes asymétriques - Historique • Idée : éviter la problématique d’échange de clés des systèmes symétriques ! • 1976 - Idée d’un système à clé publique Diffie & Hellman • 1977 – 1ère réalisation d’un système à clé publique Rivest – Shamir – Adleman (RSA) • A partir de 1977 – autres systèmes à clé publique Merkle & Hellman – Problème NP complet Chor & Rivest – Problème NP complet El Gamal – Problème lié au logarithme … Sécurité des Systèmes d'Information : Elements de cryptographie

  38. Algorithmes complexes :Systèmes asymétriques - Remarques • Jamais sûrs • La clé publique est PUBLIQUE ! • Ex: Oscar détient un texte chiffré y et la clé publique ek  il peut chiffrer tous les textes clairs x jusqu’à trouver l’unique x tel que : y = ek(x) x est le résultat du déchiffrement de y Sécurité des systèmes asymétriques = problème mathématique réputé difficile Sécurité des Systèmes d'Information : Elements de cryptographie

  39. Algorithmes complexes :Syst. asymétriques - Fonctionnement • Systèmes asymétriques = fonction à sens unique à trappe • ek facile à appliquer pour Bob et inversion de ek difficile (en un temps raisonnable) voire impossible pour Oscar  Fonction à sens unique • Déchiffrement facile pour Alice grâce àune trappe cachée (info. secrète permettant l’inversion facile de ek) Sécurité des Systèmes d'Information : Elements de cryptographie

  40. Algorithmes complexes :RSA : algo. & mise en œuvre (1) Soit n=pq où p et q sont premiers. Soit K={(n,p,q,a,b) : n=pq,  (n)=(p-1)(q-1), ab=1 (mod  (n)) et pgcd(b,  (n))=1} Pour k=(n,p,q,a,b), on définit : y=ek(x) = xb mod n et x=dk(y)= ya mod n (x et y  Zn). Les valeurs n et b sont publiques et les valeursp, qetasontsecrètes. Sécurité des Systèmes d'Information : Elements de cryptographie

  41. Algorithmes complexes :RSA : algo. & mise en œuvre (2) • Bob engendre deux grands nombres premiers p et q • Bob calcule n=pq et  (n)=(p-1)(q-1) • Bob choisit un b aléatoire (1<b< (n)) tel que pgcd(b,  (n)) = 1 • Bob calcule a = b-1 mod  (n) • Bob publie n et b(sa clé publique) et garde secret p, q, a (sa clé privée) Sécurité des Systèmes d'Information : Elements de cryptographie

  42. Algorithmes complexes :RSA : Exemple (1) • Bob choisit p = 101etq = 113 • Bob calcule : n = 101*113 = 11413 et  (n) = 100*112=11200 • Bob choisit b=3533 : pgcd(3533,11200)=1 vrai • Bob calcule : b-1 = 6597 mod 11200 a = 6597 • Bob publie n=11413 et b=3533 Sécurité des Systèmes d'Information : Elements de cryptographie

  43. Algorithmes complexes :RSA : Exemple (2) • Alice souhaite transmettre le message 9726 à Bob • Alice récupère la clé publique de Bob et calcule : 97263533 mod 11413 = 5761 • Alice envoie le texte chiffré 5761 à Bob • Bob reçoit le message 5761 et calcule grâce à sa clé privée : 57616597 mod 11413 = 9726 • Le texte déchiffré est donc 9726 Sécurité des Systèmes d'Information : Elements de cryptographie

  44. Algorithmes complexes :RSA : Choix de p & q (1) • Si factorisation de n possible alors : • Obtention de p et q • Calcul de  (n) • Calcul de l’exposant a à partir de b • Système cryptographique corrompu ! n=pq doit être suffisamment grand pour que la factorisation soit calculatoirement impossible (algo. de factorisation actuels  nombres à 155 chiffres/512 bits. Record établi en 1999 en 2 mois et demi sur 300 ordinateurs et en 224h sur un Cray-C916) Sécurité des Systèmes d'Information : Elements de cryptographie

  45. Algorithmes complexes :RSA : Choix de p & q (2) • Choix de p et q • Tests de primalité probabilistes • Théorème de raréfaction : un nombre y de 256 bits (RSA) a une probabilité de 1/177 d’être premier • Tirage & vérification Sécurité des Systèmes d'Information : Elements de cryptographie

  46. Algorithmes complexes :RSA : Calcul de a, x et y • Calcul de a=b-1: algo. Étendu d’Euclide • Calcul de x ou y : exponentiation modulaire • Optimisation des temps de calcul • Fonctions élémentaires : « square & multiply » Sécurité des Systèmes d'Information : Elements de cryptographie

  47. Algorithmes complexes :RSA : Conclusion • Grands nombres pour p et q RSA > 155 chiffres pour n (clé de 768 bits au minimum, 1024 bits préconisé !) • Sécurité compromise : • Si Oscar connaît a, b etn • Ou connaît b, n et  (n) • Ou connaît b, n , p et q • Oscar peut calculer a et déchiffrer les messages de la même manière que Bob • Le secret de factorisation est compromis • 1500 fois + lent que l’algo. DES Sécurité des Systèmes d'Information : Elements de cryptographie

  48. Algorithmes complexes :Taille des clés • Grandes différences entre systèmes symétriques et asymétriques : • DES : + de 64 bits • RSA : + de 768 bits • Raison : implémentation totalement différente => attaques différentes ! • Attaque en force pour DES • Test de factorisation pour RSA (attaque en force inimaginable actuellement !) • Dans les deux cas: taille des clés fonction de l’évolution calculatoire des ordinateurs Sécurité des Systèmes d'Information : Elements de cryptographie

  49. Message longueur variable Code longueur fixe Fonction de hachage Fonction de hâchage (1) • Fournir une empreinte du document initial • Intégrité • Authentification par signature • Production d’un message condensé => rapidité ! • Propriété des algorithmes utilisés: • Cohérence: si c = fh(x) alors c unique pour x donné • Unicité : si c = fh(x) et d = fh(y) avec x  y alors c  d • Non réversible : c n’implique pas x Sécurité des Systèmes d'Information : Elements de cryptographie

  50. Fonction de hâchage (2) • Taille des hachés : • Haché de longueur n bits => 2n hachés possibles • 2n/2 essais pour trouver une collision (2 messages => même haché) • Taille minimum des hachés : 128 bits • Norme actuelle : 160 bits • Algorithmes les + courants : • MD4, MD5 : • Message Digest 4 & 5 (MIT) • blocs de 512 bits  hachés de 128 bits • MD5 = Variante de MD4 (cassé en 1996) • SHA-1, -2 : Secure Hash Algorithm • Variante de MD4 – blocs de 512 bits  160 (SHA-1), 256, 384, 512 (SHA-2) bits • + de ressources CPU que MD5, parfois + lent Sécurité des Systèmes d'Information : Elements de cryptographie

More Related