Vous êtes sur la page 1sur 22

Master I

ISI

Cryptologie Avancer
M. Ahmed Khalifa

Protocole Cryptographique

1 / 22
Sommaire

1 Protocole Cryptographique
Introduction
Objectifs de la sécurité
Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

2 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Introduction

3 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocole d’authentification
Protocole d’authentification
⇒ Protocole d’authentification : Un protocole cryptographique est
un ensemble de règles d’échange entre les points d’un réseau, basé
sur les crypto-systèmes qui permettent de sécuriser les
communications dans un environnement hostile.

Anonymat
⇒ Anonymat : Un protocole cryptographique préserve l’anonymat
du participant s jouant le rôle A si le protocole ou s joue le rôle A
est, pour l’environnement, indistinguable du protocole ou s ? joue
le rôle A (Équivalence conversationnelle)

Anonymat
⇒ Équité : Un protocole est équitable pour A si B n’a pas de
stratégie gagnante pour obtenir le contrat signé par A à moins que
A en ait une pour obtenir le contrat signé par B (Théorie des jeux)
4 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Introduction

Introduction
Soient :
m ;m1 ;m2 des messages
K une clé
A et B des agents
On Note
m1 ,m2 le message constitué de m1 et m2
{m}K le message m chiffré avec K
A −→ B : m l’envoi par A d’un message m à B.
I (A) −→ B : m l’envoi d’un message m par I se faisant passer pour
A

5 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Domaines d’applications des protocoles cryptographiques


Quelques applications :
Communication secrété (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats électroniques
Paiement bancaire par carte à puce
Paiement bancaire en ligne (transactions électroniques)
Paiement bancaire hors ligne (monnaie électronique)
Chaines de télévision payantes
Vote électronique
...

6 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Objectifs de la sécurité

Objectifs de la sécurité
Soient :
Confidentialité L’information ne peut être connue que par les
personnes autorisées
Disponibilité L’information doit être utilisable à la demande

l’information ne doit pas être divulguée à toute personne, entité ou


processus non autorisé. En clair, cela signée que l’information n’est
consultable que par ceux qui ont le droit d’y accéder
l’information doit être rendue accessible et utilisable sur demande
par une entité autorisée. Cela veut dire que l’information doit être
disponible dans des conditions convenues à l’avance.

7 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Soient :
Intégrité : L’information ne doit pas être altérée ou détruite par
accident ou malveillance
Non répudiation : L’absence de possibilité de contestation d’une
action une fois celle-ci est effectuée
Traçabilité :garantie que les accès et tentatives d’accès aux
éléments considérés sont tracés et que ces traces sont conservées et
exploitables.

8 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Objectifs de la Sécurité

Objectifs de la Sécurité
Authentification vérifier l’identité des personnes qui veulent
manipuler l’information On distingue couramment :
Authentification de message :Un protocole permet à un agent A
d’authentifier un message m si A peut connaitre de façon sure
l’émetteur de m.
Authentification d’entité :Un protocole permet à un agent A
d’authentifier un agent B si à la fin d’une session réussie, A a la
garantie qu’il a bien réalisée le protocole avec B.
Non répudiation : Assure que l’auteur d’un acte ne peut ensuite
dénier l’avoir effectuer. On distingue couramment :
Non-répudiation d’origine : l’émetteur d’un ordre ou d’un message
ne peut nier l’émission
Non-répudiation de réception : le récepteur d’un ordre ou d’un
message ne peut l’avoir reçu. Accusé de réception” de La Poste

9 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Principes de base des protocoles


Principes de base des protocoles
Envoi d’un secret de B à A :
Premier essai
B −→ A : {S}KA
si la clé KA et KA sont robustes, seul A peut lire S.
Mais de qui vient le secret S ?
Deuxième essai avec tentative d’authentification
B −→ A : {b, S}KA Facile à détourner par un intrus :
I (B) −→ A : {b; SI }KA SI est connu de I et accepté par A comme
venant de B !
Troisième essai authentification par signature
B −→ A : {b; S; {S}KB −1 }KA
Remarque : solution avec des clés symétriques (canal chiffré)
B −→ A : {b; S}KAB si KAB partagée par A et B
Propriétés attendues :
s secret
A authentifie s comme étant émis par B 10 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Attaque sur le protocole de Mise en place d’une clé


de session

Attaque sur le protocole de Mise en place d’une clé de session


L’attaque Man-in-the-Middle :

11 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Quatrième essai secret, authentification et fraicheur : On utilise


un nombre aléatoire frais : un nonce NA
A −→ B : {A; B; NA }KB Challenge de A pour B
B −→ A : {A; B; NA; S}KA réponse de B au Challenge
Propriétés attendues :
S secret
NA frais et donc {A; B; NA ; S}KA frais
A authentifie S comme étant émis par B
A authentifie B lors de la session.

12 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocole d’échange des clés


Solution similaire avec des clés symétriques :
A −→ B : {A; B; NA }KAB Challenge de A pour B
B −→ A : {A; B; NA ; S}KAB réponse de B au Challenge

Qu’il s’agisse de clés symétriques KAB ou asymétriques KA ; KB : un


échange de clés préalable est nécessaire !

13 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés


Échange d’une clé symétrique avec un tiers de confiance S
Extrait de Needham-Schroeder Symmetric Key Protocol
A −→ B : A; B; NA
S −→ A : {KAB ; B; NA ; {A; KAB }KBS }KAS
A −→ B : {A; KAB }KBS
Propriétés attendues :
secret de KAB , partagé entre S, A et B
fraicheur de KAB pour A mais pas pour B
authentification des messages émis par S pour A et B
A authentifie S

14 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’échange de clés


Échange d’une clé asymétrique avec un tiers de confiance S
Extrait de Needham-Schroeder Symmetric Key Protocol
A −→ S : A; B
S −→ A : {B; KA }KS −1
S −→ B : {; A; KB }KS −1
Propriétés attendues :
authentification des clé publiques KA et KB
mais
pas de secret ( pas nécessaire)
pas de fraicheur

15 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’échange de clés


Négociation d’une clé symétrique sans un tiers de confiance Protocole
Difie-Hellman : utilisé dans SSH mode déradé
Entiers p et g publics et g générateur de Zp ∗
A Choisit un secret x ∈ Z et B choisit un secret y ∈ Z
A −→ B : X = g x
B −→ A : Y = g y
A calcule Y x modp et B calcule X y modp
donc KAB = Y x modp = X y modp

16 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’échange de clés


Négociation d’une clé symétrique sans un tiers de confiance Protocole
Difie-Hellman :
l’échange
A −→ B : X = g x
B −→ A : Y = g y
donc KAB = Y x modp = X y modp
Propriétés attendues :
secret de KAB , partagé entre A et B
fraicheur de KAB
mais
pas de authentification des entités !
pas de réelle authentification de KAB par A et B

17 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’authentification : Login UNIX


Hypothèses :
A connait P (son mot de passe)
M connait A et hash(P) dans /etc/passwd
Procédure
M −→ A : login :
A −→ M : A
M −→ A : passwd :
A −→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd

commentaire de sécurité
suppose que la communication de A vers M est sure
Sinon, propriétés attendues (telnet) : aucune !

18 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’authentification : Login SSH (1)


Hypothèses :
A connait P (son mot de passe)
M connait A et hash(P) dans /etc/passwd
Procédure
M −→ A : KM
A −→ M : {KAM }KM
M −→ A : {login}KAM
A −→ M : {A}KAM
M −→ A : {passwd}KAM
A −→ M : {P}KAM
Propriétés attendues :
KAM ; A; P secrets partagés entre A et M
M authentifie A, mais A n’authentifie pas M .

19 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’échange de clés

Protocoles d’authentification : Login SSH (2)


Protocoles d’authentification : Login SSH (2)
Hypothèses :
A a déposé au préalable sa clé publique KA sur M
M connait A et hash(P) dans /etc/passwd
Procédure
M −→ A : KM
A −→ M : {KAM }KM
M −→ A : {{NM }KA }KAM
A −→ M : {NM }KAM
Propriétés attendues :
KAM secrets partagés entre A et M
M authentifie A, mais A n’authentifie pas M .

20 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’authentification : SSL/TLS (https)

Protocoles d’authentification :SSL/TLS (https)


Protocoles d’authentification :SSL/TLS (https)
Hypothèses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confiance On parle aussi de
Certification Authority CA
V(endor) connait {V ; KV }KS −1 certificat acheté à S par V et
renouvelé tous les ans !
V connait A et P
V −→ B : {V ; KV }KS −1
B −→ V : {KBV }KV
V −→ B : {login}KBV
B −→ V : {A}KBV
V −→ B : {passwd}KBV
B −→ V : {P}KBV

21 / 22
Introduction
Objectifs de la sécurité
Protocole Cryptographique Principes de base des protocoles
Attaque sur le protocole de Mise en place d’une clé de session
Protocoles d’échange de clés

Protocoles d’authentification : SSL/TLS (https)

Protocoles d’authentification :SSL/TLS (https)


Protocoles d’authentification :SSL/TLS (https)
Propriétés attendues :
KBV ; A; p secrets partagés entre B et V
B authentifie {V ; KV }Ks −1 comme construit par S,
V authentifie A , B authentifie V en faisant confiance à S .

22 / 22

Vous aimerez peut-être aussi