plan principes fondamentaux cryptographie clés secrètes tp4 : utiliser le logiciel wireshark pour...

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

Upload: martin-duchesne

Post on 04-Apr-2015

118 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

Plan

Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour :

- Capturer une conversation avec le protocole TCP;- Capturer un mot de passe transmis en clair sur le réseau.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 167

Page 2: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentaux1) Vocabulaire Le chiffrement est l’opération par laquelle on crypte un

message, c’est une opération de codage. Chiffrer ou crypter une information a pour but de la rendre

incompressible en l’absence d’un décodeur particulier. un cryptogramme est un message écrit en langage chiffré

(message chiffré). La cryptographie est la science qui consiste à écrire l’

information (voix, son, textes, image fixe ou animée) en la rendant incompressible à ceux ne possédant pas les capacités de la déchiffrer.

La cryptanalyse est l’ensemble des moyens qui permettent d’analyser une information chiffrée, afin de la déchiffrer.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 168

Page 3: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentaux2) Algorithmes et clés des chiffrement Les systèmes de chiffrement utilisent des algorithmes de

chiffrement qui s’appuient sur des fonctions mathématiques souvent complexes qui, à l’ aide d’ une clé de chiffrement, modifient les données à protéger en générant des données apparemment aléatoires.

Le texte chiffré (cyphertext) peut alors être envoyé sur un réseau non sécurisé.

Même s’ il est intercepté, le cryptogramme, est uniquement compréhensible par un tiers qui possède la clé de déchiffrement permettant d’ obtenir le texte initial en clair( plaintext).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 169

Page 4: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentaux Deux participants en communication dans un modèle de

chiffrement.

e est la clé de chiffrement.d est la clé de déchiffrement.E, D sont les algorithme du chiffrement et du déchiffrement.Eve joue le rôle d’un attaquant

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 170

Page 5: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentauxTaille de la clé Une clé codée sur n bits (taille de la clé) peut prendre 2n

valeurs. Plus la clé est longue, plus le nombre de clés possibles est important, et plus cela nécessite de la puissance et du temps de calcul (pou un attaquant) pour le trouver.

Une clé de chiffrement/déchiffrement doit avoir une taille minimale afin d’ éviter qu’elle soit déterminée trop facilement.

puisqsue il est devenu relativement simple de casser des clés d’ une longueur de 40 bits (environ 1012 possibilités de clés différentes), il est préférable de chiffrer les informations sensibles avec des clés plus longues de 128 bits (1038 possibilités) ou 256 bits, par exemple. Casser de telles clés demande une très lourde infrastructure informatique et des temps de traitement important, ce qui est un empêchement pour certains.

Le moyen le plus simple pour obtenir une clé est de la procurer directement auprès de l’utilisateur ou à partir du système qui la stocke, plutôt que d’essayer de la deviner par itération.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 171

Page 6: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentauxRobustesse du système La taille de la clé utilisée, la puissance de l’algorithme et la

capacité à garder les clés secrètes de façon sécurisé, déterminent la robustesse d’un système de chiffrement.

L’algorithme n’a pas besoin d’ être secret. Il est même recommandé qu’il soit publié afin que la communauté scientifique puisse tester sa résistance aux attaques et trouver les failles avant qu’un attaquant ne les exploite.

Il n’est pas facile de garder des clés secrètes alors garder secret un algorithme l’est encore moins dans la mesure ou les algorithmes sont utilisées par un grand nombre d’ utilisateurs et durant de longues périodes.

Un système de chiffrement est dit fiable, robuste, sûr ou sécurisé s’il reste inviolable indépendamment de la puissance de calcul ou du temps dont dispose un attaquant.

Le système est opérationnellement sécurisé (computational secure) si sa sécurité dépend d’une série d’ opérations réalisables en théorie, mais irréalisable pratiquement (temps de traitement top long en appliquant les méthodes connues et en utilisant la puissance de calcul disponible).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 172

Page 7: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

1. Principes fondamentaux Notes :

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

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 173

Page 8: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie1) Introduction La cryptographie traditionnelle ou classique inclut tous les

mécanismes et algorithmes basés sur des fonctions mathématiques ou logiques.

Elle comprend tous les systèmes de chiffrement utilisés depuis l’Egypte ancienne jusqu’aux principaux systèmes de chiffrement actuellement en vigueur.

Elle se devise en deux classes de systèmes déchiffrement : - les chiffrement symétrique - et les systèmes de chiffrement asymétrique

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 174

Page 9: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie2) Systèmes de chiffrement symétriqueMode opératoire Pour crypter ou décrypter un texte, il faut détenir une clé et

un algorithme de chiffrement. S’il s’agit de la même clé pour effectuer ces deux opérations, le système de chiffrement est dit symétrique.

L’ émetteur et le récepteur doivent posséder la même clé secrète pour rendre confidentielles des données et pouvoir les comprendre (chiffrer et déchiffrer).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 175

Page 10: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieC

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 176

Emetteur

Destinataire

Clé secrète

Texte en clair

Algorithme de chiffrement symétrique

Texte chiffré

Réseau Texte chiffré

Algorithme de chiffrement symétrique

Clé secrète

Texte en clair

DES, IDEA, AES, Blowfish, RC4, RC5, …

Page 11: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieUn exemple : “chiffrement de César” Pour crypter un message, il faut décaler de trois lettres dans

l’alphabet chaque lettre du message à transmettre. Pour décrypter un message chiffré, il suffit de décaler chacune des lettres de 3 positions dans le sens inverse de l’alphabet. Exemple numérique:- La clé : 3- Texte en clair : salam- Texte chiffré : vdodp (décaler en arrière de trois lettres dans l’alphabet)

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 177

Page 12: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieC

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 178

Emetteur

Destinataire

Clé secrète = 3

Texte en clair : salam

Algorithme de chiffrement symétrique : Décalage des lettres de l’alphabet (+3)

Texte chiffré : vdodp

Réseau Texte chiffré : vdodp

Clé secrète = 3

Texte en clair : salam

Algorithme de déchiffrement symétrique : Décalage des lettres de l’alphabet (-3)

+3 : décalage en avant par 3- 3 : décalage en arrière par 3

Page 13: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieAutre exemple : DES

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 179

Les grandes lignes de l'algorithme sont les suivantes : - Fractionnement du texte en blocs de 64 bits;- Permutation initiale des blocs ;- Découpage des blocs en deux parties: gauche et droite, nommées G et D;- Etapes de permutation et de substitution répétées 16 fois (appelées rondes) ;- Recollement des parties gauche et droite puis permutation initiale inverse.

Notes : La clé est codée sur 64 bits et formée de 16 blocs de 4 bits, généralement notés k1 à k16.

Page 14: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographiePrincipaux algorithmes DES (Data Encryption Standard) a été elaboré par le

NIST(National Institute of Standards and Technology) en 1977. Les informations sont chiffrées par blocs de 64 bits avec une clé de 56 bits. Cet algorithme est largement utilisé pour les applications financières. Il est generalement mis en œuvre en un mode dit de chainage de blocs (CBC, Cipher Block Chaining) ou le chiffrement d’ un bloc dépend du précédent.

Les algorithmes Triple DES, DESX (DES XORed), GDES (Generalized DES), RDES(Randomized DES) sont déduites de l’algorithme DES, elle exploitent des clés plus longues, rendant ainsi l’ algorithme plus puissant. Le triple DES tire son nom du fait que l’on réalise trois niveau de chiffrement ce qui donne une clé effective de chiffrement de 168 bits (56 bits trois trois).

RC2, RC4 et RC5 sont des algorithmes propriétaires élaborés par Ronald Rivest et diffusé par la société RSA Security Inc. Ces algorithmes utilisent des clés de longueur variable pouvant aller jusqu’à 2048 bits. Ils sont utilisés principalement pour rendre confidentielle des flux applicatifs.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 180

Page 15: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie IDEA (International Data Encryption Algorithm) elaboré

conjointement par des chercheurs de l’ école polytechnique fédéral de Zurich et de la société Ascom, utilise une clé de 128 bits pour coder des blocs de données de 64 bits. Il est principalement utiliser par le protocole de messagerie sécurisée PGP (Pretty Good Privacy).

Blowfish est un algorithme de chiffrement symétrique implimanté par Bruce Schneierr en 1993.

AES (Advanced Encryption Standard) est un algorithme qui a été publié pour la première fois en 1998 par les Belges Vincent Rijmen et Joan Daemen. Il exploite des clés de 128 bits, 192 ou 256 bits sur des blocs de 128 bits. L’ AES est considéré rapide, facile à implémenter et ne requiert que peu de ressource mémoire. Actuellement, ce système demeure incassable et reste le plus sûr des systèmes de chiffrement symétrique.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 181

Page 16: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieCryptanalyse Les cryptanalyse des systèmes de chiffrement se base en

générale sur la découverte de la clés de chiffrement, sur l’analyse des message indépendamment de la connaissance des clés.

En réalité, La majorité des systèmes de chiffrement symétrique sont opérationnellement sécurisés (ils résistent aux attaques de force brute).

Toutefois, avec le progrès scientifique dans le domaine de l’informatique et de l’ électronique, les systèmes qui sont jugés actuellement sûrs ne le seront peut être plus dans le futur proche (ce qui est déjà le cas du DES simple avec une clé 56 bits) du fait de l’ augmentation de la capacité et de la rapidité de traitement mises à disposition de la communauté.

Le cryptanalyste peut par exemple tester plusieurs clés qui ne diffèrent les unes par rapport aux autre que de quelques bit sur un seul message pour deviner le comportement du système de chiffrement. Ensuite il va tenter de retrouver les messages originaux à partir des messages chiffrés sans avoir recours à l’utilisation effective de la clé des utilisateurs.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 182

Page 17: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieLimites du chiffrement symétrique Chaque personne doit posséder autant de clés secrètes qu’

elle a d’ interlocuteurs. Il faut disposer d’ autant de paires différentes de clés qu’il y a de paires de correspondants! Ce qui devient vite impossible à implémenter et inadapté aux communications multipartenaires et aux services d’ Internet.

Un système de chiffrement symétrique pose donc le problème de la gestion et notamment de la distribution des clés secrètes. Cela aspect constitue une faiblesse des systèmes de chiffrement symétrique.

C’est pour pallier la complexité du problème de la gestion et la distribution des clés des systèmes de chiffrement symétrique qu’un autre type de système de chiffrement, qualifié de chiffrement asymétrique ou chiffrement à clé publique a été conçu et est actuellement largement utilisé dans le monde d’ Internet.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 183

Page 18: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie2) Système de chiffrement asymétrique Mode opératoire Un système de chiffrement asymétrique est basé sur l’

utilisation d’un couple unique de deux clés complémentaires, calculées l’une par rapport à l’autre. Cette biclé est constituée d’une clé publique (connue par tous) et d’une clé privée (connu par son propriétaire). Seule la clé publique peut être connue de tous, tandis que la clé privée doit être confidentielle et traitée comme un secret.

On doit connaitre la clé publique d’ une destinataire pour lui envoyer des informations chiffrées. Ce dernier les décryptera à leur réception avec sa clé privée qu’il est le seul à connaitre . Le message est confidentiel pour le destinataire dans le mesure ou lui seul peut le déchiffrer par sa clé privée.

De cette façon, pour transmettre des données de manière confidentielle avec un système de chiffrement asymétrique, l’ émetteur chiffre un message avec la clé publique du destinataire du message et le destinataire le déchiffre avec sa clé privée.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 184

Page 19: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

Le destinataire possède deux clés :

2. CryptographieC

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 185

Emetteur

Destinataire

Clé publique du destinataire

Texte en clair

Algorithme de chiffrement asymétrique

Texte chiffré

Réseau Texte chiffré

Algorithme de chiffrement asymétrique

Clé privée du destinataire

Texte en clair

RSA, Diffie-Hellman, ElGamal, …

Clé publique + clé privée

Page 20: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieUn exemple : RSA Génération des clés par le destinataire :

Le destinataire choisit au hasard deux nombres premiers p et q et calcule . Il choisit au hasard e tel que :

le nombre d'entiers, inférieurs à n , premiers avec n . est le plus grand diviseur commun de et de e .Le destinataire calcule l'entier d tel que :

La clé publique du destinataire est le couple (n,e) et sa clé secrète est (n,d ).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 186

( ) (1gcd

1)( 1)(( ) 1),

ep

n p qne

n pq

( )ngcd( , ( ))p e n( )n

)( )

11(

e m dd nod n

Page 21: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie Chiffrement :

L’ émetteur récupère la clé publique (n,e) du destinataire et souhaite lui envoyer la version cryptée d'un texte en clair, représenté par la donnée d'un entier m tel que : L’ émetteur calcule :

Déchiffrement :Lorsque le destinataire reçoit , il calcule et récupère ainsi le message m puisque :

Notes :1) Ce qu’est en rouge sont des nombres privée du destinataire.2) Quelle est la relation qui lie la clé privée et la clé secrète ?3) Comment casser donc RSA?C

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 187

0 .m n ec m mod n

c dc

dm c mod n

Page 22: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

Le destinataire possède deux clés :

2. CryptographieC

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 188

Emetteur

Destinataire

Clé publique du destinataire : (n,e)

Texte en clair : m

Algorithme de chiffrement

asymétrique : RSA

Texte chiffré :

Réseau

Texte chiffré :

Algorithme de chiffrement

asymétrique : RSA

Clé privée du destinataire : (n,d)

Texte en clair :

(n,e) + (n,d)

ec m mod n

ec m mod n

dm c mod n

Page 23: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieExemple numérique de RSA: Prenons deux nombres premiers aléatoirement : p = 29 , q =

37. On calcule n = pq = 29 * 37 = 1073 .

On doit choisir e au hasard tel que e et ( p -1)(q -1) = (29 -1)(37 -1) = 1008 soient premiers entre eux. On prend e = 71.

On choisit d tel que 71*d mod 1008 = 1. On trouve d = 1079 . Voici alors les deux clés privée et publique :

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 189

1079, ) (71,1073), ) ( ,1073)

la clé publiqe est e nlé clé priv s ndée e t

Page 24: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie On va encrypter le message 'HELLO'. On va prendre d’abord

le code ASCII de chaque caractère et on les met bout à bout : m = 72(H) 69(E) 76(L)76(L) 79(O) . Ensuite, il faut découper le message m en blocs qui comportent moins de chiffres que n . n comporte 4 chiffres, on va donc découper notre message m en blocs de 3 chiffres : 726 976 767 900 (on complète avec des zéros) par suite on encrypte chacun de ces blocs : 72671 mod 1073 = 436

97671 mod 1073 = 82276771 mod 1073 = 82590071 mod 1073 = 552

Le message encrypté est 436 822 825 552. On peut reconstituer le message chiffré avec d : 4361079 mod 1073 = 726

8221079 mod 1073 = 9768251079 mod 1073 = 7675521079 mod 1073 = 900

C'est à dire la suite de chiffre 726 976 767 900.On retrouve notre message en clair 72 69 76 76 79 c’est à dire 'HELLO'.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 190

Page 25: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieLe challenge RSA : Après la découverte de l'algorithme RSA, la société RSA

Security a été créée pour vendre le cryptosystèmes RSA. en 1991, ils ont mis en place un concours de factorisation avec de l'argent à la clé pour montrer à quel point ils étaient sûrs de la sécurité de leurs algorithmes (factoriser des nombres de 100 à 617 chiffres décimaux). En 2007, RSA Security a mis fin au concours.

RSA-768 est un nombre du concours RSA. Il est long de 768 bits (232 chiffres décimaux). Il a été factorisé après 2 ans et demi de recherche et calculs. Cinq grands organismes de recherches étaient associés (EPFL à Lausanne, NTT au Japon, l'Université de Bonn, CWI au Pays-Bas et LORIA à Nancy).Quelques chiffres pour donner une idée des calculs nécessaires : - 5To de données traitées ;- Calcul distribué sur plus de 1700 cœurs ;- Environ 1020 opérations (soit 2000 ans sur un processeur simple cœur 2,2GHz) ;

Notes : Pour avoir une sécurité optimale il ne faut plus utiliser des clés RSA inférieures à 1024 bits. Selon les chercheurs, RSA-1024 devrait résister pendant encore 5 à 10 ans (sauf découverte mathématique majeure).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 191

Page 26: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieUn autre exemple : l’algorithme ElGamal Si RSA est un des algorithmes à clé publique les plus

populaires, il en existe quelques autres. L’un d’entre eux, l’algorithme ElGamal, a été développé par Taher ElGamal en 1984. Il n’est pas breveté et peut être utilisé librement.

Ce cryptosystème repose sur la difficulté de la résolution du logarithme discret.(si y = g x mod p , on dit que x est le logarithme discret de y de base g modulo p)

Il présente l'avantage de faire appel à deux processus aléatoires, mais présente l'inconvénient de générer des messages chiffrés particulièrement longs.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 192

Page 27: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. CryptographieLe fonctionnement de l’algorithme d’ ElGamal Génération des clés :

Alice (destinataire) choisit deux paramètres non-secrets : un nombre premier p et une un nombre g inferieur à p. Elle choisit aléatoirement un nombre a dans l'intervalle [1, . . , p-2 ] et calcule α = ga mod p.Elle publie sa clé (p, g, α) et garde secrète sa clé a.

Chiffrement:Bob, qui désire envoyer un message m à Alice, l'exprime sous la forme d'un nombre entre 0 et p-1. Il choisit aléatoirement un nombre b dans l'intervalle [1, . . , p-2 ] et calcule β = gbmod p.Il chiffre alors son message m en m' = αb.m mod p.Il transmet enfin à Alice le couple (β, m')

Déchiffrement :Pour déchiffrer le message de Bob, Alice détermine le nombre x = p-1-a.Elle calcule βx.m' mod p et retrouve le message m initial (à vérifier).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 193

Page 28: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie en effet on :

car on a d’ après le petit théorème de Fermant(Théorème : pour tout entier naturel non nul n et tout entier a premier avec n, on a:où φ(n) désigne la fonction φ d'Euler comptant les entiers entre 1 et n qui sont premiers avec n. Si n est un nombre premier, alors φ(n) = n - 1)

Note importante : Casser cet algorithme c’est trouver a partir de l’ équation :

α = ga mod pApplication numérique de l’ algorihtme de ElGamal Alice : p = 97 et g = 13. Elle choisit aléatoirement un

nombre a, disons 45, dans l'intervalle [1, . . , 95]. Elle calcule α = 1345 mod 97 = 20. Elle publie sa clé (97, 13, 20 ) et garde secrète sa clé 45.

Bob veut envoyer le message “vew” à Alice. En utilisant le code ASCII, son message est 118 101 119. Il le découpe en nombres entre 0 et 97 : 11 81 01 11 09. Il choisit aléatoirement un nombre b, disons 35, dans l'intervalle [1, . . , 95]. Il calcule β = 1335 mod 97 = 71 mod 97.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 194

( ) ( )

( )

· '   · '   ·  ·   · ·  

· · ·      

1 1x x

1 a a

a m m m g

mod p

b p a b p ab b

b p b b

bg g g m

g g g m m

( )      1 1 modb pg p

( )       1 modna n

Page 29: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie Il chiffre alors son message nombre par nombre :

11 est chiffré 2035 · 11 mod 97 = 46 · 11 mod 97 = 2181 est chiffré 2035 · 81 mod 97 = 46 · 81 mod 97 = 4001 est chiffré 2035 · 1 mod 97 = 46 · 1 mod 97 = 4609 est chiffré 2035 · 9 mod 97 = 46 · 9 mod 97 = 26

Il transmet enfin à Alice le couple (71, 21 40 46 26)

Pour déchiffrer le message de Bob, Alice détermine le nombre x = 97-1-45 = 51. Pour chaque partie m' du message, elle calcule 7151·m' mod 97 :

7151 · 21 mod 97 = 19 · 21 mod 97 = 117151 · 40 mod 97 = 19 · 40 mod 97 = 817151 · 46 mod 97 = 19 · 46 mod 97 = 17151 · 26 mod 97 = 19 · 26 mod 97 = 9.

Elle retrouve le message 11810109 après concaténation (deux chiffres par deux chiffres).

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 195

Page 30: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie Notes :

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

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 196

Page 31: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie Principaux algorithmes Les principaux algorithmes de chiffrement à clé publique, dont

le nom est celui de leur inventeurs, exploitent le plus souvent des clés de longueur variant de 512 à 1024 bits voir 2048. Nous retiendrons les algorithmes importants :

RSA (pour Ron Rivest, Adi Shamir, Len Adelman) qui est basé su la difficulté de factorisation des nombre premiers.

Diffie-Hellman et ElGamal qui sont basé sur le problème mathématique de calcul de logarithmes discrets.

Certains algorithmes basés sur les équations de calcul de circonférences des ellipses sont à l’origine de la cryptographie à courbe elliptique (ECC, Elliptic Curve Cryptography), qui pourrait remplacer les algorithmes actuels.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 197

Page 32: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

2. Cryptographie Cryptanalyse La cryptanalyse des systèmes de chiffrement asymétrique s’

appuie sur les mathématiques. Elle est basée sur la résolution ou la réduction de la complexité des fonctions inverses à celles utilisées par les systèmes de chiffrement symétrique.

Donald Coppersmith (www.research.ibm.com) a élaboré en 1983 une méthode permettant de calculer les algorithmes discrets dans un temps polynomial (qui varie linéairement avec la longueur de la clé). Celle-ci est devenue un moyen incontournable pour les cryptanalyse de l’algorithme Diffie-Hellman.

Des mathématiciens ont trouvé en 1980, un algorithme qui permettait de factoriser des nombres à 50 chiffres en 1012

opérations élémentaires. En 2005, une équipe chinoise a annoncée qu’elle avait réussi à

réduire la complexité de 280 à 269 opération élémentaires et a démontré qu’elle a cassé l’ algorithme SHA-1.

Note : Même en l’absence de la diffusion d’une méthode prouvant qu’un algorithme a été casse, cela ne veut pas dire que la méthode n’existe pas ou que l’algorithme n’ a pas été cassé. Aucune preuve mathématique ne permet d’affirmer que ce n’est pas possible.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 198

Page 33: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

3. Clés secrètes La sécurité du processus des chiffrement repose en grande

partie sur la sécurité et la confidentialité des clés utilisées, sur la robustesse des algorithmes et sur la sécurité des plates-formes matérielles et logicielles qui les supportent.

La durée de vie d’une clé de chiffrement (et de déchiffrement) dépend de son utilisation. Il est conseillé de changer la clé périodiquement, tout en évitant les modification trop fréquentes qui rendent difficile la gestion des clés. En revanche, pour toutes les applications ouvertes au réseau, il est hautement souhaitable d’utiliser une clé à usage unique, particulière à chaque session de travail.

Le système de gestion de clés basé sur l’usage d’une carte à puce (et d’un lecteur de carte) autorise l’usage d’une clé unique à chaque session de travail. En fonction des besoins, les données à chiffrer ou à déchiffrer le sont par le processeur de la carte à puce et le résultat est retourné à l’utilisateur. Ainsi, la clé secrète ne quitte jamais la puce.C

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 199

Page 34: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

3. Clés secrètes Les fonctions d’un système de gestion de clés sont celles

qui permettent de réaliser les services de:- Génération d’une clé en fonction des besoins et des systèmes de chiffrement;- Distribution des clés aux entités (vérification, authentification des entités, etc.);- Stockage des clés de manière sécurisé (chiffrement des clés , sécurité du serveur, archivage fiable afin d’assurer la confidentialité et l’ intégrité des clés);- Surveillance(monitoring), d’ enregistrement, d’audit , de traçage, de sécurité, de test de bon fonctionnement, de alarme de contrôle d’ accès aux clés, etc.;- Destruction des clés inutiles (destruction physique, etc.);

Dans un système d’information, plusieurs clés de chiffrement sont généralement utilisées. Il peut alors exister une certaine hiérarchie des clés (notion de clé maitresse, physiquement protégée, et de clés filles chiffrées à partir de celle-ci).C

hap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 200

Page 35: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

3. Clés secrètesExemple de l’ algorithme de Diffie Hellman pour créer une clé partagée Les deux participants (Alice et Bob) partagent deux

paramètres non-secrets : un nombre premier p et un nombre g tel que 1< g < p .Chacun d'eux choisit une clé privée dans l'intervalle [1,.., p - 2 ], Alice choisissant une valeur a et Bob une valeur b .

Chacun des participants calcule alors une valeur publique qu'ils s'échangent : Alice envoie A = ga mod p à Bob qui lui envoie B = gb mod p .Bob calcule Ab mod p et Alice calcule Ba mod p .

Cette valeur étant nécessairement la même, ainsi, ils disposent d’une valeur k qui fait office de clé secrète partagée puisque on a :

k = Ba mod p = (gb mod p)a = gba mod p k = Ab mod p = (ga mod p)b = gba mod p

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 201

Page 36: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

3. Clés secrètesExemple numérique de l’ algorithme de Diffie Hellman Supposons à titre d’exemple, qu’Alice et Bob partagent les

deux informations suivantes : p = 233 et g = 45 .Si Alice choisit a = 11 et Bob b = 20 , alors A = 4511 mod 233 =147 , B = 4520 mod 233 =195 .

Aussi on a : Ba mod p=19511 mod 233=169 et Ab mod p=14720 mod 233 =169. Alice et Bob disposent d’une clé privée, k = 169 .

La sécurité de cette technique repose sur la difficulté de calcul de k (= gab mod p) à partir de A= ga mod p ou B= gb mod p lorsque p est grand. La fonction utilisée dans cette méthode f (x ) = gx mod p est une fonction à sens unique : f (x ) est facile à calculer, mais “retrouver x à partir de { f (x ) , g et p }” est très délicat . L’algorithme de Diffie Hellman se base ainsi sur le problème du logarithme discret.

Question : Comment casse l’algorithme de diffie Hellman?Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 202

Page 37: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

3. Clés secrètesLes faiblesse de l’ algorithme de Diffie Hellman Quand Alice veut envoyer un message chiffré à Bob, elle doit

d’abord entrer en contact avec lui afin de fixer la clé lors d’un premier échange; chaque transmission de message se trouve ainsi fortement ralentie et perd toute instantanéité. On parle dans ce cas du problème d’authentification.

Une tierce personne peut intervenir lors du processus d’échange des clés publiques en les modifiant par des clés de son choix; elle sera alors en mesure de décrypter les messages envoyés sans que les participants ne s’en aperçoivent. Ainsi, lors de l’échange des clés, l'attaquant choisit sa propre clé c et calcule G = gc mod p . Il remplace a et b par cette valeur. Alice va employer la clé k1 =Ga =gac mod p et Bob la clé k2 =Gb= gbc mod p . Lors de l’échange d’un message chiffré, l'attaquant déchiffre les messages d’Alice à l’aide de la clé k1 qu’il partage avec Alice, puis les chiffres avec la clé k2 qu’il partage avec Bob. Ce dernier va décrypter le message d’Alice sans s’apercevoir qu’il a été intercepté et manipulé. Ici on parle de l’attaque “man in the middle”.

Aussi l’algorithme de Diffie Hellman est menacé par le progrès en mathématiques car le problème difficile du logarithme discret peut être résolu dans le futur.

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 203

Page 38: Plan Principes fondamentaux Cryptographie Clés secrètes TP4 : Utiliser le logiciel Wireshark pour : - Capturer une conversation avec le protocole TCP;

Exercice 32 : Quels sont les principaux avantages, inconvénients et limites associé au chiffrement symétrique?

Exercice 33 : Quels sont les principaux avantages, inconvénients et limites associé au chiffrement asymétrique?

Exercice 34 : pourquoi l’ usage du chiffrement asymétrique est-il préféré au chiffrement symétrique dans les transaction commerciale sur Internet? Dans quelles circonstances le chiffrement symétrique peut-il être utilisé?

Exercice 35 : Qu’est ce qui permet de qualifier un algorithme de chiffrement de robuste?

Exercice 36 : Pourquoi est-il difficile d’ avoir confiance dans les produit de chiffrement commercialisés?

Ch

ap

itre

6 :

La s

écu

rité

par

le c

hiff

rem

en

t

Mounir GRARI Sécurité informatique 204