Vous êtes sur la page 1sur 36

Principes de la

sécurité
informatique
C

1
Objectifs du Cours
1. Etude des principes de base de la
cryptographie moderne: Symétrique et
Asymétrique (Cryptographie moderne)
et les fonctions d’hachage
2. Etude de la fiabilité des crypto-systèmes
et des principes de la cryptanalyse
3. Etude des mécanismes et Services et de
sécurité des réseaux et des
applications

2
Chapitre 1:
Introduction, définitions et
historique

3
Introduction
Depuis longtemps, les hommes ont tenté de rendre sécuritaires
leurs communications. Différentes techniques ont été utilisées.
Au début, il s’agissait seulement de cacher l’existence du
message. Cette technique s’appelle la stéganographie. Au cours
de la transmission, personne ne doit savoir qu’un message secret
existe (ex: encre sympathique).
Dans la cryptologie, un message en claire est transformé en une
forme ambigüe par tout le monde. Lors de sa réception, seul le
destinataire légitime peut renversé le processus et obtenir le
message original en claire.

4
Introduction
La cryptologie peut être définie littéralement comme la science du secret. Elle se
compose de deux grande branches distinctes:

La Cryptologie

La Cryptographie La Cryptanalyse
Etude et conception Analyse des informations
des algorithmes de chiffrés pour retrouvé les
chiffrement informations original sans
avoir la permission

5
Introduction

La cryptographie est l'ensemble des techniques


permettant de chiffrer des messages. Le verbe crypter
est parfois utilisé mais on lui préfèrera le verbe chiffrer.
La cryptographie est essentiellement basée sur
l'arithmétique : Il s'agit dans le cas d'un texte de
transformer les symboles qui composent le message en
chiffres ensuite de faire des calculs sur ces chiffres

6
Introduction

Le fait de coder un message de telle façon à le rendre


secret s'appelle chiffrement. La méthode inverse,
consistant à retrouver le message original, est appelée
déchiffrement.
Les termes chiffrement/ déchiffrement sont
généralement confondus avec les termes cryptage
/décryptage.

7
Terminologie Crypto-système
Clé Ke Clé Kc
Canal de
Chiffrement transmission Déchiffrement
Message M Message M
C=E(M,Ke) M=D(C,Kc)=D(E(M))
Texte chiffré : Texte en claire:
Texte en claire: cryptogramme
Algorithme de Algorithme de « un texte.. »
« un texte.. » «♀
chiffrement E déchiffrement D
♠ ♣ ▼◊
♫◙◘€£ »

Emetteur A:Cryptage/Chiffrement Récepteur B:Décryptage/Déchiffrement

Espion C: Cryptanalyse

8
Buts de la cryptographie
1.Confidentialité des informations stockées/manipulées:
Le fait de s'assurer que l'information n'est seulement
accessible qu‘à ceux dont l'accès est autorisé
Algorithmes cryptographiques
- Chiffrement symétrique : chiffrement par blocs ou
par flots.
- Chiffrement asymétrique.

9
Buts de la cryptographie

2. Intégrité des informations stockées/manipulées


L’information ne doit subir aucune altération ou
destruction volontaire ou accidentelle, lors de son
traitement, conservation ou transmission
Détection de l’altération de l’information par une entité
non-autorisé
Algorithmes cryptographiques
- Fonction de hachage

10
Buts de la cryptographie

3. Authentification d'utilisateurs/de ressources


Utilisation d'algorithmes d‘authentification pour la
Vérification de l’identité d’une entitéAlgorithmes
cryptographiques
- Signature numérique
- Fonction de hachage à clé

11
Buts de la cryptographie

4. Disponibilité des informations et des données


Vérifier que le expéditeur et le destinataire sont les entités
qui ont envoyé ou reçu l’information
Algorithmes cryptographiques
- Signature numérique
- Fonction de hachage

12
Sécurité d’un crypto-système

Un crypto-système est sûre (sécurisé) s’il garantie


qu’aucune personne ne possèdent pas la clef de
chiffrement ne peut déchiffré le message en un temps
finie.
La sécurité ne doit reposé que sur la clef de
chiffrement, les algorithmes du
chiffrement/déchiffrement sont supposées connue
par tout le monde:

13
Sécurité d’un crypto-système

En 1883, August Kerckhoffs publia les principes


suivants de sécurité d’un crypto-système
« La sécurité repose sur le secret de la clef en non sur le
secret de l’algorithme »

« Le déchiffrement sans la clef doit être impossible »

« Trouver la clef à partir du couple (M,C) doit être


impossible en un temps raisonnable ».

14
Sécurité parfaite

15
Définition et propriétés
L’opérateur logique XOR (eXclusive OR, ou
exclusif), noté ⊕, est omniprésent en
cryptographie :

16
Sécurité parfaite

Par exemple si la clé est k = 11010101010010101001 et le message à


transmettre m = 11110000111100001111 ; le message crypté est alors
c=mk= 00100101101110100110

La sécurité parfaite nécessite la satisfaction difficile (voir impossible ) de


deux conditions :
◦ Taille de la clé aussi grande que le message
◦ Nombre de clés équivalent au nombre de message (infinie)
Les deux conditions ne peuvent pas être satisfaites pour des systèmes
pratiques (sur internet par exemple), pour cela , la sécurité d’un crypto-
système reposera sur la sécurité algorithmique (complexité).

17
Classes des crypto-systèmes

On peut classé les algorithmes de cryptographie selon plusieurs critères


Selon le mode d’utilisation de la clé :
Chiffrement symétrique :la même clé est utilisé pour le chiffrement et
le déchiffrement;
Chiffrement asymétrique: deux clés sont utilisées , l’une pour chiffré
(clé publique) et l’autre pour déchiffré (clé privé).
Selon le mode d’opération
Chiffrement par Bloc: le texte en claire est divisé en blocs de taille
identiques
Chiffrement par flot: le texte est considéré comme un flot de bits
(chiffrement par bits )
18
Classes des crypto-systèmes
Chiffrement

Symétrique Asymétrique Hachage

Par Bloc Par Flot •RSA •MD4


•EL Gamel •MD5
ECB CBC CFB •Defie Hellman •SHA-1
•…… •……….
•DES •RC4
•3DES •RC5
•Blowfish •…….
•AES…..
19
Crypto-systèmes Symétrique: clé secrète
La même clé est utilisé pour le chiffrement et pour le déchiffrement.
L’échange de la clé doit se faire sur un canal sécurisé. La sécurité repose
totalement sur la confidentialité de la clé.
KC=KD
Clé Clé
01010000111 01010000111

Texte clair Cryptage Décryptage Texte clair


Internet
Internet
Voici le Voici le
numéro numéro
de ma de ma
carte de ♀ carte de
crédit crédit
111111, ♠♣▼◊ 111111,
♫◙◘€£
¥₪Ω‫٭‬

Texte crypté
Emetteur Récepteur
20
Crypto-systèmes Asymétrique: clé publique
La clé du chiffrement diffère de celle du déchiffrement, la première est
publique (connue par tout le monde), et la deuxième est secrète.

KC≠KD
Clé publique Clé privée
du récepteur du récepteur

Texte clair Cryptage Décryptage Texte clair


Internet
Internet
Voici le Voici le
numéro numéro
de ma de ma
carte de ♀ carte de
crédit crédit
111111, ♠♣▼◊ 111111,
♫◙◘€£
¥₪Ω‫٭‬

Texte crypté
Emetteur Récepteur
21
Fonctions de Hachage
Fonctions à sens unique : pour un entier x, il est simple de calculer H(x),
mais étant donner H(x), il est pratiquement impossible de déterminer
x. La fonction de hachage permet d’extraire une empreinte de taille
fixe qui caractérise les données.

Texte clair Texte clair

Internet
Internet
Hashage =? Hashage
Empreinte Empreinte Empreinte
reçue recalculée

1) = Le texte reçu est intègre


Empreinte Empreinte
reçue recalculée

2) ≠ Le texte reçu est altéré


Empreinte Empreinte 22
reçue recalculée
Historique de la cryptographie
La cryptographie est utilisée depuis l'antiquité
– Il y a 4000 ans par les égyptiens
• Cryptographie ancienne
– Alphabet de la langue
Ex: Français : 26 lettres
• Chiffrement de documents physiques
– Domaine militaire et diplomatique
– Chiffrement symétrique
• Chiffre de César, de Vigénère, Scytale, Enigma, …

23
Historique de la cryptographie
• Cryptographie moderne
– L'apparition de l'informatique et prolifération
des systèmes de communication
– Alphabet = {0, 1}
– Protection de l’information
numérique
• Domaine militaire, diplomatique, commercial
• Protection de la vie privée
– Chiffrement symétrique
– Chiffrement asymétrique
• Distribution de clés
• Signature numérique 24
Chiffrement de César
60-50 avant JC Jules César décale les lettres de l'alphabet
d'une quantité fixe dans les communications du
gouvernement.
Le chiffre de César est une des plus simple méthodes
d'encryptage connues.
C'est une technique de codage par substitution, c'est-a-dire
que chaque lettre du texte en clair est remplacée par une
autre lettre a distance fixe dans l'alphabet.
Par exemple, si l'on utilise un décalage de 3, A serait
remplace par D, B deviendrait E, et ainsi de suite. Cette
méthode doit son nom a Jules César, qui utilisait cette
technique pour certaines de ses correspondances.

25
Chiffrement de César
Cette technique de chiffrement est-elle sécuritaire?
On intercepte par exemple le message
FAGEMYREMPURZV_EMZR_R FMNMDAZR
Essayons différents décalages…
1: E_FDLXQDLOTQYUZDLYQZQZELMLC_YQ
2: DZECKWPCKNSPXTYCKXPYPYDKLKBZXP
3… 4… 5… 6… 7… 8… 9… 10… 11… 12…
13: TOUS_LES_CHEMINS_MENENT_A_ROME
Après 13 essai, le message est parfaitement déchiffré sans
avoir au préalable la valeur du décalage.
Clairement, le chiffrement de César n’est pas sécuritaire.

26
Chiffrement de Vigenère
Au 16ième siècle, Blaise de Vigenère (1523-1596), inventa un code
simple. Il s'agit d’une amélioration du chiffre par décalage.
Vigenère est le premier à avoir introduit la notion de clé, on choisit un
mot de code on l’utilise pour chiffrer. Il est répété autant de fois que la
taille du texte claire, ensuite chaque lettre du texte est décalé en
fonction de la valeur numérique correspondante au symbole de la clé
associer.
Exemple :clé=ALAIN={1,12,1,9,14}
LE_CODE_DE_VIGENERE_EST_IL_INDECHIFFRABLE (41 symbole)
ALAINALAINALAINALAINALAINALAINALAINALAINA (41 symbole)
MQALBEQAMSAGJPSOQSNNFDUIWMLJWRFOIRTGCBKZF (41 symbole)

27
Chiffrement de Vigenère

Mathématiquement, on considère que les lettres de l'alphabet sont


numérotées de 0 à 25 (A=0, B=1 ...). La transformation lettre par lettre
se formalise simplement par : Chiffré[i] = (Texte [i]+ Clé[i]) modulo
26
(Texte + Clé) modulo 26 correspond au « reste de la division entière de
(Texte + Clé) par 26 », les ordinateurs le font très bien !
« A » + LettreInconnue = LettreInconnue, soit du point de vue
mathématique : 0 + x = x.
Le chiffre de Vigenère est-il indéchiffrable?

28
Chiffrement de HILL
Les lettres sont d’abord remplacées par leur rang dans
l’alphabet. Les lettres Pk et Pk+1 deviennent Ck et Ck+1

Les composantes de cette matrice doivent être des entiers


positifs. De plus la matrice doit être inversible dans Z26.
Cependant, sa taille n’est pas fixée à 2. Elle grandira selon le
nombre de lettres à chiffrer simultanément.
Chaque texte clair (P1 et P2) sera chiffré (C1 et C2) selon :
C1 = a*P1 + b*P2 (mod26)
C2 = c*P1 + d*P2 (mod26)
29
Chiffrement de HILL
Pour déchiffrer, le principe est le même que pour le chiffrement : on
prend les lettres deux par deux, puis on les multiplie par une matrice

Cette matrice doit être l’inverse de matrice de chiffrement (modulo 26).


Ordinairement, cet inverse est:

Si on connaît une partie du texte clair et sa version cryptée, on peut en


déduire des informations sur la clé, voire la clé entière. Le chiffrement
de Hill est donc vulnérable a la cryptanalyse :attaque sur texte clair
connu

30
Chiffrement de HILL: Exemple
On souhaite coder le mot ELECTION avec la clé (ou matrice) de
chiffrement
On remplace par des nombres et on sépare en blocs de 2 :
4 , 11|4, 2|19, 8|14, 13
On calcule les vecteurs images :

On retranscrit en lettres : PAWITJDO


On peut remarquer un des intérêts du chiffre de Hill sur l'exemple : la
lettre E est une fois codée avec P, l'autre fois avec W. C'est ce que l'on
appelle un chiffrement polyalphabetique.
31
Chiffrement Affine
On dit qu’une fonction est affine lorsqu’elle est de la forme x a*x + b,
c’est-à-dire un polynôme de degré 1.
L’idée est d’utiliser comme fonction de chiffrement une fonction affine
du type y = (a*x + b) mod 26, où a et b sont des constantes, et où x et y
sont des nombres correspondant aux lettres de l’alphabet (A=0,B=1,...).
On peut remarquer que si a = 1, alors on retrouve le chiffre de César où
b est le décalage (le k du chiffre de César).
Pour le chiffre affine, la clé est constituée de (k1, k2) où k1, k2  [0, 25] et
telle que pgcd(k1, 26) = 1.
Le chiffrement en lui-même est donné par ci = f(mi) = k1* mi + k2 mod
26.
Pour le déchiffrer, il vient mi = f−1(ci) = k1−1*(ci − k2) mod26.
32
Chiffrement Affine

Par le chiffre affine, on obtient 312 clés possibles. En effet, pour obéir à
la propriété de k1, il n’y a que 12 choix possibles. Et puisque k2 peut
prendre n’importe valeur dans [0, 25], il vient 12*26 = 312.
Le chiffrement affine n’est pas du tout sécurisé, car le nombre de clé
est très réduit et peut être facilement cassé par une attaque brute. Il
est généralement utilisé pour des fins pédagogiques.

33
Cryptographie moderne

A partir de 1960, les choses ont changés. A partir de ce point, la


cryptographie entre dans son ère moderne avec l'utilisation intensive
des ordinateurs.
Dans la cryptographie moderne, les textes sont remplaces par des
chiffres. Via l'utilisation de la table ASCII, par exemple. Les problèmes
sont de plus en plus mathématiques.
Horst Feistel à proposé le principe des tours de transformations par
blocs, dans son algorithme Lucifer.En novembre 1976 , le DES (Data
Encryption Standart), fut adopte comme standard au USA.
Le DES a été ensuite remplacer par 3DES et blewfish; jusqu'a
l’adoption de AES comme standard international en l’an 2000.

34
Cryptographie moderne

D’un autre coté, dés 1977, D.Rivest, A.Shamir et L.Adleman proposent


un nouvel principe, celui de la cryptographie asymétrique avec leurs
algorithme RSA, basé sur les nombres premiers.
Une version amélioré du RSA :Le PGP est proposé par Philip
Zimmermann en 1991 pour être utilisé a grand échelle et sur des
machines personnelles
En 1994, Taher ElGamel a publier un nouvel standard asymétrique
connue sous algorithme d’ElGamel, utilisent le problème du logarithme
discret, il est considéré actuellement comme un standard comparable à
RSA.

35
Conclusion

La sécurité d’un algorithme de chiffrement repose sur plusieurs


facteurs tel la taille de la clé, et la complexité algorithmique du calcule,
la résistance a un type particulier d’attaques n’exclu pas la vulnérabilité
a d’autres attaques possibles.
Dans les chapitres qui suivent, on essayera d’étudier les principaux
algorithmes de chiffrement moderne, leurs points forts et faibles, leurs
vulnérabilités ainsi que leurs complexité algorithmique.
Généralement un chiffrement est considéré comme fiable jusqu’à
preuve du contraire!

36

Vous aimerez peut-être aussi