1 Protocole d’échange de clés: ex. DH Qu’est ce que Diffie-Hellman (DH) ? I
1 Protocole d’échange de clés: ex. DH Qu’est ce que Diffie-Hellman (DH) ? Inventé en 1976. Protocole cryptographique qui permet à deux entités de générer un secret partagé sans informations préalables l’un sur l’autre. Principe: basée sur la difficulté de calculer des logarithmes discrets sur un corps fini. Le secret généré peut ensuite être utilisé pour dériver une ou plusieurs clés (clé de session, clé de chiffrement de clés, -) Sécurité Informatique 2 Diffie-Hellman Diffie-Hellman : établissement d’une clé secrète 1. Choix d’un nombre premier n et d’un générateur g de Zp * 2. n et g sont publiques 3. Correspondant Alice choisit un entier a envoie A = ga mod n à Bob 4. De même, Bob choisit b et envoie B = gb mod n à Alice 5. Alice construit k = Ba mod n 6. Bob construit k’ = Ab mod n 7. k = k’ clé secrète commune Sécurité Informatique 3 Protocole d’échange de clés: ex. DH Sécurité Informatique 4 Diffie-Hellman: établissement d’une clé secrète (exemple) 1. n = 11111117 et g = 111112 (sont publique) 2. Alice choisie a = 1234 et calcule A = 1111121234 mod 11111117 = 7218868 3. et Bob choisi b = 876 et calcule B =111112876 mod 11111117 = 8671412 4. Alice calcule k = 86714121234 mod 11111117 = 6146319 5. et Bob calcule k’ = 7218868876 mod 11111117 = 6146319 Sécurité Informatique 5 El-Gamal fabrication de la clé Inspiré de Diffie-Hellman Destinataire 1. Choisit un nombre premier p et un générateur g de Zp 2. sélectionne aléatoirement un nombre a Є Zp 3. publie (p, g, ga mod p) Sécurité Informatique 6 El-Gamal protocole Expéditeur: 1. soit m le message avec m < p choisit aléatoirement un entier b Є Zp 2. calcule c1 = gb mod p et c2 = m.(ga)b mod p 3. envoie c = (c1, c2) Destinataire : 1. calcule d1 = (c1)p−1−a mod p = (c1)−a mod p = g−ab mod p 2. puis calcule d2 = d1.c2 mod p = g−ab.m.(ga)b mod p = m Sécurité Informatique 7 El-Gamal exemple 1. p = 11111117 , g = 111112 et a = 1234 2. A calcule ka = ga=1111121234 mod 11111117 = 7218868 3. A publie p = 11111117, g = 111112, ka = 7218868 Sécurité Informatique 8 El-Gamal exemple 1. B choisit b = 876 et le message 99999 2. B calcule c1 = 111112876 mod 11111117 = 8671412 3. et c2 = 99999.7218868876 mod 11111117 = 3205709 4. B envoie (c1=8671412, c2=3205709) Déchiffrement 1. A calcule d1 = 8671412−1234 mod 11111117 = 5300581 2. et d2 = 5300581*3205709 mod 11111117 = 99999 Sécurité Informatique 9 Pb de l’échange Diffie-Hellman Problème : Oscar peut s'insérer entre Alice et Bob et proposé sa valeur O en lieu et place de A pour Bob et de B pour Alice : n, g, A=g^a mod n n, g, O=g^o mod n Alice Oscar Bob O=g^o mod n B=g^b mod n Oscar échange une clé avec Alice et une autre avec Bob et se met au milieu. Conclusion : il faut une phase préliminaire d'authentification ! Sécurité Informatique 10 Calcul des clés du RSA Le calcul de la clé privée fait intervenir le calcul de l’inverse modulo N On reprend l’exemple précedent : p = 29, q = 37, on calcule n = p*q = 29 * 37 = 1073. On doit choisir e au hasard tel que e n'ai aucun facteur en commun avec ϕ(n) = (p-1)(q-1) = (29-1)(37-1) = 1008 On prend e = 71 On calcul d tel que e*d mod 1008 = 1 71× d = k × 1008 + 1 1= 71× d - k × 1008 Sécurité Informatique 11 Calcul des clés du RSA 1= 71× d - k × 1008 On peut utiliser l'algorithme étendu d'Euclide pour calculer l'inverse multiplicatif de e tel que pgcd(e, ϕ(n) ) = 1. 1008 = 14 × 71 + 14 71= 5 × 14 + 1 14 = 14 × 1 + 0. 1 = 71-5 ×14 = 71- 5 (1008 - 14 ×71) = 71 × 71- 5 ×1008 D’où d= 71 et k = 5 Sécurité Informatique 12 L'authentification L'authentification est suivie par l'autorisation L'autorisation définit les ressources, services et informations que la personne identifiée peut utiliser, consulter ou mettre à jour, exemple : son courrier électronique, des fichiers sur un serveur FTP- L'approche traditionnelle Combinaison d'une identification et d'un mot de passe (code secret personnel). Le mot de passe doit posséder certaines caractéristiques : non trivial, difficile à deviner, régulièrement modifié, secret- Des outils logiciel ou hardware de génération de mots de passe existent, mais les mots de passe générés sont difficiles à retenir ! Sécurité Informatique 13 L'authentification L'approche évoluée, la notion de challenge/réponse Alice envoie à Bob un message aléatoire (challenge) Chiffrement à clé secrète : — Alice et Bob partage une même clé secrète ; — Bob renvoie à Alice le message chiffré à l'aide de la clé secrète (réponse) ; — Alice peut déchiffrer le message chiffré avec la clé secrète...C'est Bob ! Chiffrement à clé publique : — Bob renvoie à Alice le message chiffré à l'aide de sa clé privée (réponse) ; — Exploitation de la propriété chiffrement(déchiffrement(M)) = déchiffrement(chiffrement(M)); — Alice peut alors déchiffrer ce message, à l'aide de la clé publique de Bob- c'est donc Bob ! C’est la signature Sécurité Informatique 14 Objectif de la signature Seul l’expéditeur doit pouvoir signer N’importe qui peut vérifier la signature La signature dépend uniquement : de l’identité de l’expéditeur du message Garantit : authentification de l’expéditeur intégrité du message Sécurité Informatique 15 L'authentification par signature Principe : échanger les rôles des clés e et de d algo. signature (secret) noté sig qui, pour une clé fixée d, retourne une signature s pour un message m; Sigd (m) = {m}d = s vérification noté ver qui, à une clé fixée e et pour tout couple message/signature (m, s) va vérifier si la signature correspond bien au message. vrai si s = sigd (m) = {s}e = m vere (m, s) = faux si s ≠ sigd (m) Sécurité Informatique 16 L'authentification par signature SIGNATURE DE LONGS MESSAGE Problématique (très courante !) Signer des messages arbitrairement longs avec un schéma donné. Signature d’un document de 15 Mo avec RSA 1024 bits ? Problème : Cette méthode permet de faire des attaques sur la clé privée de Bob en soumettant des messages aléatoires bien choisi. Sécurité Informatique 17 L'authentification Taille de signature: Indépendante de la taille du message ? Sécurité conservée ? Les falsifications doivent rester difficiles. ⇒Utilisation de fonctions de hachage Hachage Calculer un «résumé» du message aléatoire initial, un “empreinte”, et l'utiliser à la place du message aléatoire lors du chiffrement. L'obtention de ce «résumé» se fait à l'aide d'une fonction de hachage. Sécurité Informatique 18 Fonction de hachage Définition Une fonction de hachage H calcule un haché de n bits à partir d’un message arbitraire M H : {0,1}* → {0,1}n Sécurité Informatique 19 Fonction de hachage Exemple Sécurité Informatique SHA-1 Valeur hachée de n=160 bits A51F 07BB 62EC 44A3 F118 20 Fonction de hachage Critère de conception d’une fonction de hachage La fonction de hachage doit – Réduire la taille des entrées à n bits (compression) – Etre facile à calculer (Primitives de calcul simples) Sécurité Informatique 21 Fonction de hachage Propriétés des fonctions de hachage Une bonne fonction de hachage doit être: publique (pas de notion de secret) rapide à calculer à sortie de taille fixe. bien répartie en sortie. Sécurité Informatique 22 Fonction de hachage Propriétés des fonctions de hachage (En terme de sécurité) Résistance à la préimage Étant donnée y = H(m), il est difficile de retrouver m à partir de y ! Fonction à sens unique Résistance à la seconde préimage Étant donnée m et H(m), il est difficile de trouver m’ ≠ m tel que H(m’)= H(m) Résistance aux collisions Il est difficile de trouver m et m’ vérifiant: m’ ≠ m tel que H(m’)= H(m) Sécurité Informatique 23 Fonction de hachage Propriétés Une fonction de hachage "H" transforme une entrée de données d'une dimension variable "m" et donne comme résultat une sortie de données inférieure et fixe "h" (h = H(m)). l'entrée peut être de dimension variable ; la sortie doit être de dimension fixe ; H(m) doit être relativement facile à calculer ; H(m) doit être une fonction à sens unique ; H(m) doit être «sans collision». Sécurité Informatique 24 Fonction de hachage Utilisation Hors sécurité (Vérification de l’intégrité d’un téléchargement) On télécharge un fichier et son empreinte On recalcule l’empreinte localement. La probabilité que le fichier et l’empreinte contiennent une erreur cohérente est extrêmement faible ! Par contre on n’a pas prouvé que le fichier n’a pas été modifié par un pirate uploads/Science et Technologie/ securite-informatique-ch2-partie-2.pdf
Documents similaires
-
14
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 14, 2021
- Catégorie Science & technolo...
- Langue French
- Taille du fichier 5.2775MB