Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et...

22

Transcript of Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et...

Page 1: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 2: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Terminologie

Problématique

un émetteur et un récepteur désirent s'envoyer un message sur un canalde transmission public.

But

Décrire et analyser des procédés (cela inclus leurs implémentationsconcrètes) permettant de transformer le message original, que l'ondésignera par message clair (plain text), en un message équivalent, lemessage chi�ré (cipher text), dont le contenu et la signi�cation initialsera dissimulé.Ce procédé sera appelé chi�rement (ou cryptage), et son inverse seraappelé déchi�rement. Cela permet d'assurer la con�dentialité dumessage.

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

Page 3: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Système de chi�rement

Dé�nition

Un système de chi�rement ou cryptosystème est un ensemble P, C,K, E ,DP est l'espace des messages clairs.

C est l'espace des messages chi�rés.

K est l'espace des clés.

E = {Ek , k ∈ K} avec Ek : P → C (les fonctions de chi�rement).

D = {Dk , k ∈ K} avec Dk : C → P (les fonctions de déchi�rement).

A chaque clé e de K est associée une clé d de K telle queDd (Ee(p)) = p pour tout p dans P.

Exemple : le chi�rement de César

La conception d'un système de chi�rement s'appelle la cryptographie, sonanalyse en vue de l'attaquer s'appelle la cryptanalyse.La cryptologie est la partie des mathématiques qui regroupe lacryptographie et la cryptanalyse.

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

Page 4: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Le chi�rement de Vernam (1917)

Également appelé masque jetable (one time pad).

Description

Soit n un entier positif et soientP = 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 ∈ PC'est le seul chi�rement 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

Page 5: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Le chi�rement de Vernam (1917)

Également appelé masque jetable (one time pad).

Description

Soit n un entier positif et soientP = 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 ∈ PC'est le seul chi�rement 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

Page 6: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Les missions de la cryptographie

En pratique, on demande à la cryptographie de résoudre les problèmes(fondamentaux) suivants :

Con�dentialité : Ceux qui ne sont pas les destinataires d'uneinformation ne doivent pas avoir accès à cette information.

Authenti�cation : il doit être possible pour le récepteur du messagede garantir son origine. Une tierce personne ne doit pas pouvoir sefaire 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 paspouvoir 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'unmessage.

Remarque : on voit que les trois dernières contraintes sont de grandesimportances du point de vue juridique.

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

Page 7: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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, identi�cation, 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, HD�DVD, 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

Page 8: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Les plus connus : DES, triple�DES, 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

Page 9: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

2 familles de chi�rement symmétriques

Chi�rement par blocs (bloc cipher)

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

Chi�rement par �ot (stream cipher)

Principe : Essayer de générer un �ot de clé qui se rapproche de l'aléatoireet 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

Page 10: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Idea of public-key cryptography

Solve the problem of secret-key cryptography : if A and B want tocommunicate 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

Page 11: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 12: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

What is public-key cryptography ?

Introduced by Di�e 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

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 ciphercommunications

Most common usage of public-key cryptography :Key exchangeDigital signature (authentication)

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

Page 13: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

What is public-key cryptography ?

Introduced by Di�e 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 ciphercommunications

Most common usage of public-key cryptography :Key exchangeDigital signature (authentication)

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

Page 14: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 15: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 16: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 17: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Cryptanalyse

Attaques actives/passives

passive : l'attaquant se contente d'observer

→ menace sur la con�dentialité

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échi�rement

Déduction locale : trouver le message clair à partir du messagechi�ré.

Déduction partielle : obtenir une information partielle sur la clé ou lemessage clair.

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

Page 18: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Les moyens de l'attaquant

Attaque à texte chi�rés connus [Ciphertext�only attack]On connaît Ci sachant que Ci = EK (Mi ) pour i = 1, ..,N, et on veuten déduire MN+1 connaissant CN+1.

Attaque à texte clair connu [Known�plaintext attack]On connaît des paires (Mi ,Ci ) �xées avec Ci = EK (Mi ) pouri = 1, ..,N, et on veut en déduire soit MN+1 connaissant CN+1, soit K .

Attaque à texte clair choisi [Chosen�plaintext (CPA)]On connaît des paires (Ci ,Mi ) avec Mi choisis et Ci = EK (Mi )pouri = 1, ..,N, et on veut en déduire soit MN+1 connaissant CN+1, soit K .

Attaque à texte chi�ré choisi [Chosen�ciphertext (CCA)]On connaît des paires (Ci ,Mi ) avec Ci choisis et Mi = DK (Ci ) pouri = 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 depouvoir distinguer 2 messages.

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

Page 19: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

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

Page 20: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

L'attaque "man in the middle"

Le but de l'attaquant est de se faire passer pour l'un (voire les 2) descorrespondants, en utilisant, par exemple :

L'ARP Spoo�ng : si l'un des interlocuteurs et l'attaquant setrouvent sur le même réseau local, l'attaquant peut forcer lescommunications à transiter par son ordinateur en se faisant passerpour un "relais" (routeur, passerelle) indispensable. Il est alors assezsimple de modi�er ces communications.

Le Spoo�ng de DNS : l'attaquant altère le ou les serveur(s) DNSdes parties de façon à rediriger vers lui leurs communications sansqu'elles s'en aperçoivent.

Le déni de service : l'attaquant bloque toutes les communicationsavant d'attaquer un parti. L'ordinateur ne peut donc plus répondre etl'attaquant a la possibilité de prendre sa place.

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

Page 21: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

L'attaque "man in the middle"

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

B envoie sa clé publique à A. C l'intercepte, et renvoie à A sapropre 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 chi�re le message avec la clé publique de C (au lieu de celle deB) et l'envoie à B.

C intercepte le message, le déchi�re avec sa clé privée.

C chi�re à nouveau le message, après l'avoir éventuellement modi�é,avec la clé publique de B.

B déchi�re son message avec sa clé privée, et ne se doute de rienpuisque cela fonctionne.

Ainsi, A et B sont chacun persuadés d'utiliser la clé de l'autre, alors qu'ilsutilisent 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

Page 22: Théorie de l'information et codage Master de cryptographie ... · Théorie de l'information et codage Master de cryptographie Cours 7 : introduction à la cryptographie 9 mars 2009

Le "hack" de Trinity (Matrix Reloaded)

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