Télécharger la présentation
1
Eléments de cryptographie
2
Présentation En 2012, la cryptologie joue un rôle fondamental dans l'ensemble des activités humaines liées à l'utilisation des NTIC. Elle permet d'assurer : Confidentialité, Intégrité Authentification qui sont nécessaires à l'activité économique et au commerce.
3
Plan Vocabulaire Historique Stéganopraphie Généralités
Cryptographie symétrique Chiffrement par blocs Chiffrement par flots Cryptographie asymétrique Fonctions de hachage Cryptographie hybride Conclusion
4
Vocabulaire - I Nécessité de préciser le sens de certains termes en raison d'une certaine confusion et des multiples anglicismes utilisés : chiffrement : transformation à l'aide d'une clé de chiffrement d'un message en clair en un message incompréhensible si on ne dispose pas d'une clé de déchiffrement (en anglais encryption) ;
5
Vocabulaire - II chiffre : anciennement code secret, par extension l'algorithme utilisé pour le chiffrement ; cryptogramme : message chiffré décrypter : retrouver le message clair correspondant à un message chiffré sans posséder la clé de déchiffrement (terme que ne possèdent pas les anglophones, qui eux « cassent » des codes secrets) [1];
6
Vocabulaire - III cryptographie : étymologiquement « écriture secrète », devenue par extension l'étude de cet art (donc aujourd'hui la science visant à créer des cryptogrammes, c'est-à-dire à chiffrer) ; cryptanalyse : science analysant les cryptogrammes en vue de les décrypter ; cryptologie : science regroupant la cryptographie et la cryptanalyse.
7
Vocabulaire - IV le terme « crypter » n'a pas de raison d'être : le couple chiffrer/déchiffrer et le sens du mot « décrypter » vont dans le sens de l'Académie française qui précise que le mot est à bannir et celui-ci ne figure pas dans son dictionnaire, en tout cas pas dans le sens où on le trouve en général utilisé.
8
Cryptograpie – Historique 1
Plus vieux document chiffré : XVIeme siècle av. JC. en Irak – recette secrete en supprimant consonnes et lettres Grèce : Xe et XXIe siècle – utilisation de la cytale – transposition avec bande de cuir enroulée sur un baton Hébreux : transpositions de lettre
9
Cryptographie – Historique - 2
Code de César : substitution alphabétique => décalage de x caractères (3 pour César) - ROT13 Faible sécurité : analyse statistique sur les fréquences de lettres Modification => substitution polyalphabétique => la position de chaque lettre correspond à un alphabet de déchiffrement
10
Cryptographie – Historique - 3
Carré de Polybe : chaque lettre est remplacée par sa position dans un carré Chiffre de Vigenere – : utilisation d'une clé permettant de se repérer dans un tableau de lettres 26 x 26 : la lettre de la clé donne la colonne, celui du texte donne la ligne Chiffrement et déchiffrement simples Peu sensible à l'analyse de fréquence des lettres Cassé au XIXe par Ch. Babbage (1850)
11
Cryptograpie – Historique - 4
La machine Enigma 1920 Utilisée par l'armée allemande Subsitution polyalphabétique -(rotors) Transposition élémentaires (connectors) 1016 possibilités (très élevé pour l'époque) Cassée par l'équipe d'Alan Turing en 1945 à Bechley Park à l'aide de Colossus (1er ordinateur) de même que le code Lorenz utilisée par la hiérarchie allemande.
12
Cryptograpie – Historique - 4
Les Navajos : WindTalkers Années 60 : utilisation des ordinateurs 1975 : algorithme DES 1976 : Diffie Hellman : idée de la cryptographie à clé publique 1977 : mise en oeuvre cryptographie à clé publique RSA - Rivers Shamir et Adleman
13
La stéganographie cryptographie : art du secret
stéganographie : art de la dissimulation. On s'efforce de rendre le message inaperçu Hérodote : tablette de bois gravée puis recouverte de cire, tatouage sur le crâne micro point des services secrets allemands en correspondance G. Sand Alfred de Musset
14
La stéganographie transport d'un message dans une image :
bits de poids faible (format BMP) modification de la compression (JPEG) modification de la palette (GIF et PNG) transport d'un message dans un son : bits peu significatifs (MP3) changement de pistes (MIDI) utilisable pour le tatouage des documents (Watermarking)
15
Principe de Kerchoff Auguste Kerchoff (1883) La cryptographie militaire « l'algorithme de chiffrement doit pouvoir tomber sans inconvénients aux mains de l'ennemi » la force du chiffrement réside sur la clé, en effet : la confidentialité de l'algorithme est difficile à garantir. le caractère public de l'algorithme améliore ses qualités intrinsèques
16
Types d'attaque Attaque en aveugle (exhaustive ou « brute force »).
Attaque à clairs connus. Attaque à clairs choisis. Attaque à clairs choisis adaptatifs. Attaque à chiffrés choisis. Attaque à clé choisie.
17
L’attaque en force brute
Dite encore « attaque en aveugle » ou attaque exhaustive Consiste à essayer toutes les combinaisons de clés Prend habituellement un temps considérable à moins qu’une faiblesse soit découverte
18
Les rainbow tables Appelées tables arc en ciel
ensemble de pairs mot de passe /empreinte précalculées (120 Go pour Windows) permettant de trouver rapidement un mot de passe du fait de l'absence de « salage » Un même mot de passe produit toujours la même empreinte RainbowCrack, ophtcrack exemples : empreintes LM/NTML pour Windows ophtcrack
19
Attaque par dictionnaire
consiste à tester un grand nombre de mots choisis dans un dictionnaire adapté au contexte John the Ripper
20
Cryptographie symétrique
on utilise le même algorithme pour chiffrer et déchiffrer également appelée cryptographie à clé secrète impose l'existence d'un secret partagé
21
Crytographie – Les clés
plus la clé est longue, plus l'algorithme est résistant à une attaque exhaustive : clé de n bits => en moyenne 2 n-1 essais pour trouver la bonne clé AES : 128 bits => 2128 clés possibles ~ 3,4 1038 La sécurité provient de la complexité et du temps nécessaire pour explorer l'espace de clés. Algorithmes basés sur des propriétés mathématiques qui peuvent être évaluées précisément (nombre premiers, factorisation, .)
22
Crytographie – Chiffre de Vernam
Masque jetable – chiffre de Vernam clé totalement aléatoire de longueur égale à celle du message (Gilbert Vernam – 1917) utilisée une seule fois => système parfaitement sûr Le chifrement/déchiffrement se fait par Ou Exclusif (XOR) Problème : la clé fait la même longueur que le messages => clé de 20 Mo
23
Crytographie – Chiffre de Vernam - suite
One Time Password : clé à usage unique : téléphone rouge Maison Blanche – le Kremlin Problème : gestion du dictionnaire de clés lourde et complexe
24
Crytographie – Les tours
le chiffrement est fait en utilisant deux transformation (permutation et substitution). Un tour (round) consiste à effectuer les deux. nombre de tours élevé => plus grande sécurité au prix d'une plus grande charge de calcul => lenteur (cf. AES/DES) la valeur de l'algorithme est toutefois plus importante que le nombre de tours
25
Cryptographie symétrique – II
Transposition : Permutation (P-BOX). Opérations mathématiques : x3 mod pq, ... Substitution (S-BOX): Tableaux indexés (n x m). Opérations binaires : XOR, ...
26
Chiffrement par blocs les données sont traitées par bloc de taille (habituellement fixe) d'une puissance de 2 comprise entre 32 et 512 quleques exemples d'algorithmes de chiffrement par blocs : DES, AES, Blowfish, TwoFish un chiffrement par bloc peut être utilisé comme fonction de hachage
27
Cryptographie symétrique : DES - I
Data Encryption Standard 1er algorithme de chiffrement pour l’industrie. Standard américain FIPS 46-2. Principes de base : Produit de substitutions/transpositions. blocs de 64 bits clé de 56 bits 16 tours
28
Cryptographie symétrique : DES - II
255 opérations nécessaires Bilan lenteur d'exécution espace de clé trop petit => attaque en un temps raisonnable on utilise maintenant le Triple DES, IDEA ou AES
29
Cryptographie symétrique : Triple DES
ou 3DES 3 applications successives de l'algorithme DES avec 2 ou 3 clés différentes. force de la clé : 112 et non 168 48 tours !!! assez lent et remplacé par AES
30
Cryptographie symétrique : AES
Advanced Encryption Standard choisi en 2000 par le NIST utilise l'algorithme Rijndael conçu par Joan Daemen et Vincent Rijmen, Fonctionnement bloc de 128 bits clé : 128, 192 ou 256 bits. Pour une clé de 128, 192 ou 256, AES nécessite respectivement 10, 12 ou 14 tours.
31
Cryptographie symétrique : AES – II
il n'a pas été cassé la seule méthode est la « force brute ». L'algorithme Rijndael a été conçu de telle manière à rendre des méthodes classiques comme la cryptanalyse linéaire ou différentielle très difficiles. les recommandations de la NSA documents secret : 128, 192 ou 256 bits documents très secrets : 192 ou 256 bits
32
Cryptographie symétrique : Blowfish
conçu par Bruce Schneier en 1993 Taille du bloc : 64 bits Longueur clé : 32 à 448 bits (par tranche de 8 bits) 16 tours 5 fois plus rapide que 3DES utilisé dans de nombreux logiciels propriétaires et libres (GnuPG et OpenSSH)
33
Cryptographie symétrique : Blowfish – II
pas de vulnérabilité importantes décelées à ce jour seule attaque possible : exhaustive
34
Cryptographie symétrique : Twofish
conçu par Bruce Schneier, Niels Ferguson, John Kelsey, Doug Whiting, David Wagner et Chris Hal en 2000 Taille du bloc : 128 bits Longueur clé : 128, 192, 256 bits 16 tours parmi les 5 finalistes du concours AES
35
Cryptographie symétrique : Twofish
assez rapide conçu pour être utilisé dans les cartes à puces et les systèmes embarqués attaque : exhaustive
36
Cryptographie symétrique : IDEA
International Data Encryption Algorithm 1991 Blocs de 64 bits Clé de 128 bits 8,5 tours Très sûr – breveté par Médiacrypt
37
Chiffrement par flot utilise un générateur de nombre pseudo- aléatoires sur lequel on opère un XOR (⊕ bit à bit avec le flux de données Chiffrement du message M avec la clé K : M ⊕ K = C Déchiffrement du message C avec la clé K : C ⊕ K = (M ⊕ K) ⊕ K = M ⊕(K ⊕ K) = M Exemples : RC4, A5 (GSM), E0 (BlueTooth)
38
Générateur de nombres pseudo aléatoires
Algorithme génerant des nombres présentant les caractéristiques du hasard. En cryptographie, il doit être proche de l'aléas parfait et résister à des analyses statistiques permettant de prédire la suite Quelques noms Yarrow (utilisé par /dev/urandom dans Mac OsX) Fortuna Blum Blum Shub ISAAC
39
Générateur de nombres pseudo aléatoires - II
Un générateur peut utiliser le désordre d'un système (mouvements souris, clavier, ...) comme source d'aléa et à envoyer le résultat à une fonctionne de hachage comme MD5 ou SHA-1
40
Cryptographie symétrique : RC4
Ronald's Code 4 concu par Ronald Rivest de RSA Security en – marque déposée mais algo non breveté utilisé dans SSL ou WEP générateur de bits pseudo-aléatoires dont le résultat est combiné avec le texte en clair via une opération XOR, le déchiffrement se fait de la même manière . Utilise une permutation de tous les octets et des pointeurs d'index
41
Cryptographie symétrique : RC4 - II
La permutation est initialisée grâce à la clé de taille variable, typiquement entre 40 et 256 bits, grâce au key schedule (génération de sous-clé) de RC4. peu sûr au point de vue cryptographique => attaque WEP
42
Cryptographie symétrique : RC5
chiffrement par bloc, évolution de RC4 blocs de 32, 64 ou 128 bits taille de clé : de 0 à 2048 (multiple de 8) 1994 de 1 à 255 tours (12 à l'origine)
43
Cryptographie symétrique : Shacal
Chiffrement symétrique par blocs basé sur des fonctions de type SHA-1 Gemplus (cartes à puce) Taille bloc :64 bits Clé : 128 à 512 bits 80 tours
44
Crytographie asymétrique : Diffie Hellman
Whifield Diffie et Martin Hellman : inventeurs de la cryptographie à clé publique – 1976 Idée décrite mais pas de dipositif développé
45
Crytographie asymétrique
également appelée cryptographie à clé publique Algorithmes lents utilisés seulement pour les échanges de clés et non pour le flot de données
46
Crytographie asymétrique : RSA
algorithme de cryptographie asymétrique à clé publique développé par Rivest Shamir Adelman (1977) – breveté et tombé dans le domaine public en 2000 utilisation d'une paire de clés publique pour chiffrer privée pour déchiffrer Permet d'assurer l'authentification
47
Crytographie asymétrique : RSA - II
Utilise les propriétés des factorielles (très difficile à casser), le petit théorème de Fermat et des tests de primalité Pb : factoriser rapidement un grand nombre Cryptanalisé depuis 25 ans : pas de failles Plus grand nombre factorisé : 663 bits en 2005 Clés RSA : entre 1024 et 2048 bits Utilise par de nombreuses application SSL, SSH
48
Crytographie asymétrique : El Gamal
conçu par Taher El Gamal basé sur les logarithmes discrets utilisé pour le chiffrement et la signature électronique utilisation libre utilisé dans GnuPG et PGP
49
Crytographie asymétrique : DSA
Digital Signature Algorithm – 1993 algorithme de signature électronique Utilisée par les Etats Unis (NIST) à l'époque où RSA était breveté peut être utilisé gratuitement
50
Les fonctions de hachage - I
un fonction de hachage est une fonction qui fait subir une succession de traitements à une donnée en entrée pour en produire une « empreinte » servant à identifier la donnée initiale. Les fonctions de hachage sont très utiles en cryptographie où elles sont utilisées pour chiffrer une donnée initiale sans que l'opération inverse de décryptage soit possible, à moins d'essayer une attaque exhaustive
51
Les fonctions de hachage – II
fonction non injective petite modification sur l'entrée => gros effet sur l'empreinte (effet avalanche) éviter les collisions problème : même entrée => même empreinte : utilisation d'un sel aléatoire ajouté à l'entrée pour changer l'empreinte
52
Les fonctions de hachage – III
le sel permet de lutter contre les attaques par dictionnaire et par rainbow table (passwd Linux). Exemples de fonctions de hachage : MD5, SHA-1, SHA-256, SHA-512, Whirlpool, Tiger
53
Les fonctions de hachage : MD5
Message Digest 5 inventé par Donald Rivest pour améliorer MD4 (utilisé pour les mdp Windows) permet d'obtenir une empreinte numérique de 128 bits (32 caractères) faille grave découverte en 1996, il n'est plus considéré comme sûr au niveau cryptographique cassé en 2004 par des chercheurs chinois : création de collisions complètes
54
Les fonctions de hachage : MD5 - Suite
remplacé par SHA-1 et ses variantes décrit dans la RFC 1231 encore utilisé pour la vérification d'intégrité de transferts de fichier (FTP, ...) Ex md5 de la chaine « Salut » : c8afac2fa4c0b61d6b c8b pour la chaine « salut « , on obtient : 6aba532a54c9eb9aa30496fa7f22734d sous Linux, la commande md5sum permet de calculer l'empreinte
55
Les fonctions de hachage : SHA-1
Secure Hash Algorithme 1 conçue par la NSA produit un hash ou condensat de 160 bits possibilité de trouver une collision complète avec 263 opérations (à la limite du faisable) plus lent que MD5 de plus en plus remplacée par SHA-256 et SHA-512 plus robustes
56
Code d'authentification de message
appelé CAM ou HMAC (keyed-hash message authentication code) semblable à une empreinte de hachage mais utilise en plus une clé secrète Le CAM assure que le message est inchangé (intégrité) et vient de l’expéditeur (authentification, par l’utilisation de la clé secrète). Exemple : HMAC-MD5, HMAC-SHA1
57
Cryptographie hybride ou mixte
utilise les deux familles d'algorithmes : symétrique et asymétrique crypto. symétrique : rapide mais nécessite un secret partagé. Comment transmettre la clé ? on utilise la cryptographie asymétrique qui permet l'authentification pour le transfert de la clé Une clé aléatoire est générée pour un algorithme symetrique (AES, 3DES, ...), elle sera utilisé ensuite pour chiffrer le message. Cette clé est crypté grâce à la clé publique du destinataire (RSA, Diffie Hellman)
58
Cryptographie hybride ou mixte - suite
On envoie donc le message chiffré avec l'algorithme symetrique accompagné de la clé chiffrée correspondante. Le destinataire déchiffre le message avec sa clé privée puis dechifre le message grace à la clé symétrique. Le transfert se fait en chiffrement symétrique plus rapide
59
En conclusion Algorithme secret ≠ sécurité élevée.
Au contraire ... Rien n’est acquis en cryptographie. Taille de clé variable adaptée à l'état de la technique. « Seuls les paranoïaques survivent »... ... peut-être !
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.