Vous êtes sur la page 1sur 28

SÉCURITÉ INFORMATIQUE

2019/2020

Chapitre 3
Cryptographie Moderne

Mme S. Bensaid née Belattaf


UMMTO
PLAN DU CHAPITRE

 Algorithmes de chiffrement modernes


– Classification
– Symétrique ou asymétrique?
– Optimisation du chiffrement par une clé de session
 Arithmétique pour la cryptographie
 Protocole de Diffie Hellman (DH)
 Chiffrement de RSA
 Chiffrement d’Elgamal
 Fonctions de hachage
 Signatures Numériques
– Signature numérique avec RSA
– Signature numérique avec EL Gamal
 Les certificats numériques.
 Autorités de certification et PKI 2

S. BENSAID 2019/2020 – UMMTO


ALGORITHMES DE CHIFFREMENT MODERNES
Classification
Algorithmes de Chiffrement

A clés symétriques A clés asymétriques

DES RSA
Triple DES Elgamal
AES Rabin
IDEA Merkel-Hellman
3
RC2, RC4 et RC5

S. BENSAID 2019/2020 – UMMTO


ALGORITHMES DE CHIFFREMENT MODERNES

Chiffrement à clés symétriques

L’émetteur et le récepteur doivent posséder la même clé secrète


4

S. BENSAID 2019/2020 – UMMTO


Algorithmes de Chiffrement modernes
CHIFFREMENT À CLÉS ASYMÉTRIQUES (À CLÉ PUBLIQUE)

Chaque interlocuteur dispose d’un couple de clés :


o Une clé publique connue de tous.
o Une clé privée gardée secrète.
 L’émetteur (la source) chiffre le message en utilisant la clé publique du
destinataire. 5
Le destinataire déchiffre le message en utilisant sa clé privé
S. BENSAID 2019/2020 – UMMTO
ALGORITHMES DE CHIFFREMENT MODERNES
SYMÉTRIQUE OU ASYMÉTRIQUE ?
 Chiffrement à clés symétriques
 Avantages
 La rapidité
 Ces algorithmes utilisent des clés de taille relativement faible et peu de ressources.
Ex :128 bits pour IDEA et 168 bits pour Triple DES
 Inconvénients :
 Le problème 1 : est que l’émetteur et le récepteur doivent se mettre d’accord à l’avance sur la
clé à utiliser : Problème de distribution de la clé secrète
 Le problème 2 : est que chaque entité doit disposer d’autant de clés secrètes qu’elle a
d’interlocuteurs : Problème de gestion de clés secrètes.

 Chiffrement à clés asymétriques


 Avantages :
 Pas de problème de distribution de clés.
 Chaque interlocuteur garde secret que sa clé privée.
 Inconvénients
 Les algorithmes asymétriques sont particulièrement lents à comparer avec ceux symétriques
et demandent un temps de traitement processeur important : Charge de calcul
 Ils nécessitent des clés plus longues (ex : 1024 bits, 2048 bits) 6

S. BENSAID 2019/2020 – UMMTO


ALGORITHMES DE CHIFFREMENT MODERNES

Optimisation du chiffrement par une clé de session


 Objectifs

1. Palier aux inconvénients majeurs du système de chiffrement :


 asymétrique : lenteur de traitement des messages de taille importante.
 symétrique : problème de distribution et de gestion des clés secrètes

2. Prendre le meilleur des 2 systèmes de chiffrement.

 Solution
 Combinaison des 2 systèmes de chiffrement symétrique et asymétrique
7

S. BENSAID 2019/2020 – UMMTO


ALGORITHMES DE CHIFFREMENT MODERNES
OPTIMISATION DU CHIFFREMENT PAR UNE CLÉ DE SESSION

 Comment combiner l’usage des 2 systèmes?


 Principe :
 Pour chiffrer les messages de grande taille, on utilise un algorithme
symétrique et une clé de session.
 On utilise un algorithme asymétrique pour chiffrer la clé de session.

 Une clé de session est une clé secrète, partagée entre deux
interlocuteurs durant la durée de l’échange et détruite à la fin
de la session de travail.

S. BENSAID 2019/2020 – UMMTO


OPTIMISATION DU CHIFFREMENT PAR UNE CLÉ DE SESSION

 Pour assurer la confidentialité des données échangées entre 2


interlocuteurs (entités), on suit les étapes suivantes :
 L’une des deux entités (l’émetteur) génère aléatoirement une clé de
session.
 L’émetteur chiffre le message à transmettre en utilisant la clé de
session et un algorithme à clé symétrique.
 L’émetteur chiffre la clé de session avec la clé publique du
destinataire (en utilisant un algorithme à clé asymétrique).
 Le message chiffré et la clé chiffrée sont envoyés au destinataire.
 Le destinataire déchiffre la clé de session chiffrée en utilisant sa clé
privé.
 Le destinataire déchiffre le message en utilisant cette clé de session.
 Le destinataire peut, également, utiliser cette clé de session pour
émettre des messages chiffrés à son interlocuteur. 9

S. BENSAID 2019/2020 – UMMTO


ARITHMÉTIQUE POUR LA CRYPTOGRAPHIE

ALGORITHME D’EXPONENTIATION RAPIDE


 C = 150233 mod 437
 233 = 11101001(2)

1 150
0 1502 mod 437 = 213
0 2132 mod 437 = 358
1 3582 mod 437 = 123
0 1232 mod 437 = 271
1 2712 mod 437 = 25
1 252 mod 437 = 188
1 1882 mod 437 = 384

(150 × 123 × 25 × 188× 384) mod 437 = 351 10

S. BENSAID 2019/2020 – UMMTO


ARITHMÉTIQUE POUR LA CRYPTOGRAPHIE

ALGORITHME D’EUCLIDE ETENDU (LES ÉQUATIONS DIOPHANTIENNES)

396X+17Y=1 pgcd (396,17)=1

396 163 -
23 17 7 +
3 5 2 -
2 2 1 +
1 0 -
396 × 7 – 17 × 163 = 1  {X=7,Y=-163}

11

S. BENSAID 2019/2020 – UMMTO


PROTOCOLE DE DIFFIE-HELLMAN (DH)
 Inventé par Whitfield Diffie et Martin Hellman en 1976

 Objectif de DH: Partage ou échange d’une clé secrète


par l’intermédiaire d’un échange de données publiques.

 Il tire sa sécurité du problème du Logarithme Discret


 A=BX mod C

12

S. BENSAID 2019/2020 – UMMTO


PROTOCOLE DE DIFFIE-HELLMAN (DH)
• Deux participants A et B choisissent, publiquement, un nombre premier p et
une base g (un entier plus petit que p).
p et g sont les paramètres de Diffie-Hellman.

• Chaque participant génère confidentiellement sa clé privée :


A génère XA tel que : XA <p
B génère XB tel que : XB<p

• Chaque participant calcule alors une clé publique :


A calcule : YA = gXA mod p
B calcule : YB = gXB mod p.

• Les deux participants s’échangent leurs clés publiques.

• Chaque participant calcule la clé secrète K


A calcule : K = (YB )XA mod p
B calcule : K = (YA )XB mod p
13

La clé K constitue le secret partagé entre les deux participants


S. BENSAID 2019/2020 – UMMTO
PROTOCOLE DE DIFFIE-HELLMAN

 A et B partagent deux paramètres (p, g)


 Clé privée de A  XA

 Clé privée de B  XB

 Clé publique de A  YA

 Clé publique de B  YB
YA
YA = gXA mod p A YB B YB = gXB mod p

K = (YB )XA mod p = gXA * XB mod p = K = (YA )XB mod p 14

S. BENSAID 2019/2020 – UMMTO


CHIFFREMENT DE RSA
 Inventé par Ronald Rivest, Adi Shamir et Leonard Adleman en 1977
 RSA tire sa sécurité du problème de factorisation

 Génération des clés :


 Choisir deux grands nombres premiers p et q (p≠q)
 Calculer n=p×q
 Calculer φ(n)=(p−1)×(q−1)
 Choisir e tels que : 1<e < φ(n) et pgcd(e, φ(n))=1
 Calculer d tel que : e×d mod φ(n)=1 (1<d < φ(n))
 Clé publique  (e, n)
 Clé privée  (d, n)

 Chiffrement : C=Me mod n tel que M<n


M : texte clair C : texte chiffré

 Déchiffrement : M=Cd mod n 15

S. BENSAID 2019/2020 – UMMTO


CHIFFREMENT DE RSA
 Exercice : p = 17, q = 11, e = 7, M = 88
Génération des clés :
 n = p×q = 17 × 11 = 187
 φ(n) = (p−1)×(q−1) =(17 − 1) × (11 − 1) = 160
 On vérifie que :
1<e < φ(n) et le pgcd (7,160)=1 160 23 +
22 7 1 -
 7 × d mod 160 = 1  d = 23
1 8 1 +
 Clé publique  (e, n)=(7,187)
 Clé privée  (d, n) = (23,187)
1 0 -

Chiffrement : C = 887 mod 187 = 11 (M<n)


Déchiffrement : M= 1123 mod 187 = 88
16

S. BENSAID 2019/2020 – UMMTO


CHIFFREMENT D’ELGAMAL

 Inventé par Taher Elgamal en 1984


 Il tire sa sécurité du problème du Logarithme Discret.
 Chiffrement d’Elgamal :
 Génération des clés :
 Choisir un grand nombre premier p et deux nombres a et g tels que:
• a <p

• g < p

 Calculer A=ga mod p

 Clé publique  (A, g, p)

 Clé privée  a

 Chiffrement : M<p
 Choisir un nombre aléatoire b (b < p et pgcd(b, p-1)=1)
 Calculer B=gb mod p

 Calculer C=M×Ab mod p

 Le chiffré du message  (B, C)


17
 Déchiffrement  M=(C×B ( p−a−1) ) mod p
S. BENSAID 2019/2020 – UMMTO
FONCTION DE HACHAGE H

 h=H(M) : h est appelé le haché


 La valeur de h est de longueur fixe et inférieure à M

 A partir de h, il est impossible de retrouver M

 Il est difficile de trouver M’ tel que H(M’)=h

 Exemples : MD4, MD5, SHA-1, RIPEMD-160

18

S. BENSAID 2019/2020 – UMMTO


SIGNATURE NUMÉRIQUE

PuA : Clé publique de A


PrA : Clé privé de A
A B

M
Hachage
Hachage ?
h1 = h2
h PuA
Chiffrement Déchiffrement
PrA
On peut ainsi s’assurer de l’origine du 19
S message M et en authentifier l’émetteur A
S. BENSAID 2019/2020 – UMMTO
 SIGNATURE NUMÉRIQUE AVEC RSA

 Paire de clés de l’expéditeur {(e, n), (d, n)}


 Expéditeur  Génération de la signature de M
 Calculer h=H(M)
 Calculer S=hd mod n
 La signature numérique  (M, S)

 Destinataire  Vérification de la signature


 Calculer h1=H(M)
 Calculer h2=Se mod n
 Si h1=h2  la signature est valide

20

S. BENSAID 2019/2020 – UMMTO


 SIGNATURE NUMÉRIQUE AVEC ELGAMAL

 Paire de clés de l’expéditeur {(A, g, p), a}


 Expéditeur  Génération de la signature de M
 Calculer h=H(M)
 Choisir un nombre aléatoire b (b<p et pgcd(b, p–1)=1)
 Calculer B=gb mod p
 Calculer C tel que h=(a×B+b×C) mod (p−1)
 La signature numérique  (M, S) tel que S=(B, C)
 Destinataire  Vérification de la signature
 Calculer h=H(M)
 Si (AB×BC )mod p=gh mod p  la signature est valide

21

S. BENSAID 2019/2020 – UMMTO


LES CERTIFICATS NUMÉRIQUES

 Liaison d’une entité à sa clé publique

REQ
A B, KI
I B
 « A » envoie à « B » une requête pour avoir sa clé publique
 « I » interrompt la requête
 « I » répond à « A » avec (B, KI) en se faisant passer pour « B »
 Comment « A » peut vérifier la validité de cette liaison ?
 Certificat d’identité
Un certificat d’identité est un document électronique signé
par une Autorité de Certification (AC) permettant de lier 22
une entité à sa clé publique
S. BENSAID 2019/2020 – UMMTO
LES CERTIFICATS NUMÉRIQUES

 Structure d’un certificat standard X.509 :

 Version du standard
 Numéro de série du certificat
 Fonction de hachage utilisée
 Algorithme de signature utilisé

Certificat
M
 L’identité du signataire
 Période de validité du certificat
 L’identité de l’utilisateur
 La clé publique de l’utilisateur
 Signature de l’autorité de confiance

S
23

S. BENSAID 2019/2020 – UMMTO


LES CERTIFICATS NUMÉRIQUES

Certificat d’attribut
 Le certificat d’attribut permet d'attribuer des permissions
à une entité.
 Un certificat d'attribut contient un ensemble d’attributs
qui donnent des informations sur les privilèges du
possesseur du certificat

 Exemple : Modèle de certification hiérarchique


L’autorité de certification racine délivre un certificat
d’attribut qui garantit la délégation du service de
certification à une ou plusieurs d’autres autorité, qui elles
mêmes délivrent à leur tours des certificats à d’autres, et
ainsi de suite. 24

S. BENSAID 2019/2020 – UMMTO


EXEMPLE : MODÈLE DE CERTIFICATION HIÉRARCHIQUE
 Quels sont les certificats nécessaires à vérifier pour que
l’utilisateur X puisse vérifier la clé publique de Y ?

 X=4 & Y=3 1


C3 C0 C2 C4
{ C1} C1
2 4
 X=3 & Y=5 C5 3
C7 C8 C6
{C0, C3, C5}
5 6 7
 X=7 & Y=8 C9
{C0, C3, C7, C8, C9}
8 25

S. BENSAID 2019/2020 – UMMTO


AUTORITÉS DE CERTIFICATION ET PKI
PKI (Public Key Infrastructure): Une Infrastructure à clé
publique est l'ensemble des algorithmes, protocoles et services
pour gérer et sécuriser les échanges d'information.

 La procédure de certification se fait principalement en trois


étapes :
1. L’utilisateur s’enregistre auprès de l’autorité
d’enregistrement en donnant des justifications concrètes
vis-à-vis de son identité.
2. L’autorité d’enregistrement génère la paire de clés de
l’utilisateur et envoie une requête de certification à
l’autorité de certification.
3. L’autorité de certification génère un certificat pour
l’utilisateur et publie ce dernier sur l’annuaire. 26

S. BENSAID 2019/2020 – UMMTO


AUTORITÉS DE CERTIFICATION ET PKI

 Le PKI fournit trois services principaux :


1. La génération et la mise à jour des paires de clés.

2. La certification des clés publiques et la publication des certificats


dans un annuaire pour les rendre accessible.

3. La révocation des certificats: un certificat peut être révoqué dans


les cas suivants:
 L’expiration de la période de validité (Révocation automatique)
 La divulgation de la clé privée de l’utilisateur (Sur demande).
 L’utilisateur n’est plus considéré digne de confiance (Par rapport à
son comportement) 27

S. BENSAID 2019/2020 – UMMTO


RÉFÉRENCE
 Solange Ghernaouti, « Cours et exercices Sécurité informatique et réseaux,
Cours avec plus de 100 exercices corrigés ». [Référence biblio : Res 260]

 OMAR Mawloud, Notes de cours du module sécurité


informatique, 3eme année licence informatique, Université de
Bejaia.

28

S. BENSAID 2019/2020 – UMMTO