Vous êtes sur la page 1sur 32

09/02/01 Crypto 1/32

Support de cours du cabinet Herv Schauer Consultants (HSC)


1999-2001 Herv Schauer Consultants Tous droits rservs
Ghislaine.Labouret@hsc.fr
Herv Schauer Consultants
www.hsc.fr
Introduction la
cryptographie

09/02/01 Crypto 2/32

2 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Plan
Terminologie
Mcanismes et services de scurit
Confidentialit et algorithmes de chiffrement
Fonctions de hachage, scellement et signature
Authentification mutuelle et change de clefs de session
Certificats et PKI
Lgislation franaise
Pour en savoir plus...

09/02/01 Crypto 3/32

La cryptologie est une science mathmatique qui comporte deux branches : la cryptographie et la
cryptanalyse.
La cryptographie traditionnelle est ltude des mthodes permettant de transmettre des donnes de
manire confidentielle. Afin de protger un message, on lui applique une transformation qui le rend
incomprhensible ; cest ce quon appelle le chiffrement, qui, partir dun texte en clair, donne un
texte chiffr ou cryptogramme. Inversement, le dchiffrement est laction qui permet de
reconstruire le texte en clair partir du texte chiffr. Dans la cryptographie moderne, les
transformations en question sont des fonctions mathmatiques, appeles algorithmes
cryptographiques, qui dpendent dun paramtre appel clef.
La cryptanalyse, linverse, est ltude des procds cryptographiques dans le but de trouver des
faiblesses et, en particulier, de pouvoir dcrypter des textes chiffrs. Le dcryptement est laction
consistant retrouver le texte en clair sans connatre la clef de dchiffrement.
Note : Les termes cryptage et crypter sont des anglicismes, drivs de langlais to encrypt,
souvent employs incorrectement la place de chiffrement et chiffrer. En toute rigueur, ces termes
nexistent pas dans la langue franaise. Si le cryptage existait, il pourrait tre dfini comme linverse
du dcryptage, cest--dire comme laction consistant obtenir un texte chiffr partir dun texte en
clair sans connatre la clef. Un exemple concret pourrait tre de signer un texte choisi en reproduisant
un chiffrement avec la clef prive de la victime. Mais on prfre parler dans ce cas de contrefaon et
de l'action de forger une signature.
3 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Terminologie
Cryptologie = cryptographie + cryptanalyse
Chiffrement, dchiffrement et dcryptement :
Texte
en clair
Texte chiffr ou
cryptogramme
Chiffrement
Clef de chiffrement
Texte
en clair
Dchiffrement
Clef de dchiffrement
Dcryptement
Texte en clair
et/ou clef

09/02/01 Crypto 4/32

Si le but traditionnel de la cryptographie est dlaborer des mthodes permettant de transmettre des
donnes de manire confidentielle, la cryptographie moderne sattaque en fait plus gnralement
aux problmes de scurit des communications. Le but est doffrir un certain nombre de services de
scurit comme la confidentialit, lintgrit, lauthentification des donnes transmises et
lauthentification dun tiers. Pour cela, on utilise un certain nombre de mcanismes bass sur des
algorithmes cryptographiques. Nous allons voir dans ce cours quelles sont les techniques que la
cryptographie fournit pour raliser ces mcanismes.
4 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Mcanismes et services de scurit
But de la cryptographie moderne : fournir un certain
nombre de services de scurit
Confidentialit
Intgrit
Authentification de l'origine des donnes ou d'un tiers
Non-rpudiation
Preuves apport nul de connaissance

Moyens mis en uvre : mcanismes de scurit


construits au moyen d'outils cryptographiques (fonctions,
algorithmes, gnrateurs alatoires, protocoles)
Chiffrement
Scellement et signature
Protocoles d'authentification mutuelle avec change de clefs
...

09/02/01 Crypto 5/32

La confidentialit est historiquement le premier problme pos la cryptographie. Il se rsout par la
notion de chiffrement, mentionne plus haut.
Il existe deux grandes familles dalgorithmes cryptographiques base de clefs : les algorithmes clef
secrte ou algorithmes symtriques, et les algorithmes clef publique ou algorithmes
asymtriques.
5 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Confidentialit et
algorithmes de chiffrement
Diffrents types d'algorithmes :
Algorithmes symtriques ou clef secrte
Plus rapides donc prfrs pour le chiffrement de donnes
Algorithmes asymtriques ou clef publique
change de clefs secrtes
Signature

09/02/01 Crypto 6/32

Dans la cryptographie conventionnelle, les clefs de chiffrement et de dchiffrement sont identiques :
cest la clef secrte, qui doit tre connue des tiers communiquants et deux seuls. Le procd de
chiffrement est dit symtrique.
6 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Chiffrement symtrique - Principe
Clef de chiffrement = clef de dchiffrement, elle doit
rester secrte
Texte
en clair
Texte
en clair
Texte
chiffr
Clef secrte
Alice Bob
7 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Chiffrement symtrique - Algorithmes
Algorithmes de chiffrement en continu (stream cipher)
Agissent sur un bit la fois
Le plus courant actuellement : RC4 (longueur de clef variable,
gnralement 128 bits)
Algorithmes de chiffrement par blocs (block cipher)
Oprent sur le texte en clair par blocs (gnralement, 64 bits)
DES (clef de 56 bits code sur 64)
3DES
EDE : Encrypt Decrypt Encrypt
trois clefs distinctes (168 bits) ou seulement deux (112 bits)
IDEA (128 bits)
CAST-128 (128 bits)
Blowfish (longueur de clef variable, jusqu' 448 bits)
AES (Rijndael, longueur de clef variable : 128, 192, 256)

09/02/01 Crypto 7/32

Avec les algorithmes asymtriques, les clefs de chiffrement et de dchiffrement sont distinctes et
ne peuvent se dduire lune de lautre. On peut donc rendre lune des deux publique tandis que
lautre reste prive. Cest pourquoi on parle de chiffrement clef publique. Si la clef publique sert au
chiffrement, tout le monde peut chiffrer un message, que seul le propritaire de la clef prive pourra
dchiffrer. On assure ainsi la confidentialit. Certains algorithmes permettent dutiliser la clef prive
pour chiffrer. Dans ce cas, nimporte qui pourra dchiffrer, mais seul le possesseur de la clef prive
peut chiffrer. Cela permet donc la signature de messages.
Le concept de cryptographie clef publique a t invent par Whitfield Diffie et Martin Hellman en
1976, dans le but de rsoudre le problme de distribution des clefs pos par la cryptographie clef
secrte. De nombreux algorithmes permettant de raliser un cryptosystme clef publique ont t
proposs depuis. Ils sont le plus souvent bass sur des problmes mathmatiques difficiles
rsoudre, donc leur scurit est conditionne par ces problmes, sur lesquels on a maintenant une
vaste expertise. Mais, si quelquun trouve un jour le moyen de simplifier la rsolution dun de ces
problmes, lalgorithme correspondant scroulera.
Tous les algorithmes actuels prsentent linconvnient dtre bien plus lents que les algorithmes
clef secrte ; de ce fait, ils sont souvent utiliss non pour chiffrer directement des donnes, mais
pour chiffrer une clef de session secrte. Certains algorithmes asymtriques ne sont adapts quau
chiffrement, tandis que dautres ne permettent que la signature. Seuls trois algorithmes sont utilisables
la fois pour le chiffrement et pour la signature : RSA, ElGamal et Rabin.
8 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Cryptographie clef publique 1/2
Diffie & Hellman, 1976
RSA, 1978
Base sur des problmes difficiles rsoudre :
logarithme discret
factorisation de grands nombres
Clefs de chiffrement et de dchiffrement distinctes
Connatre la clef publique ne permet pas de retrouver la clef
prive correspondante
Algorithmes trop lents pour une utilisation intensive
(chiffrement de donnes)
utiliss seulement pour l'change de clef, la signature

09/02/01 Crypto 8/32

9 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Cryptographie clef publique 2/2
Chiffrement
Clef publique utilise pour le chiffrement, seul le dtenteur de
la clef prive peut dchiffrer
Signature
Clef prive utilise pour le chiffrement, seul son dtenteur peut
chiffrer, mais tout le monde peut dchiffrer (et donc en fait
vrifier la "signature")
Texte
en clair
Texte
en clair
Texte
chiffr
Texte
en clair
Texte
en clair
Texte
chiffr
Clef publique
Bob
Clef prive
Bob
Clef publique
Alice
Clef prive
Alice
10 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Exemple de combinaison
clefs publiques / clefs secrtes
Clef publique Bob
Clef prive Bob
Texte
en clair
Texte
chiffr
Clef secrte
Texte
chiffr
Clef secrte
Texte
en clair

09/02/01 Crypto 9/32

11 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Longueurs de clefs
Ne pas mlanger les longueurs de clefs publiques et
secrtes
Les algorithmes reposent sur des principes diffrents et
utilisent donc comme clef des lments prsentant des
caractristiques (notamment longueur) diffrentes
Cryptanalyse et comparaisons de rsistance :
Pour les clefs secrtes, la rfrence est la recherche
exhaustive, qui ncessite 2
n-1
essais en moyenne
Pour les clefs publiques, l'attaquant doit rsoudre le problme
mathmatique sur lequel repose l'algorithme
Factorisation (RSA) : cot sous-exponentiel, 1024 bits
Courbes elliptiques : 160 bits quivalent RSA-1024

09/02/01 Crypto 10/32

11 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Fonctions de hachage,
signature et scellement
Mcanismes fournissant les services d'intgrit,
d'authentification de l'origine des donnes et de non-
rpudiation de la source

09/02/01 Crypto 11/32

Parmi les problmes auxquels sattaque la cryptographie, on trouve lauthentification de lorigine des
donnes et lintgrit : lorsque lon communique avec une autre personne au travers dun canal peu
sr, on aimerait que le destinataire puisse sassurer que le message mane bien de lauteur auquel
il est attribu et quil na pas t altr pendant le transfert.
Les fonctions de hachage sens unique interviennent dans la rsolution de ces problmes. Si lon
dispose dun canal sr (mais plus coteux) en parallle du canal de communication normal, on peut
communiquer lempreinte des messages par lintermdiaire de ce canal. On assure ainsi lintgrit des
donnes transfres.
Sans canal sr, le problme se complique : si lon transfre lempreinte sur un canal de communication
non sr, un intercepteur peut modifier les donnes puis recalculer lempreinte. Il convient donc de
trouver une mthode pour sassurer que seul lexpditeur est capable de calculer lempreinte. Pour
cela, on peut utiliser, par exemple, une fonction de hachage sens unique qui fonctionne de plus avec
une clef secrte ou prive. On remarquera que, ce faisant, on fournit galement lauthentification de
lorigine des donnes. Inversement, si on dsire fournir lauthentification de lorigine des donnes et
que lon utilise pour cela un moyen qui ne garantit pas lintgrit des donnes authentifies, un intrus
peut modifier le message et donc faire accepter comme authentifies des donnes quil a choisies.
Cest pourquoi intgrit et authentification de lorigine des donnes sont gnralement fournies
conjointement par un mme mcanisme. Jutiliserai parfois le terme dauthenticit pour dsigner
lintgrit jointe lauthentification des donnes.
12 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Intgrit et authentification
Service souhait : pouvoir s'assurer que le message
mane bien de l'expditeur annonc (authentification de
l'origine des donnes)
n'a pas t modifi pendant le transfert (intgrit)
Authentification de l'origine des donnes et intgrit sont
insparables
Authenticit = authentification + intgrit
"Authentification" souvent utilis pour dsigner en fait
l'authenticit

09/02/01 Crypto 12/32

Aussi appele fonction de condensation, une fonction de hachage est une fonction qui convertit une
chane de longueur quelconque en une chane de taille infrieure et gnralement fixe ; la chane
rsultante est appele empreinte (digest en anglais) ou condens de la chane initiale.
Une fonction sens unique est une fonction facile calculer mais difficile inverser. La
cryptographie clef publique repose sur lutilisation de fonctions sens unique brche secrte : pour
qui connat le secret (i.e. la clef prive), la fonction devient facile inverser.
Une fonction de hachage sens unique est une fonction de hachage qui est en plus une fonction
sens unique : il est ais de calculer lempreinte dune chane donne, mais il est difficile dengendrer
des chanes qui ont une empreinte donne, et donc de dduire la chane initiale partir de lempreinte.
On demande gnralement en plus une telle fonction dtre sans collision, cest--dire quil soit
impossible de trouver deux messages ayant la mme empreinte. On utilise souvent le terme fonction
de hachage pour dsigner, en fait, une fonction de hachage sens unique sans collision.
La plupart des fonctions de hachage sens unique sans collision sont construites par itration dune
fonction de compression : le message M est dcompos en n blocs m
1
,...,m
n
, puis une fonction de
compression f est applique chaque bloc et au rsultat de la compression du bloc prcdent ;
lempreinte h(M) est le rsultat de la dernire compression.
13 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Fonctions de hachage
Fonction de hachage sens unique
Convertit une chane de longueur quelconque en une
chane de taille infrieure et gnralement fixe =
empreinte ou condens
A sens unique :
Facile calculer mais difficile inverser
Il est difficile de trouver deux messages ayant la
mme empreinte
MD5 (Message Digest 5)
Empreinte de 128 bits
SHA (Secure Hash Algorithm)
Norme NIST
Empreinte de 160 bits
SHA-1 rvision publie en 1994 (corrige une faiblesse
non publique)
SHA-1 considr comme plus sr que MD5
SHA-2 (octobre 2000) agrandit la taille de lempreinte
Message
Empreinte

09/02/01 Crypto 13/32

La norme ISO 7498-2 dfinit la signature numrique comme des donnes ajoutes une unit de
donnes, ou transformation cryptographique dune unit de donnes, permettant un destinataire de
prouver la source et lintgrit de lunit de donnes et protgeant contre la contrefaon (par le
destinataire, par exemple). La mention protgeant contre la contrefaon implique que seul
lexpditeur doit tre capable de gnrer la signature.
Une signature numrique fournit donc les services dauthentification de lorigine des donnes,
dintgrit des donnes et de non-rpudiation. Ce dernier point la diffrencie des codes
dauthentification de message (voir transparent prcdent), et a pour consquence que la plupart des
algorithmes de signature utilisent la cryptographie clef publique.
Sur le plan conceptuel, la faon la plus simple de signer un message consiste chiffrer celui-ci laide
dune clef prive : seul le possesseur de cette clef est capable de gnrer la signature, mais toute
personne ayant accs la clef publique correspondante peut la vrifier. Dans la pratique, cette mthode
est peu utilise du fait de sa lenteur.
La mthode rellement utilise pour signer consiste calculer une empreinte du message signer et
ne chiffrer que cette empreinte. Le calcul dune empreinte par application dune fonction de
hachage tant rapide et la quantit de donnes chiffrer tant fortement rduite, cette solution est bien
plus rapide que la prcdente.
15 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Signature numrique 1/2
Signature
Vrification
Message
Clef publique
Alice
Clef prive
Alice
Empreinte
Message
Empreinte
Empreinte
Identiques ?
Signature
Signature

09/02/01 Crypto 14/32


16 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Signature numrique 2/2
Mcanisme qui fournit les services suivants :
Authentification de l'origine des donnes
Intgrit
Non-rpudiation de la source
Algorithmes
DSS : standard NIST
SHA-1 + El-Gamal
RSA : norme de fait
MD5 + RSA
SHA-1 + RSA
17 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Scellement 1/2
Scellement
Vrification
Message
Message
Clef secrte
Sceau
Sceau
Clef secrte
Sceau
Identiques ?

09/02/01 Crypto 15/32

Tout comme la signature numrique, le scellement fournit les services dauthentification de lorigine
des donnes et dintgrit des donnes, mais il ne fournit pas la non-rpudiation. Ceci permet
lutilisation de la cryptographie clef secrte pour la gnration du sceau ou code dauthentification
de message.
Un code dauthentification de message (Message Authentication Code, MAC) est le rsultat dune
fonction de hachage sens unique dpendant dune clef secrte : lempreinte dpend la fois de
lentre et de la clef. On peut construire un MAC partir dune fonction de hachage ou dun
algorithme de chiffrement par blocs. Il existe aussi des fonctions spcialement conues pour faire un
MAC.
Une faon courante de gnrer un code dauthentification de message consiste appliquer un
algorithme de chiffrement symtrique en mode CBC au message ; le MAC est le dernier bloc du
cryptogramme.
Message longueur variable

Clef secrte
Algorithme de
chiffrement symtrique
en mode CBC

Code dauthentification de message Dernier bloc
- Scellement laide dun algorithme de chiffrement symtrique -
Une autre mthode consiste appliquer la fonction de hachage non pas simplement aux donnes
protger, mais un ensemble dpendant la fois des donnes et dun secret.
Keyed-Hash
Un exemple simple de cette faon de procder est de prendre pour MAC des valeurs du type H(secret,
message), H(message, secret) ou H(secret, message, secret). Ces mthodes, prsentes en 1992 par
Gene Tsudik, sappellent respectivement mthode du prfixe secret, du suffixe secret et de lenveloppe
secrte. Elles ont une scurit limite.
18 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Scellement (2/2)
Mcanisme qui fournit les services suivants :
Authentification de l'origine des donnes
Intgrit
Vocabulaire
Sceau ou code d'authentification de message
Message Authentication Code, MAC
2 constructions possibles
Dernier bloc du cryptogramme obtenu avec un algorithme de
chiffrement en mode CBC
DES-MAC
Fonction de hachage sens unique utilise avec une clef
Keyed-MAC (Keyed-MD5, Keyed-SHA-1)
H(secret, message, secret)
HMAC (HMAC-MD5, HMAC-SHA-1)
H(Kopad,H(K ipad,M))

09/02/01 Crypto 16/32

HMAC
Une mthode de calcul de MAC base de fonction de hachage plus labore et plus sre est HMAC,
prsent dans la RFC 2104. La mthode HMAC peut tre utilise avec nimporte quelle fonction de
hachage itrative telle que MD5, SHA-1 ou encore RIPE-MD.
Soit H une telle fonction, K le secret et M le message protger. H travaille sur des blocs de longueur
b octets (64 en gnral) et gnre une empreinte de longueur l octets (16 pour MD5, 20 pour SHA-1 et
RIPE-MD-160). Il est conseill dutiliser un secret de taille au moins gale l octets. On dfinit deux
chanes, ipad (inner padding data) et opad (outer padding data), de la faon suivante : ipad = loctet
0x36 rpt b fois, opad = loctet 0x5C rpt b fois. Le MAC se calcule alors suivant la formule
suivante : HMAC
K
(M) = H ( K opad, H(K ipad, M) ).
Une pratique courante avec les fonctions de calcul de MAC est de tronquer la sortie pour ne garder
comme MAC quun nombre rduit de bits. Avec HMAC, on peut ainsi choisir de ne retenir que les t
bits de gauche, o t doit tre suprieur l/2 et 80. On dsigne alors sous la forme HMAC-H-t
lutilisation de HMAC avec la fonction H, tronqu t bits (par exemple, HMAC-SHA1-96).

09/02/01 Crypto 17/32

Tout comme les protocoles de communication, les protocoles cryptographiques sont une srie dtapes
prdfinies, bases sur un langage commun, qui permettent plusieurs participants (gnralement
deux) daccomplir une tche. Dans le cas des protocoles cryptographiques, les tches en question sont
bien sr lies la cryptographie : ce peut tre une authentification, un change de clef,... Une
particularit des protocoles cryptographiques est que les tiers en prsence ne se font gnralement pas
confiance et que le protocole a donc pour but dempcher lespionnage et la tricherie.
17 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Authentification mutuelle et
change de clefs de session

09/02/01 Crypto 18/32

Les deux mthodes les plus courantes dtablissement de clef sont le transport de clef et la
gnration de clef. Un exemple de transport de clef est lutilisation dun algorithme clef publique
pour chiffrer une clef de session gnre alatoirement. Un exemple de gnration de clef est le
protocole DiffieHellman, qui permet de gnrer un secret partag partir dinformations publiques.
18 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Introduction
Relations entre change de clefs et authentification
mutuelle
L'change de clefs doit tre authentifi pour viter les attaques
Une clef de session permet d'tendre l'authentification
l 'ensemble de la communication
Protocole d'authentification mutuelle avec change de clefs
fournit authentification mutuelle et un change de clefs
authentifi tout-en-un
Types dchange de clefs
Transport
Exemple : transport RSA (utilis par SSL)
Gnration
Exemple : Diffie-Hellman
19 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Transport de clef
Clef publique Bob
Clef prive Bob
Alice choisit la clef de session
La chiffre avec la clef publique de Bob
Envoie la clef chiffre Bob
Bob rcupre la clef de session
grce sa clef prive

09/02/01 Crypto 19/32

Invent en 1976 par Diffie et Hellman, ce protocole permet deux tiers de gnrer un secret partag
sans avoir aucune information pralable lun sur lautre. Il est bas sur la cryptologie clef
publique (dont il est dailleurs lorigine), car il fait intervenir des valeurs publiques et des valeurs
prives. Sa scurit dpend de la difficult de calculer des logarithmes discrets sur un corps fini. Le
secret gnr laide de cet algorithme peut ensuite tre utilis pour driver une ou plusieurs clefs
(clef secrte, clef de chiffrement de clefs...).
Voici le droulement de lalgorithme :
1. Alice et Bob se mettent daccord sur un grand entier n tel que (n-1)/2 soit premier et sur un entier
g primitif par rapport n. Ces deux entiers sont publics.
2. Alice choisit de manire alatoire un grand nombre entier a, quelle garde secret, et calcule sa
valeur publique, A = g
a
mod n. Bob fait de mme et gnre b et B = g
b
mod n.
3. Alice envoie A Bob ; Bob envoie B Alice.
4. Alice calcule K
AB
= B
a
mod n ; Bob calcule K
BA
= A
b
mod n. K
AB
= K
BA
= g
ab
mod n est le secret
partag par Alice et Bob.
Une personne qui coute la communication connat g, n, A=g
a
mod n et B=g
b
mod n, ce qui ne lui
permet pas de calculer g
ab
mod n : il lui faudrait pour cela calculer le logarithme de A ou B pour
retrouver a ou b.
20 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Diffie-Hellman : principe
Qu'est-ce que le protocole DH ?
Protocole cryptographique qui permet deux tiers de gnrer un
secret partag sans informations pralables l'un sur l'autre
Principe
change de valeurs publiques
Permettant de gnrer un secret partag
Un espion ne peut reconstituer le secret partag partir des valeurs
publiques
Valeur publique
A = g
a
mod n
Valeur prive
a
Valeur prive
b
Valeur publique
B = g
b
mod n
change des
valeurs publiques
B
a
mod n A
b
mod n
secret partag
g
ab
mod n

09/02/01 Crypto 20/32

En revanche, DiffieHellman est vulnrable lattaque active dite attaque de lintercepteur .
Une faon de contourner le problme de lattaque de lintercepteur sur DiffieHellman est
dauthentifier les valeurs publiques utilises pour la gnration du secret partag. On parle alors
de DiffieHellman authentifi. L'authentification peut se faire deux niveaux :
En utilisant des valeurs publiques authentifies, laide de certificats par exemple. Cette mthode
est notamment la base du protocole SKIP.
En authentifiant les valeurs publiques aprs les avoir changes, en les signant par exemple. Cette
mthode est utilise entre autres par les protocoles Photuris et IKE.
Linconvnient, dans les deux cas, est que lon perd un gros avantage de DiffieHellman, qui est la
possibilit de gnrer un secret partag sans aucune information pralable sur linterlocuteur.
Mais Diffie-Hellman, mme authentifi, fournit une proprit intressante, appele proprit de
Perfect Forward Secrecy (PFS). Cette proprit est garantie si la dcouverte par un adversaire du ou
des secrets long terme ne compromet pas les clefs de session gnres prcdemment : les clefs de
session passes ne pourront pas tre retrouves partir des secrets long terme. On considre
gnralement que cette proprit assure galement que la dcouverte dune clef de session ne
compromet ni les secrets long terme ni les autres clefs de session.
A ce sujet, on parle dattaque de Denning-Sacco lorsquun attaquant rcupre une clef de session et
utilise celle-ci, soit pour se faire passer pour un utilisateur lgitime, soit pour rechercher les secrets
long terme (par attaque exhaustive ou attaque par dictionnaire).
21 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Diffie-Hellman : proprits
Sensible l'attaque de l'intercepteur
L'attaquant, Ingrid, envoie sa valeur publique la place d'Alice
et de Bob et partage ainsi un secret avec chaque tiers.
Solution: authentifier les valeurs publiques ; le protocole
rsultant s'appelle Diffie-Hellman authentifi.
Proprit de Perfect Forward Secrecy (PFS)
Principe
La dcouverte du secret long terme ne compromet pas
les clefs de session
Proprit fournie lorsque le secret long terme n'intervient
pas dans la gnration ou la protection en confidentialit
des clefs
DH authentifi fournit la PFS si les seules valeurs long terme
sont celles utilises pour l'authentification (i.e. les valeurs
prives/publiques sont court terme)

09/02/01 Crypto 21/32

L'utilisation de la cryptographie clef publique grande chelle ncessite de pouvoir grer des listes
importantes de clefs publiques, pour des entits souvent rparties dans un rseau. Pour cela, on a
recourt des infrastructures clefs publiques (Public Key Infrastructure, PKI), systmes de gestion
des clefs publiques prvus pour une utilisation grande chelle. La plupart de ces systmes utilisent
des certificats, mais ce n'est pas une obligation. Ainsi, DNSSEC, qui permet de distribuer des clefs
publiques de faon authentifie, peut tre utilis pour mettre en uvre une PKI. En gnral, un
amalgame est toutefois effectu entre PKI et systme de gestion et de distribution de certificats.
22 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Certificats et PKI

09/02/01 Crypto 22/32

25 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Distribution des clefs publiques
Ide de dpart
Simple annuaire des clefs publiques
Problmes rsoudre
Distribuer les clefs de faon authentifie et intgre
Stocker les clefs de faon sre (protection en intgrit)
Limiter le nombre de clefs stocker
Solution = certificats et hirarchies de certification
lment de transport d'une clef publique, dont l'authenticit est
vrifiable de faon autonome
Authentification : Lie une clef publique son possesseur
Intgrit : Toute modification du certificat sera dtecte

09/02/01 Crypto 23/32


26 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Principe du certificat
Certificat = Structure de donnes
Permet de lier une clef publique diffrents lments, au
moyen de la signature d'une autorit de confiance :
Nom du propritaire de la clef
Dates de validit
Type d'utilisation autorise

Format actuel : X.509v3, profil PKIX
mis par une autorit de certification
(Certificate Authority CA)
Garantit l'exactitude des donnes
Certificats vrifiables au moyen de la
clef publique de la CA, seule clef
stocker de faon sre
Listes de rvocation (Certificate Revocation List CRL)
Permettent de rvoquer des certificats avant leur expiration
normale
. Clef publique
d'Alice : 0xA3F
2761C05B127
. Valide du 01/01/01
au 31/12/01
. Certifi par Charles
27 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
mission et vrification des certificats
Alice
Requte de certificat
(Clef publique et
preuve d'identit)
mission de certificat
Rcupration du
certificat via
annuaire ou autre
CA
Certificat
auto-sign
Rcupration du
certificat de faon sre
Vrification
signature CA
Je garantis la
vracit des
infos contenues
dans ce certificat

09/02/01 Crypto 24/32

Version : Indique quelle version de X.509 correspond ce certificat.
Serial number : Numro de srie du certificat (propre chaque autorit de certification).
Signature Algorithm ID : Identifiant du type de signature utilise.
Issuer Name : Distinguished Name (DN) de l'autorit de certification qui a mis ce certificat.
Validity period : Priode de validit.
Subject Name : Distinguished Name (DN) du dtenteur de la clef publique.
Subject public key info : Infos sur la clef publique de ce certificat.
Issuer Unique ID / Subject Unique ID : Extensions optionnelles introduites avec la version 2 de X.509.
Extensions : Extensions gnriques optionnelles, introduites avec la version 3 de X.509.
Signature : Signature numrique de la CA sur l'ensemble des champs prcdents.
28 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Version (v1=0, v2=1, v3=2)
Serial number
Signature algorithm ID
Issuer name
Validity period
(Start and expiry dates/times)
Subject name
Subject public key info :
Algorithm ID and public key value
Issuer unique ID
Subject unique ID
Extensions
(Type - Critical/Non-crit. - Field value)
Signature :
Algorithm ID and signature value
Gnration de
la signature
v2
v3
Clef prive
de la CA
Les certificats X.509v3

09/02/01 Crypto 25/32

26 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Exemple de certificat client SSL (1/2)
Version: 3 (0x2)
Serial Number:
5c:e4:85:54:9e:84:f0:59:90:fd:08:7a:62:93:6d:36
Signature Algorithm: md5WithRSAEncryption
Issuer: L=Internet, O=VeriSign, Inc., OU=VeriSign OnSite Admin Demo
Validity
Not Before: Nov 8 00:00:00 2000 GMT
Not After : Jan 7 23:59:59 2001 GMT
Subject: O=HSC, OU=www.verisign.com/repository/CPS Incorp. By Ref.,LIAB.LTD(c)96,
CN=Ghislaine Labouret/Email=ghislaine.labouret@hsc.fr
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:bd:da:6b:f7:7d:6c:4e:cb:00:9f:61:56:4c:7d:

Exponent: 65537 (0x10001)


27 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Exemple de certificat client SSL (2/2)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
X509v3 Certificate Policies:
Policy: 2.16.840.1.113733.1.7.1.1
CPS: https://www.verisign.com/CPS
User Notice:
Organization: VeriSign, Inc.
Number: 1
Explicit Text: VeriSign's CPS incorp. by reference liab. ltd. (c)97 VeriSign
Netscape Cert Type:
SSL Client
2.16.840.1.113733.1.6.11:
. 2f5941537bae90da19e157922c4e3992
2.16.840.1.113733.1.6.13:
....
Signature Algorithm: md5WithRSAEncryption
85:5a:83:d3:4c:a8:f4:59:69:10:f0:4f:f2:94:87:19:ab:cd:


09/02/01 Crypto 26/32

28 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Exemple de certificat IPsec
Version: 3 (0x2)
Serial Number: 20 (0x14)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=FR, ST=Ile-de-France, L=Levallois-Perret, O=Herv\xE9 Schauer Consultants (HSC),
OU=Certificate Authority, CN=HSC CA/Email=ca@hsc.fr
Validity
Not Before: Oct 27 07:29:34 2000 GMT
Not After : Nov 11 07:29:34 2000 GMT
Subject: C=FR, ST=Ile de France, L=Levallois-Perret, O=HSC, OU=IPsec 2000 testbed,
CN=kame.ipsec2000.fr
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:f8:51:89:b7:0c:33:56:74:a5:28:98:ed:60:6c:
...
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Key Usage: critical
Digital Signature, Non Repudiation
X509v3 Subject Alternative Name:
email:kame@ipsec2000.fr, IP Address:192.168.1.60
Signature Algorithm: md5WithRSAEncryption
3d:77:f0:f9:9f:9c:6a:f7:1a:ee:2c:bd:0f:57:a2:23:93:35:
...
32 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Qu'est-ce qu'une PKI ?
PKI = Public Key Infrastructure = infrastructure clefs
publiques
Nature: infrastructure, ensemble d'lments, protocoles et
services
Rle: gestion des clefs publiques grande chelle
Enregistrement et mission
Stockage et distribution
rvocation et vrification de statut
Sauvegardes et rcupration
La plupart des PKI actuelles utilisent des certificats

09/02/01 Crypto 27/32

33 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Composants d'une PKI (1/2)
Certificate
Authority
Registration
Authority
Subscriber
Application
Relying
Party
Application
Directory
service
On the wire
Directory access
Crypto
Security
Services
Certificate application
Revocation request
API
Validation
service
End-User A End-User B
D
i
r
e
c
t
o
r
y


a
c
c
e
s
s
C
e
r
t
i
f
i
c
a
t
e
p
u
b
l
i
s
h
i
n
g
i
n
t
e
r
f
a
c
e
CA/RA interface
Feeding the validation authority
Online
status
checking
lments
Utilisateurs finaux
(possesseurs de clefs)
Autorits d'enregistrement
(Registration Authority
RA, Local Registration
Authorities LRAs)
Autorit de certification
(Certificate Authority - CA)
metteur de certificats
metteur de listes de
rvocations
Annuaire
Service de validation
Hirarchie
Plusieurs niveaux de
certification
34 Introduction la cryptographie G.Labouret 1999-2001, Herv Schauer Consultants
Composants d'une PKI (2/2)
Outils
Protocoles de gestion et de communication
CMP, PKCS, CRMF, OCSP, SCVP, LDAP
Beaucoup de "standards", certains non complts, instables ou
non encore implments
APIs cryptographiques
Personnel
Rgles
Certification Practice Statement (CPS)
Dfinition initiale : dclaration des pratiques utilises par une
autorit de certification pour mettre des certificats
Actuellement gnralement tendu l'ensemble de
l'infrastructure
Certificate Policies (CPs)
Rgle sous laquelle le certificat a t mis et types d'utilisations
autorises
Vrifies par les utilisateurs finaux (applications)
Contrats et autres documents lgaux (garanties et limitations de
responsabilit)

09/02/01 Crypto 28/32

28 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Lgislation franaise
en matire de cryptologie
29 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Vue d'ensemble
Textes lgislatifs et rglementaires
Loi n90-1170 du 29 dcembre 1990, modifie par la loi n96-
659 du 26 juillet 1996 (dcrets d'application dbut 1998)
Deux nouveaux dcrets et un arrt le 17 mars 1999
La DCSSI (ex-SCSSI)
Direction Centrale de la Scurit des Systmes d'Information
C'est le service qui adresser les dclarations et demandes
d'autorisations
Principe actuel
On distingue diffrents rgimes en fonction de la finalit des
moyens ou prestations de cryptologie et du niveau
correspondant

09/02/01 Crypto 29/32

30 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Finalits
Utilisation
personnelle
collective (pour un domaine ou un type d'utilisateur donn)
gnrale (potentiellement n'importe qui)
Fourniture
vente, location ou fourniture gratuite.
Importation
Hors Communaut Europenne
Exportation
Hors Communaut Europenne
31 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Rgimes
Dispense de toute formalit pralable.
La libert est totale d'utiliser, de fournir, d'importer ou
d'exporter le moyen ou la prestation considrs.
Dclaration
Simplifie ou non
Un formulaire administratif doit tre transmis la DCSSI un
mois l'avance
Autorisation
Partie administrative et partie technique
La DCSSI dispose de quatre mois pour notifier sa dcision.
Une absence de notification l'expiration de ce dlai de quatre
mois vaut autorisation.

09/02/01 Crypto 30/32

32 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Synthse
Synthse du nouveau cadre lgislatif et rglementaire
Finalits Fonctions offertes
Authentification,
signature,
intgrit, non
rpudiation
Confidentialit
L 40 bits
40 bits < L
128 bits
L > 128 bits
Utilisation Libre Libre
Libre ou
Dclaration (1)
Autorisation
Fourniture
Dclaration
simplifie
Dclaration Dclaration Autorisation
Importation Libre Libre
Libre ou
Dclaration (1)
Autorisation
Exportation Libre Autorisation Autorisation Autorisation
(1) La dclaration est ncessaire uniquement pour un matriel ou un logiciel qui n'a pas fait l'objet
pralablement d'une dclaration par leur producteur, un fournisseur ou un importateur, et si ledit
matriel ou ledit logiciel n'est pas exclusivement destin l'usage priv d'une personne physique.
33 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Liens
www.scssi.gouv.fr
http://www.internet.gouv.fr/francais/commerce/textesref.htm
Copie des principaux textes lgislatifs et rglementaires
Guide pratique (pas jour mais trs clair)
http://www.internet.gouv.fr/francais/textesref/guidepratique.htm
http://cwis.kub.nl/~frw/people/koops/lawsurvy.htm
Informations sur l'ensemble des lois travers le monde

09/02/01 Crypto 31/32

34 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Pour en savoir plus...

09/02/01 Crypto 32/32


35 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Lectures
RSA FAQ
RSA Laboratories, Frequently Asked Questions About Todays
Cryptography - Version 4.1, 2000.
Disponible en ligne : http://www.rsasecurity.com/rsalabs/faq/
Cryptographie applique / Applied Cryptography
Schneier Bruce, Cryptographie applique - Algorithmes,
protocoles et codes source en C - 2
me
dition, International
Thomson Publishing France, 1997.
V.F. disponible dans de nombreuses librairies
V.O. disponible chez Amazon ou en PDF sur CD-ROM chez
Dr. Dobb's (www.ddj.com)
Handbook of Applied Cryptography
Menezes Alfred J., van Oorschot Paul C., Vanstone Scott A.,
Handbook of Applied Cryptography, CRC Press LLC, Fourth
Printing, July 1999.
Disponible en ligne : http://cacr.math.uwaterloo.ca/hac/
36 Introduction la cryptographie G.Labouret 1999-2000, Herv Schauer Consultants
Sites
Counterpane Labs - www.counterpane.com/labs.html
Publications de Counterpane Labs (Bruce Schneier)
Index d'articles disponibles en ligne
Cryptography Research - www.cryptography.com
Publications de Cryptography Research
Index des articles des confrences Crypto et Eurocrypt
disponibles en ligne
Liens vers les sites de cryptologues
Cryptome - jya.com/crypto.htm
Les nouvelles (brutes)
Groupes de discussion
fr.misc.cryptologie (beaucoup de bruit pour rien)
sci.crypt

Vous aimerez peut-être aussi