Vous êtes sur la page 1sur 22

Théorie de l'information et codage

Master de cryptographie

Cours 7 : introduction à la cryptographie

9 mars 2009

Université Rennes 1

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 1 / 20


Terminologie

Problématique
un émetteur et un récepteur désirent s'envoyer un message sur un canal
de transmission public.

But
Décrire et analyser des procédés (cela inclus leurs implémentations
concrètes) permettant de transformer le message original, que l'on
désignera par message clair (plain text), en un message équivalent, le
message chiré (cipher text), dont le contenu et la signication initial
sera dissimulé.
Ce procédé sera appelé chirement (ou cryptage), et son inverse sera
appelé déchirement. Cela permet d'assurer la condentialité du
message.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 2 / 20


Système de chirement
Dénition
Un système de chirement ou cryptosystème est un ensemble P, C, K, E, D
P est l'espace des messages clairs.
C est l'espace des messages chirés.
K est l'espace des clés.
E = {Ek , k ∈ K} avec Ek : P → C (les fonctions de chirement).
D = {Dk , k ∈ K} avec Dk : C → P (les fonctions de déchirement).
A chaque clé e de K est associée une clé d de K telle que
Dd (Ee (p )) = p pour tout p dans P .

Exemple : le chirement de César


La conception d'un système de chirement s'appelle la cryptographie, son
analyse en vue de l'attaquer s'appelle la cryptanalyse.
La cryptologie est la partie des mathématiques qui regroupe la
cryptographie et la cryptanalyse.
Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 3 / 20
Le chirement de Vernam (1917)
Également appelé masque jetable (one time pad).
Description
Soit n un entier positif et soient
P = C = K = {0, 1}n et E = D = {⊕}.
De plus K est muni de la loi de probabilité uniforme.

Avantages
Ultra simple.
Parfaitement sûr (Shannon, 1949) ie H (p |c ) = H (p ) ∀p ∈ P
C'est le seul chirement parfait connu

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 4 / 20


Le chirement de Vernam (1917)
Également appelé masque jetable (one time pad).
Description
Soit n un entier positif et soient
P = C = K = {0, 1}n et E = D = {⊕}.
De plus K est muni de la loi de probabilité uniforme.

Avantages
Ultra simple.
Parfaitement sûr (Shannon, 1949) ie H (p |c ) = H (p ) ∀p ∈ P
C'est le seul chirement parfait connu

Inconvénients
N'empêche pas les attaques actives.
Nécessite l'échange préalable d'une clé aussi longue que le message.
Il faut tirer une clé parfaitement aléatoirement.
Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 4 / 20
Les missions de la cryptographie
En pratique, on demande à la cryptographie de résoudre les problèmes
(fondamentaux) suivants :
Condentialité : Ceux qui ne sont pas les destinataires d'une
information ne doivent pas avoir accès à cette information.
Authentication : il doit être possible pour le récepteur du message
de garantir son origine. Une tierce personne ne doit pas pouvoir se
faire passer pour quelqu'un d'autre (usurpation d'identité).
Intégrité : le récepteur doit pouvoir s'assurer que le message n'a pas
été modié durant sa transmission. Une tierce personne ne doit pas
pouvoir substituer un message légitime (ayant pour origine l'émetteur)
par un message frauduleux.
Non répudiation : un émetteur ne doit pas pouvoir nier l'envoi d'un
message.
Remarque : on voit que les trois dernières contraintes sont de grandes
importances du point de vue juridique.
Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 5 / 20
Où trouve t'on de la cryptographie ?

Armée (et plus généralement sécurité au niveau des états),


Système bancaire,
Internet (achats, identication, déclaration d'impôts),
Téléphones portables, clés électroniques (e.g., voitures),
TV payante,
Cartes d'identités électroniques, cartes de santé,
Vote électronique,
DVD, HDDVD, Blue Ray, audio numérique (certains formats, e.g.,
WMA, AAC),
Consoles de jeux vidéos (e.g., Xbox, Xbox360).

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 6 / 20


La cryptographie à clé secrète (ou symétrique)

Les plus connus : DES, tripleDES, AES, masque jetable.


Avantages et inconvénients
Très rapide.
Il faut s'échanger la clé.
Il faut avoir une clé pour chaque correspondant.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 7 / 20


2 familles de chirement symmétriques

Chirement par blocs (bloc cipher)


Principe : régler le problème de la taille de clé en découpant le message en
petits morceaux.
Taille des blocs : 32 à 512 bits

Chirement par ot (stream cipher)


Principe : Essayer de générer un ot de clé qui se rapproche de l'aléatoire
et appliquer Vernam avec.
Avantage : très simple (hardware) et très haut débit.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 8 / 20


Idea of public-key cryptography
Solve the problem of secret-key cryptography : if A and B want to
communicate in secret, they must share a key

Analogy in real life

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 9 / 20


What is public-key cryptography ?

Ciphering key and deciphering keys are not the same


Deciphering cannot be deduced from ciphering key in polynomial time
→ ciphering key can be public

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 10 / 20


What is public-key cryptography ?
Introduced by Die and Hellman in 1976 (earlier in secret services)
Uses one-way functions (f easy to compute but f −1 intractable)

An exemple of one-way function with trapdoor

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 11 / 20


What is public-key cryptography ?
Introduced by Die and Hellman in 1976 (earlier in secret services)
Uses one-way functions (f easy to compute but f −1 intractable)
Advantages and drawback compared to secret-key cryptography
No problem of key exchange
Key management easier (one key per person)
Very slow

In practice, mix secret-key and public-key cryptography (eg SSL)


Public-key cryptography is used to exchange a session key
Secret-key cryptography uses this session key to cipher
communications
Most common usage of public-key cryptography :
Key exchange
Digital signature (authentication)
Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 11 / 20
Most known systems : classical

RSA
Since 1978
Based on factorization of huge numbers
Very fast encryption
Used almost everywhere
Large keys
Subexponential attacks

DL on nite elds
Same attacks as RSA
Small keys

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 12 / 20


Most known systems : modern

DL on elliptic curves (ECC)


No subexponential attacks
Small keys
Involves advanced mathematics
New possibilities (ID-based cryptography)
Recommended for future (NSA suite B)

DL on hyperelliptic curves (HECC)


Same advantages as ECC
Not patented
Involves more advanced mathematics
Subexponential attack for most complicated ones (genus > 3)

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 13 / 20


Most known systems : future, exotic or historical

NTRU
Based on lattices (Closest Vector problem)
Very young
Already several important attacks
No polynomial time algorithm on quantum computers

Other ones
Knapsack problem
McEliece (error correcting codes)
Paillier (for electronical voting)
HFE (non-linear systems of equations)

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 14 / 20


Cryptanalyse

Attaques actives/passives
passive : l'attaquant se contente d'observer
→ menace sur la condentialité
active : l'attaquant peut interférer dans la communication
→ menace sur l'intégrité et l'authenticité

Sécurité des algorithmes


Total break : on est capable de trouver la clé.
Déduction globale : algorithme alternatif pour le déchirement
Déduction locale : trouver le message clair à partir du message
chiré.
Déduction partielle : obtenir une information partielle sur la clé ou le
message clair.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 15 / 20


Les moyens de l'attaquant
Attaque à texte chirés connus [Ciphertextonly attack]
On connaît Ci sachant que Ci = EK (Mi ) pour i = 1, .., N, et on veut
en déduire MN +1 connaissant CN +1 .
Attaque à texte clair connu [Knownplaintext attack]
On connaît des paires (Mi , Ci ) xées avec Ci = EK (Mi ) pour
i = 1, .., N, et on veut en déduire soit MN +1 connaissant CN +1 , soit K .
Attaque à texte clair choisi [Chosenplaintext (CPA)]
On connaît des paires (Ci , Mi ) avec Mi choisis et Ci = EK (Mi )pour
i = 1, .., N, et on veut en déduire soit MN +1 connaissant CN +1 , soit K .
Attaque à texte chiré choisi [Chosenciphertext (CCA)]
On connaît des paires (Ci , Mi ) avec Ci choisis et Mi = DK (Ci ) pour
i = 1, .., N, et on veut en déduire soit MN +1 connaissant CN +1 , soit K .
Variantes adaptatives pour les 2 derniers
On peut également supposer que le but de l'attaquant est simplement de
pouvoir distinguer 2 messages.
Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 16 / 20
Les types d'attaque

Attaques usuelles
Force brute / Dictionnaire
Diérentielle
Linéaire
Algébrique
Canaux cachés
Biais statistique
Paradoxe des anniversaires
Sécurité calculatoire : On estime que 280 opérations sont infaisables

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 17 / 20


L'attaque "man in the middle"

Le but de l'attaquant est de se faire passer pour l'un (voire les 2) des
correspondants, en utilisant, par exemple :
L'ARP Spoong : si l'un des interlocuteurs et l'attaquant se
trouvent sur le même réseau local, l'attaquant peut forcer les
communications à transiter par son ordinateur en se faisant passer
pour un "relais" (routeur, passerelle) indispensable. Il est alors assez
simple de modier ces communications.
Le Spoong de DNS : l'attaquant altère le ou les serveur(s) DNS
des parties de façon à rediriger vers lui leurs communications sans
qu'elles s'en aperçoivent.
Le déni de service : l'attaquant bloque toutes les communications
avant d'attaquer un parti. L'ordinateur ne peut donc plus répondre et
l'attaquant a la possibilité de prendre sa place.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 18 / 20


L'attaque "man in the middle"

On admet que C est en mesure de modier les échanges entre A et B.


B envoie sa clé publique à A. C l'intercepte, et renvoie à A sa
propre clé publique en se faisant passer pour B.
A veut envoyer un message a B, et utilise sans le savoir la clé de C.
A chire le message avec la clé publique de C (au lieu de celle de
B) et l'envoie à B.
C intercepte le message, le déchire avec sa clé privée.
C chire à nouveau le message, après l'avoir éventuellement modié,
avec la clé publique de B.
B déchire son message avec sa clé privée, et ne se doute de rien
puisque cela fonctionne.
Ainsi, A et B sont chacun persuadés d'utiliser la clé de l'autre, alors qu'ils
utilisent en réalité tous les deux la clé de C.

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 19 / 20


Le "hack" de Trinity (Matrix Reloaded)

Master Crypto (2008-2009) Théorie de l'information et codage 9 mars 2009 20 / 20

Vous aimerez peut-être aussi