Vous êtes sur la page 1sur 120

Introduction

Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les protocoles cryptographiques

Ecole des Mines, 3e anne


e

1/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Internet

- condentialit
e
- anonymat
- authentication
(sagit-il bien
de ma banque ?)

2/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

3/79

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Signature lectronique
e

- vriable
e
- authentique
- non-rpudiation (je nai jamais
e
sign ce texte...)
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vote lectronique
e

Le rsultat re`te les votes


e
e
Chaque vote est condentiel
On ne peut pas conna des rsultats partiels
tre
e
Seuls les lecteurs peuvent voter et une seule fois
e

4/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

5/79

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Paiement par carte bleue

Est-ce quil sagit dune vraie carte ?


Est-ce que le montant dbit sera gal au montant crdit ?
e e
e
e e
Est-ce que le code secret est bien protg ?
e e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Dcodeurs
e

Vrication de labonn
e
e
Impossibilit de retransmettre les donnes dcodes ` une
e
e
e e a
tierce personne
Mise ` jour de labonnement
a
6/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

7/79

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Porte-monnaie lectronique
e

Pas de cration de fausse monnaie


e
Pas de cration de faux porte-monnaie
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

8/79

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Bases de donnes scurises


e
e
e

Patients
Dupond
Dupont
Durand

Maladies
rougeole
oreillons
scarlatine

Traitements
...
...
...

Seules les personnes habilites ont acc`s ` la vue partielle `


e
e a
a
laquelle elles ont droit.
Les donnes peuvent tre changes entre un mdecin, un
e
e e
e
e
laboratoire, un hpital.
o
Mise ` jour possible des donnes.
a
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Deux cours

I Comment fonctionnent les protocoles cryptographiques ?


Aujourdhui
II Introduction ` la cryptographie
a
Jeudi 7 dcembre
e

9/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Plan du 1er cours

10/79

Terminologie
Les proprits de scurit
ee
e
e
Les attaques typiques
Les primitives cryptographiques
Exemples dattaques
Quelques attaques logiques
Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack
Exemples de protocoles
Protocoles de signatures de contrat
Protocoles zero-knowledge
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Les proprits de scurit


ee
e
e

Les proprits de scurit


ee
e
e

11/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Authentication

12/79

Denition (authentication)
Capacit ` reconna de faon sre lidentit dune entit.
ea
tre
c
u
e
e
Entits possibles :
e
personne physique ou morale (individu ou socit)
ee
ordinateur ou groupe dordinateurs (correspondant ` une
a
adresse IP par exemple)
entit informatique (serveur par exemple)
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Condentialit
e
Denition (Condentialit)
e
Une information ne peut tre connue que par les entits habilites
e
e
e
Exemples :
chier sensible
dossier mdical
e
mot de passe, code secret
clefs prives
e

13/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Anonymat

14/79

Denition (Anonymat)
Non identication de lidentit
e
Exemples :
tlphone portable
ee
visite de site web
appartenance ` un groupe
a

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Non-rpudiation
e

15/79

Denition (Non-rpudiation)
e
Assure que lauteur dun acte ne peut ensuite dnier lavoir
e
eectuer.
On distingue couramment :
Non-rpudiation dorigine : lmetteur dun ordre ou dun
e
e
message ne peut nier lmission
e
Non-rpudiation de rception : le rcepteur dun ordre ou dun
e
e
e
message ne peut lavoir reu.
c
Accus de rception de La Poste
e
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Intgrit
e e

16/79

Denition (Intgrit)
e e
Assure quune information ne peut tre modie, sauf par des
e
e
entits habilites (selon une politique de scurit par exemple)
e
e
e
e
Exemples :
ordre de virement
Il ne faut pas pouvoir modier le montant
Protection contre les virus informatiques : le code binaire des
programme ne doit pas pouvoir tre altr.
e
ee

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Les attaques typiques

Les attaques typiques

17/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Dguisement - Mascarade
e
Denition (Dguisement - Mascarade)
e
Attaque contre une proprit dauthentication.
ee
Consiste ` usurper lidentit dun sujet ou dobjet pour acqurir
a
e
e
des droits illicites.
Exemples :
cartes bancaires
passage root
acc`s aux comptes informatiques de profs
e

18/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Rejeu (replay attacks)

Denition (Rejeu)
Consiste ` rpter une squence dactions sans la modier ou
a e e
e
renvoyer des messages dj` mis.
eae
Exemples :
Relancer plusieurs fois le mme ordre de crdit.
e
e
Renvoyer le mot de passe chir utilis par Alice pour
e
e
sauthentier aupr`s dun serveur.
e

19/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Attaques visant la condentialit des donnes


e
e
Acc`s ` des chiers sensibles ` laide dune authentication
e a
a
frauduleuse.

20/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Attaques visant la condentialit des donnes


e
e
Acc`s ` des chiers sensibles ` laide dune authentication
e a
a
frauduleuse.
Prsence de Canaux cachs :
e
e
Fichier A (condentiel) oui/non
Fichier B (public)
oui/non
Si A = B print Ouf sinon print Dommage.

20/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Attaques visant la condentialit des donnes


e
e

20/79

Acc`s ` des chiers sensibles ` laide dune authentication


e a
a
frauduleuse.
Prsence de Canaux cachs :
e
e
Fichier A (condentiel) oui/non
Fichier B (public)
oui/non
Si A = B print Ouf sinon print Dommage.
Attaques par induction par croisement de sources
dinformations.
Exemple :
interrogation dune base de donnes pidmiologique (non
e e e
nominative)
informations disponibles sur le web
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Dni de service
e
Denition (Dni de service)
e
Attaque visant ` nuire au fonctionnement correct, en terme de
a
fonctionnalit ou de performances.
e
Objectifs
nuire ` une institution (site web du Trsor Public, dune
a
e
grande compagnie, ...)
Faire tomber un premier rideau de dfense pour lancer une
e
autre attaque

21/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Les primitives cryptographiques

Les primitives cryptographiques

22/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Chirement symtrique
e

23/79

Notation : {m}k

clef
Bonjour
Alice

Chirement

clef
Obawbhe
Nyvpr

Dchirement
e

Bonjour
Alice

On utilise la mme clef pour chirer et dchirer.


e
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Avantages et inconvnients
e

24/79

Chirement ecace
permet de chirer tr`s rapidement des messages de tailles
e
importantes
Il faut partager une clef secr`te entre deux clients
e
Utilisation dun serveur de conance
Recours ` des protocoles dtablissement de clefs
a
e

Exemples : DES, triple DES, AES, ...

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Chirement asymtrique
e

25/79

Clef asymtrique : pk(A)


e
Notation : {m}pk(A)
clef
publique
Bonjour
Alice

Chirement

clef
prive
e
Obawbhe
Nyvpr

Dchirement
e

Bonjour
Alice

On chire avec la clef publique et on dchire avec la clef prive.


e
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Avantages et inconvnients
e
Chirement long et coteux
u
Une carte ` puce permettant le chirement ` clef publique
a
a
cote environ 15 euros
u
Ne permet pas de chirer des gros messages

Ne demande pas de connaissance prlable entre les deux


e
clients.
` la base de nombreux protocoles dtablissement de clefs
a
e
Il faut authentier les clefs publiques
Exemples : RSA, El Gamal, OAEP+
26/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Pourquoi faut-il authentier les clefs publiques ?


Alice souhaite envoyer ` Bob un secret. Ils ne partagent pas de
a
clefs secr`tes.
e
Alice utilise la clef publique de Bob pk(B).
A B : {Secret}pk(B)

27/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Pourquoi faut-il authentier les clefs publiques ?

27/79

Alice souhaite envoyer ` Bob un secret. Ils ne partagent pas de


a
clefs secr`tes.
e
Alice utilise la clef publique de Bob pk(B).
A B : {Secret}pk(B)
Mais comment Alice a-t-elle obtenu pk(B) ?
Si Charlie fait croire ` Alice que la clef publique de Bob est pk(B)
a
(clef publique de Charlie !), alors Alice envoie
A B : {Secret}pk(C )
Charlie dcrypte le message et apprend le secret !
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Pourquoi faut-il authentier les clefs publiques ?


Alice souhaite envoyer ` Bob un secret. Ils ne partagent pas de
a
clefs secr`tes.
e
Alice utilise la clef publique de Bob pk(B).
A B : {Secret}pk(B)
Mais comment Alice a-t-elle obtenu pk(B) ?
Si Charlie fait croire ` Alice que la clef publique de Bob est pk(B)
a
(clef publique de Charlie !), alors Alice envoie
A B : {Secret}pk(C )
Charlie dcrypte le message et apprend le secret !
e
Utilisation dune autorit de certication qui certie la
e
provenance de la clef ` laide dune signature.
a
[Bob, pk(B), priode de validit]skAuth
e
e
27/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Signature
Principe inverse du chirement ` clef publique.
a
Tout le monde conna la clef de vrication vk(A).
t
e
La clef de signature sk(A) est secr`te.
e
Notation : [m]sk(A)

clef
prive
e
Bonjour
Alice

28/79

Signature

clef
publique
Obawbhe
Nyvpr

Vronique Cortier
e

Vrication
e

Bonjour
Alice

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des signatures


ee

29/79

Authentication et non rpudiation


e
La signature ne peut tre imite. Elle authentie le signataire.
e
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des signatures


ee

29/79

Authentication et non rpudiation


e
La signature ne peut tre imite. Elle authentie le signataire.
e
e
La signature appartient ` un seul document.
a
on ne peut pas dcouper une signature sur un document et
e
la recoller sur un autre.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des signatures


ee
Authentication et non rpudiation
e
La signature ne peut tre imite. Elle authentie le signataire.
e
e
La signature appartient ` un seul document.
a
on ne peut pas dcouper une signature sur un document et
e
la recoller sur un autre.
Le document sign ne peut tre modi, mme partiellement.
e
e
e e

29/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des signatures


ee

29/79

Authentication et non rpudiation


e
La signature ne peut tre imite. Elle authentie le signataire.
e
e
La signature appartient ` un seul document.
a
on ne peut pas dcouper une signature sur un document et
e
la recoller sur un autre.
Le document sign ne peut tre modi, mme partiellement.
e
e
e e
La signature peut tre contrle par un tiers.
e
oe

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des signatures


ee

29/79

Authentication et non rpudiation


e
La signature ne peut tre imite. Elle authentie le signataire.
e
e
La signature appartient ` un seul document.
a
on ne peut pas dcouper une signature sur un document et
e
la recoller sur un autre.
Le document sign ne peut tre modi, mme partiellement.
e
e
e e
La signature peut tre contrle par un tiers.
e
oe
La signature ne peut tre renie.
e
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Fonctions de hachage
Denition (Fonction de hachage)
Fonction qui ` un message M de longueur quelconque, fait
a
correspondre un message h(M) de longueur xe, appel hache,
e
rsum ou empreinte numrique.
e
e
e
h : M h(M)
Applications :

Economie de place (on signe le hache dun message plutt


o
que le message tout entier).
Protection pour lintgrit des messages envoys.
e e
e
La partie redondante dun code correcteur derreur est une
fonction de hachage.
30/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des fonctions de hachage


ee

31/79

Une fonction de hachage nest pas injective puisquelle envoie les


lments dun ensemble dans un ensemble plus petit.
ee
On voudrait cependant quune fonction de hachage soit
calculatoirement injective.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Proprits des fonctions de hachage


ee
Une fonction de hachage nest pas injective puisquelle envoie les
lments dun ensemble dans un ensemble plus petit.
ee
On voudrait cependant quune fonction de hachage soit
calculatoirement injective.
Collision faible dicile
Si le probl`me, tant donn M, de trouver M tel que
e
e
e
h(M) = h(M ), est dicile (au moins super-polynomiale en
fonction du cardinal de lensemble des messages).
Collision forte dicile
Si le probl`me, de trouver M et M tel que h(M) = h(M ), est
e
dicile (au moins super-polynomiale en fonction du cardinal
de lensemble des messages).
31/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Gnration de nombres alatoires


e e
e
Les nombres alatoires sont aussi appels nonces, nots
e
e
e
N, N1 , N2 , ..., Na , Nb , ...
De nombreuses donnes doivent avoir des valeurs
e
imprdictibles.
e
La connaissance dune partie de la suite ne doit pas permettre
de prdire son volution.
e
e
Deux principales sources dalas :
e
Physique (vrais nombres alatoires)
e
Informatique (nombres pseudo alatoires)
e
32/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Sources dalas
e
Source Physique : (nombres alatoires)
e
mesure dun rayonnement gamma
mcanique quantique
e
bruit capteurs numriques (Lava-lamp)
e

33/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Sources dalas
e
Source Physique : (nombres alatoires)
e
mesure dun rayonnement gamma
mcanique quantique
e
bruit capteurs numriques (Lava-lamp)
e
Source Informatique : (nombres pseudo alatoires)
e
Il ny a rien de plus dur que de rendre un ordinateur
non-dterministe !
e
Utilisation de hachage sur des lments variants beaucoup :
ee
nombre de clics souris
heure de dclenchement des derniers programmes
e
dispersion des segments mmoire
e
man rand
33/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Les proprits de scurit


ee
e
e
Les attaques typiques
Les primitives cryptographiques

Plan

34/79

Terminologie
Les proprits de scurit
ee
e
e
Les attaques typiques
Les primitives cryptographiques
Exemples dattaques
Quelques attaques logiques
Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack
Exemples de protocoles
Protocoles de signatures de contrat
Protocoles zero-knowledge
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Quelques attaques logiques

Quelques attaques logiques


Sans mme attaquer les primitives !
e

35/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Echange de secret
On peut utiliser la clef k = 785341006


Mon code bancaire est {3443}785341006

La clef est 785341006


Je dchire...
e
le code secret est 3443

36/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Chirement commutatif (RSA)


{code : 3443}kasterix

37/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Chirement commutatif (RSA)


{code : 3443}kasterix

{code : 3443}kasterix
k

obelix

37/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Chirement commutatif (RSA)


{code : 3443}kasterix

{code : 3443}kasterix
k

obelix

code : 3443}k
{
obelix

Car

37/79

{code : 3443}kasterix

kobelix

= {code : 3443}kobelix

Vronique Cortier
e

kasterix

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Chirement commutatif (RSA)

37/79

{code : 3443}kasterix

{code : 3443}kasterix
k

obelix

code : 3443}k
{
obelix

Ca ne marche pas ! (probl`me dauthentication)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Chirement commutatif (RSA)


{code : 3443}kasterix

{code : 3443}kasterix
k

obelix

code : 3443}k
{
obelix

Ca ne marche pas ! (probl`me dauthentication)

e
{code : 3443}kasterix

{code : 3443}kasterix
kpirate

{code : 3443}kpirate


37/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Attaques sur les dcodeurs


e
Kentucky Fried Chip : bloquer lordre de dsabonnement
e

Renvoi de messages :
n carte, {c1 ,...,ck }Kcs



n carte, {c ,...,c }Kcs

1
k

38/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Lattaque de Serge Humpich sur les CB

Lattaque de Serge Humpich sur les CB

39/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole de paiement par CB

Lacheteur introduit sa carte.


Le commerant saisit le montant m de la transaction sur le
c
terminal.
Le terminal authentie la carte.
Lacheteur donne son code ` la carte.
a
e
Si m dpasse 100 euros (et dans seulement 20% des cas) :
Le terminal demande lauthentication de la carte ` la banque.
a
La banque donne lautorisation.

40/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Plus en dtails
e

41/79

4 acteurs : la Banque, lAcheteur, la Carte et le Terminal.


Banque poss`de
e
une clef de signature sk(B), secr`te,
e
une clef de vrication vk(B), publique,
e
une clef secr`te symtrique pour chaque carte
e
e
bancaire KCB secr`te.
e
Carte poss`de
e
Data : nom, prnom, numro de carte, date de
e
e
validit,
e
Valeur de Signature VS = [hash(Data)]sk(B) ,
clef secr`te symtrique KCB .
e
e
Terminal poss`de la clef de vrication vk(B) des signatures de
e
e
la banque.
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole CB (rsum)
e
e
Le terminal lit la carte :
1. C T : Data, [hash(Data)]sk(B)

42/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole CB (rsum)
e
e
Le terminal lit la carte :
1. C T : Data, [hash(Data)]sk(B)
Le terminal demande le code :
2. T A : code secret?
3. A C : 1234
4. C

42/79

T : ok

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole CB (rsum)
e
e
Le terminal lit la carte :
1. C T : Data, [hash(Data)]sk(B)
Le terminal demande le code :
2. T A : code secret?
3. A C : 1234
4. C T : ok
Le terminal contacte la banque :
5. T B : auth?
6. B T : 7294291330572
7. T

C : 7294291330572

8. C

T : {7294291330572}KCB

9. T

B : {7294291330572}KCB

10. B T : ok
42/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Quelques failles de la carte bancaire


Initialement scurit assure par :
e
e
e
cartes dicilement rplicables,
e
secret des clefs et du protocole.
Mais
faille cryptographique : les clefs de 320 bits ne sont plus sres
u
(1988),
faille logique : pas de lien entre le code secret ` 4 chires et
a
lauthentication,
rplicabilit des cartes.
e
e

43/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Quelques failles de la carte bancaire

43/79

Initialement scurit assure par :


e
e
e
cartes dicilement rplicables,
e
secret des clefs et du protocole.
Mais
faille cryptographique : les clefs de 320 bits ne sont plus sres
u
(1988),
faille logique : pas de lien entre le code secret ` 4 chires et
a
lauthentication,
rplicabilit des cartes.
e
e
YesCard fabriques par Serge Humpich (1998).
e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Principe de la YesCard
Faille logique
1. C
2. T
3. A
4. C

44/79

T
A
C
T

: Data, [hash(Data)]sk(B)
: code secret?
: 1234
: ok

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Principe de la YesCard
Faille logique
1. C T
2. T A
3. A C
4. C T

44/79

: Data, [hash(Data)]sk(B)
: code secret?
: 2345
: ok

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Principe de la YesCard
Faille logique
1. C T
2. T A
3. A C
4. C T

: Data, [hash(Data)]sk(B)
: code secret?
: 2345
: ok

Remarque : il y a toujours quelquun ` dbiter.


a e
ajout dune fausse signature sur une fausse carte (Serge
Humpich).

44/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Principe de la YesCard
Faille logique
1. C T
2. T A
3. A C
4. C T

: Data, [hash(Data)]sk(B)
: code secret?
: 2345
: ok

Remarque : il y a toujours quelquun ` dbiter.


a e
ajout dune fausse signature sur une fausse carte (Serge
Humpich).
1. C T
2. T A
3. A C
4. C T
44/79

: XXX, [hash(XXX)]sk(B)
: code secret?
: 0000
: ok

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Man-in-the-middle attack

45/79

Lattaque de ( lhomme au milieu ) sur le


(
)
protocole de Needham-Schroeder ` clefs
a
publiques

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole Needham-Schroeder ` clefs publiques


a
Na Nonce frais de A.
Nb Nonce frais de B.

46/79

A
B
A

B :
A:
B :

A, {Na }pub(B)
{Na , Nb }pub(A)
{Nb }pub(B)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole Needham-Schroeder ` clefs publiques


a
Na Nonce frais de A.
Nb Nonce frais de B.

46/79

A
B
A

B : A, {Na }pub(B)
A : {Na , Nb }pub(A)
B :
{Nb }pub(B)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole Needham-Schroeder ` clefs publiques


a
Na Nonce frais de A.
Nb Nonce frais de B.

46/79

A
B
A

B : A, {Na }pub(B)
A : {Na , Nb }pub(A)
B :
{Nb }pub(B)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole Needham-Schroeder ` clefs publiques


a

46/79

Na Nonce frais de A.
Nb Nonce frais de B.

A
B
A

B : A, {Na }pub(B)
A : {Na , Nb }pub(A)
B:
{Nb }pub(B)

Questions :
Est-ce que Nb est secret entre A et B ?
Lorsque B reoit {Nb }pub(B) , est-ce que ce message provient
c
rellement de A ?
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Protocole Needham-Schroeder ` clefs publiques


a
Na Nonce frais de A.
Nb Nonce frais de B.

A
B
A

B : A, {Na }pub(B)
A : {Na , Nb }pub(A)
B:
{Nb }pub(B)

Questions :
Est-ce que Nb est secret entre A et B ?
Lorsque B reoit {Nb }pub(B) , est-ce que ce message provient
c
rellement de A ?
e
Une attaque fut trouve en 1996, 17 ans apr`s la premi`re
e
e
e
publication du protocole !
46/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Man in the middle attack

{A,Na }pub(P)

47/79

Vronique Cortier
e

{A,Na }pub(B)

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Man in the middle attack

{A,Na }pub(P)

Na ,Nb }pub(A)

47/79

Vronique Cortier
e

{A,Na }pub(B)

Na ,Nb }pub(A)

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Man in the middle attack

{A,Na }pub(P)

Na ,Nb }pub(A)

{Nb }pub(P)

47/79

Vronique Cortier
e

{A,Na }pub(B)

Na ,Nb }pub(A)

{Nb }pub(B)

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Man in the middle attack

47/79

{A,Na }pub(P)

{B,Na ,Nb }pub(A)

{Nb }pub(P)

{A,Na }pub(B)

{B,Na ,Nb }pub(A)

{Nb }pub(B)

Correction : ajouter lidentit de B.


e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Quelques attaques logiques


Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack

Plan

48/79

Terminologie
Les proprits de scurit
ee
e
e
Les attaques typiques
Les primitives cryptographiques
Exemples dattaques
Quelques attaques logiques
Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack
Exemples de protocoles
Protocoles de signatures de contrat
Protocoles zero-knowledge
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Protocoles de signatures de contrat

Protocoles de signatures de contrat

49/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Principe

50/79

Deux personnes (Alice et Bob) souhaitent signer un contrat. (vente


dun service, dun objet, ...)
Ancienne solution : Alice et Bob signent simultanment,
e
autour dune mme table, le contrat.
e
Solution lectronique : Chacun appose sa signature
e
lectronique sur le contrat.
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Principe

50/79

Deux personnes (Alice et Bob) souhaitent signer un contrat. (vente


dun service, dun objet, ...)
Ancienne solution : Alice et Bob signent simultanment,
e
autour dune mme table, le contrat.
e
Solution lectronique : Chacun appose sa signature
e
lectronique sur le contrat.
e
Probl`mes
e

Equit (Fairness) Il ne faut pas que Bob puisse obtenir le


e
contrat sign par Alice sans que Bob signe le contrat.
e
Abus de conance (Abuse-freeness) Il ne faut pas que Bob
puisse tirer avantage de lore faite par Alice pour en obtenir
une autre ailleurs.
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Protocoles de signature optimistes


Recours ` un tiers de conance (arbitre) uniquement en cas de
a
probl`me.
e
Deux principaux protocoles :
Asokan - Shoup - Waidner
Garay - Jakobsson - MacKenzie

51/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Protocoles de signature optimistes


Recours ` un tiers de conance (arbitre) uniquement en cas de
a
probl`me.
e
Deux principaux protocoles :
Asokan - Shoup - Waidner
Garay - Jakobsson - MacKenzie
Dans les grandes lignes :
AB :
BA:
AB :
BA:
51/79

[Promesse
[Promesse
[Signature
[Signature

de
de
de
de

signature de Text]sk(A)
signature de Text]sk(B)
Text]sk(A)
Text]sk(B)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

En cas de probl`me
e
AB :
BA:
AB :
BA:

[Promesse
[Promesse
[Signature
[Signature

de
de
de
de

signature de Text]sk(A)
signature de Text]sk(B)
Text]sk(A)
Text]sk(B)

Si A ne reoit pas la promesse de B


c
A TTP : Abort
Si A ne reoit pas la signature de B
c
A TTP : Resolve, [Promesse de signature de Text]sk(B) ,
[Signature de Text]sk(A)
TTP A : [Signature de Text]sk(TTP)
52/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Protocoles zero-knowledge

Protocoles zero-knowledge

53/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Principe

But : trouver Charlie dans une


grande image

54/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Mais o` est Charlie ?


u

55/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Comment jouer ?

Comment prouver quon a trouv


e
Charlie sans rvler o` il est ?
e e
u

Deux solutions possibles :

56/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Comment jouer ?

Comment prouver quon a trouv


e
Charlie sans rvler o` il est ?
e e
u

Deux solutions possibles :


photocopier et dcouper,
e

56/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Comment jouer ?

Comment prouver quon a trouv


e
Charlie sans rvler o` il est ?
e e
u

Deux solutions possibles :


photocopier et dcouper,
e
mettre un grand cache avec un trou de la forme de Charlie.

56/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Applications

57/79

Authentication
Paiement par CB (pour prouver quon conna le code
t
condentiel sans le rvler).
e e
Prouver son identit / appartenance ` un groupe.
e
a
...

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

La caverne dAli Baba

58/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

La caverne dAli Baba - suite


Ali Baba veut convaincre Bob quil conna le secret.
t

Ali Baba se cache dans la grotte.


Bob demande ` Ali Baba de sortir ` gauche
a
a
ou ` droite (il choisit).
a
Ali Baba sort du ct demand.
oe
e

59/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

La caverne dAli Baba - suite

60/79

Toute personne peut tre convaincue quAli Baba conna la


e
t
formule magique.
sans rien apprendre du secret,
sans pouvoir faire croire ` son tour quil conna la formule
a
t
magique.
Pb : sujet ventuellement aux attaques man-in-the-middle.
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Attaque de ( lhomme au milieu )


(
)
Je connais le secret

Charlie veut convaincre Bob quil conna le secret.


t
Charlie demande ` Ali Baba de le convaincre quil
a
conna le secret !
t

61/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Attaque de ( lhomme au milieu )


(
)
Je connais le secret

Charlie veut convaincre Bob quil conna le secret.


t
Charlie demande ` Ali Baba de le convaincre quil
a
conna le secret !
t

gauche/droite

gagn
e

gagn
e

61/79

gauche/droite

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Protocoles de signatures de contrat


Protocoles zero-knowledge

Plan

62/79

Terminologie
Les proprits de scurit
ee
e
e
Les attaques typiques
Les primitives cryptographiques
Exemples dattaques
Quelques attaques logiques
Lattaque de Serge Humpich sur les CB
Man-in-the-middle attack
Exemples de protocoles
Protocoles de signatures de contrat
Protocoles zero-knowledge
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Analyse des protocoles cryptographiques

63/79

Lanalyse de logiciels critiques en gnral.


e e
Le cas des protocoles cryptographiques.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Fuse Ariane 5
e

11 dcembre 2002 :
e
vol inaugural

Un crash d ... ` un bug logiciel !


u a

64/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Sonde Mars Climate Orbiter

26 septembre 1999 : perte de la sonde due ...


... ` une erreur de conversion !
a
65/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Comment fait-on ?

Tests
` la main ou gnration automatique
a
e e
vrication dun nombre ni de comportements
e

66/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Comment fait-on ?

66/79

Tests
` la main ou gnration automatique
a
e e
vrication dun nombre ni de comportements
e

Vrication (preuve formelle)


e
` la main ou ` laide dordinateur
a
a
vrication de tous les comportements possibles
e
plus dicile

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Airbus A380

500 000 lignes de code, plus gros programme jamais vri


e e
(Le Monde 26 avril 2005)
67/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

La vrication formelle
e
Code

68/79

Mod`le
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Application aux protocoles cryptographiques


Le chirement est une bo noire : { }
te

Bonjour
Alice

69/79

clef
Chirement

Obawbhe
Nyvpr

Vronique Cortier
e

clef
Dchirement
e

Bonjour
Alice

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Application aux protocoles cryptographiques

69/79

Le chirement est une bo noire : { }


te

Bonjour
Alice

clef
Chirement

Obawbhe
Nyvpr

clef
Dchirement
e

Bonjour
Alice

On suppose que le chirement est parfait :


On ne peut rien apprendre de {m}k ` moins de conna k.
a
tre

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Dicults de la vrication
e
e

70/79

Intrus
intercepte les messages,
analyse et cre de nouveaux messages,
e
envoie des messages,
a une mmoire arbitraire.
e

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Dicults de la vrication
e
e

70/79

Intrus
intercepte les messages,
analyse et cre de nouveaux messages,
e
envoie des messages,
a une mmoire arbitraire.
e
Protocole
nombre arbitraire de participants,
nombre arbitraire de sessions,
taille arbitraire des messages.
Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Modlisation (1)
e
On utilise des termes et des formules logiques.
Messages termes abstraits
Agents : a, b, . . .
Chir : {m}k
e

71/79

Nonces : n1 , n2 , . . .
Paire : < m1 , m2 >

Vronique Cortier
e

Clefs : k1 , k2 , . . .

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Modlisation (1)
e
On utilise des termes et des formules logiques.
Messages termes abstraits
Agents : a, b, . . .
Chir : {m}k
e

Nonces : n1 , n2 , . . .
Paire : < m1 , m2 >

Clefs : k1 , k2 , . . .

Exemple :

Vronique Cortier
e




71/79

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Modlisation (2)
e

72/79

Capacit de lintrus
e
I (x), I (y ) I (< x, y >)
I (x), I (y ) I ({x}y )
I ({x}y ), I (y ) I (x)

Autres possibilits : syst`me dinfrence, r`gles dautomates


e
e
e
e
darbres, ...

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Modlisation (3)
e
Protocole
A B : {A, Na }pub(B)
B A : {Na , Nb }pub(A)

I ({a, x}pub(b) ) I ({x, n2 }pub(a) )

73/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Modlisation (3)
e

73/79

Protocole
A B : {A, Na }pub(B)
B A : {Na , Nb }pub(A)

I ({a, x}pub(b) ) I ({x, n2 }pub(a) )


Intrt
ee
Permet dutiliser des rsultats classiques de Maths-Info
e
(Dduction automatique, rsolution de clauses, rsolution de
e
e
e
contraintes, ...)

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Que sait-on faire ?

En limitant le nombre de sessions ` analyser :


a
Le probl`me est dcidable
e
e

74/79

et

Vronique Cortier
e

NP-complet

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Que sait-on faire ?

74/79

En limitant le nombre de sessions ` analyser :


a
Le probl`me est dcidable
e
e

il existe un algo

et

Vronique Cortier
e

NP-complet

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Que sait-on faire ?

En limitant le nombre de sessions ` analyser :


a
Le probl`me est dcidable
e
e

il existe un algo

74/79

et

Vronique Cortier
e

NP-complet

lalgo nest pas rapide

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Que sait-on faire ?

74/79

En limitant le nombre de sessions ` analyser :


a
Le probl`me est dcidable
e
e

il existe un algo

et

NP-complet

lalgo nest pas rapide

Il existe de nombreux outils (logiciels) pour vrier


e
automatiquement les protocoles cryptographiques.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Avispa : www.avispa-project.org

75/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Travaux en cours : nombre born de sessions


e

76/79

Nombre born de sessions :


e
Vrication de 3-4 sessions maximum
e
Amlioration de la performance des outils
e

Etude de direntes proprits de scurit : anonymat, quit,


e
ee
e
e
e
e
non cration de fausse monnaie, ...
e

Etude de nouveaux protocoles : protocoles de groupe,


signature de contrat, acc`s dans des bases de donnes, ...
e
e
Ajout de primitives cryptographiques plus labores pour tenir
e
e
compte dun plus grand nombre dattaques

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Travaux en cours (2)

77/79

Nombre non born de sessions :


e
Le probl`me est indcidable.
e
e
Il nexiste pas dalgorithme.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Travaux en cours (2)

77/79

Nombre non born de sessions :


e
Le probl`me est indcidable.
e
e
Il nexiste pas dalgorithme.
Ca narrte pas les informaticiens :
e
Dveloppement doutils corrects mais incomplets
e
Recherche de bonnes restrictions
restrictions sur les nonces ;
restrictions sur les copies ` chaque tape ;
a
e
restrictions sur la taille des messages.

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Un probl`me ouvert
e

Peut-on se restreindre ` ltude dun nombre ni (petit) de


a e
sessions ?
dans la pratique, soit un protocole est sr, soit il a une
u
attaque en une ou deux sessions
pourquoi est-ce quil ne sut pas de vrier deux sessions ?
e

78/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1

Introduction
Terminologie
Exemples dattaques
Exemples de protocoles
La recherche dans tout ca ?

Vrication de logiciels critiques


e
Vrication de protocoles cryptographiques
e

Des rfrences pour commencer


ee
Natkin B. Schneier. Applied Cryptography Second Edition :
protocols, algorithms, and source code in C, J. Wiley
& Sons, Inc. publisher, 1996.
Menezes A. J. Menezes and P. C. van Oorschot and S. A.
Vanstone. Handbook of applied cryptography CRC
Press publisher, 1997.
CJ97 J. Clark and J. Jacob A Survey of Authentication
Protocol Literature, 1997.
http ://www.cs.york.ac.uk/jac/papers/drareviewps.ps,
Schneier S. Natkin. Les protocoles de scurit dinternet,
e
e
Dunod, 2002.
79/79

Vronique Cortier
e

Protocoles cryptographiques - Cours 1