Académique Documents
Professionnel Documents
Culture Documents
Classe: LISI3
I. Généralités
II. Chiffrement symétrique
III. Chiffrement asymétrique
IV. Fonctions de hachage
V. Signature numérique
2
I. Généralités
3
I. Généralités
Phases d’authentification :
• Identification : Identité numérique Personne
4
I. Généralités
Bases de l’authentification :
5
I. Généralités
Mots de passe :
6
I. Généralités
Mots de passe :
• Il existe des moyens mnémotechniques pour fabriquer et retenir des
mots de passe forts.
– La méthode phonétique : utiliser les sons de chaque syllabe pour
fabriquer une phrase facile à retenir. Par exemple, la phrase « j'ai
acheté huit cd pour cent euros cet après‐midi » deviendra
ght8CD%E7am
– La méthode des premières lettres : Cette méthode consiste à
garder les premières lettres d'une phrase (citation, paroles de
chanson, ...) en veillant à ne pas utiliser que des minuscules. Par
exemple, la citation « un tiens vaut mieux que deux tu l'auras »
deviendra 1TvmQ2tl'@
7
I. Généralités
Problèmes liés aux mots de passe :
• L’utilisation de mots de passe nécessite leurs gestion (création,
Modification, Déblocage, Suppression )
– Problème : stockage, transfert sur le réseau, rejeu
(réutilisation frauduleuse), mémorisation difficile pour les
utilisateurs, gestion pour l’administrateur
• La plupart des systèmes sont configurés de manière à bloquer
temporairement le compte d'un utilisateur après un certain nombre de
tentati ves de connexion infructueuses.
– Un pirate peut difficilement s'infiltrer sur un système de cette façon.
– En contrepartie, un pirate peut se servir de ce mécanisme d'auto‐
défense pour bloquer l'ensemble des comptes utilisateurs afin de
provoquer un déni de service.
• La plupart des mots de passe des systèmes sont stockés de manière
chiffrée (cryptée) dans un fichier ou une base de données.
– Lorsqu'un pirate obtient un accès au système et obtient ce fichier, il lui
est possible de tenter de casser le mot de passe de l'utilisateur.
8
I. Généralités
– L'attaque par dictionnaire consiste à tester une série de mots issus d'un
dictionnaire. (dictionnaire des noms/marques, …)
• Craquage hybride combinant force brute et dictionnaire
9
I. Généralités
–Les key loggers : Ce sont des logiciels qui sont installés sur le poste
de l'utilisateur, permettent d'enregistrer les frappes de claviers
saisies par l'utilisateur.
10
I. Généralités
11
I. Généralités
Exemples d’OTP :
• La liste à biffer ou TAN (Transaction Authentification Number). Il
s'agit de rentrer un OTP provenant d'une liste de codes fournie
(banque).
• Matrix card authentication ou authentification à carte matricielle : Il
s'agit de rentrer un OTP provenant d'une carte matricielle fournie.
• Utilisation des SMS: l'utilisateur reçoit un OTP directement sur son
téléphone portable.
12
I. Généralités
13
I. Généralités
14
I. Généralités
La biométrie :
Toutes caractéristiques humaines
– Reconnaissance Iris
– Empreintes digitales ou de la mains
– Reconnaissance des lèvres
– Cartographie des veines
– Reconnaissance de visages
– Reconnaissance d’oreille (et échos du conduit auditif)
– Spectre d’absorption de la peau
– Voie
– ADN
– Problèmes :
• Création des authentifiants
(fiabilité)
• Liaison lecteur Serveur, rejeu
15
I. Généralités
16
I. Généralités
Terminologie:
17
I. Généralités
Classification :
Cryptologie
cryptographie cryptanalyse
À clé À clé
Protocoles
symétrique publique
Chiffrement Chiffrement
par bloc par flux
18
I. Généralités
exacts et complets.;
• la non répudiation, la possibilité de vérifier que
l’expéditeur et le destinataire sont bien les parties qui
disent avoir respectivement envoyé ou reçu le message..
19
I. Généralités
20
I. Généralités
21
I. Généralités
Types d’attaques
Passive
Ecoute
Alice Bob
Eve
Bob Modification
Alice
Trudy
Active
Bob Fabrication
Alice
Trudy
Bob Re-jeux
Alice
Trudy
22
I. Généralités
Primitives Cryptographiques
Fonctions de hachage
Primitives
Permutations
sans clés
Suites aléatoires
Fonctions de hachage
Par bloc
Chiffrement
Primitives Primitives à
Par flux
de sécurité clé symétrique Signatures
Suites pseudo-aléatoires
Authentification
23
I. Généralités
Chiffrement
24
I. Généralités
Primitives Cryptographiques
Fonctions de hachage
Primitives
Permutations
sans clés
Suites aléatoires
Fonctions de hachage
Par bloc
Chiffrement
Primitives Primitives à
Par flux
de sécurité clé symétrique Signatures
K = K’
Suites pseudo-aléatoires
K ≠ K’ Authentification
25
II. Chiffrement symétrique :
26
II. Chiffrement symétrique :
Cryptanalyse
Texte chiffrement
Internet Déchiffrement Texte clair
clair
Voici le
Voici le
numéro
numéro
de ma ☺☼♀☻ de ma
carte de ♠♣▼╫◊ carte de
crédit
111111, ♫◙◘€£ crédit
111111,
¥₪Ω٭
Texte crypté
Emetteur Récepteur
27
II. Chiffrement symétrique :
28
II. Chiffrement symétrique :
29
II. Chiffrement symétrique :
30
II. Chiffrement symétrique :
31
II. Chiffrement symétrique :
32
II. Chiffrement symétrique :
• Le chiffrement par bloc (en anglais block cipher) est une méthode de
chiffrements symétrique qui découpe le texte à chiffrer en blocs de taille
généralement fixe.
• La taille de bloc est comprise entre 32 et 512 bits
– Dans le milieu des années 1990 le standard était de 64 bits
34
II. Chiffrement symétrique :
Cipher Block Chaining mode (CBC) :
o L'entrée de l'algorithme de chiffrement est le XOR du texte en
clair 64 bits suivant et du texte chiffré 64 bits précédent.
o Le vecteur d'initialisation (IV) doit être connu de
l'expéditeur/du destinataire, mais secret de l'attaquant.
35
II. Chiffrement symétrique :
Cipher FeedBack mode (CFB):
o convertit le chiffrement par bloc en chiffrement par flux
o Fonctionne en temps réel : chaque caractère crypté et transmis
immédiatement
o Le texte chiffré précédent est utilisé comme entrée de chiffrement
pour produire une sortie pseudo-aléatoire
o En effectuant XOR entre la sortie et le texte en clair, on obtient le
texte chiffré.
36
II. Chiffrement symétrique :
Output FeedBack mode (OFB):
o Convertit le chiffrement par bloc en chiffrement par flux
o Similaire à CFB, sauf que l'entrée de l'algorithme de chiffrement
précède la sortie de chiffrement
o Inconvénient : plus vulnérable aux attaques de modification de
flux de messages
37
II. Chiffrement symétrique :
Utilisateurs Clés
100 5000
1000 500000
38
II. Chiffrement symétrique :
39
II. Chiffrement symétrique :
40
II. Chiffrement symétrique :
Diffie‐Hellman: Exemple
41
II. Chiffrement symétrique :
42
II. Chiffrement symétrique :
Plaintext: 64 bits
Ciphertext: 64 bits
43
II. Chiffrement symétrique :
44
II. Chiffrement symétrique :
Clé du DES
• La clé du DES est une chaîne de 64 bits (succession de 0 et de 1),
dont seuls 56 bits servent réellement à définir la clé.
– Les bits 8,16,24,32,40,48,56,64 sont des bits de parité (=bits de
détection d'erreur)
– Le 8ème bit est fait en sorte que sur les 8 premiers bits, il y ait un
nombre impair de 1. Par exemple, si les 7 premiers bits sont
1010001, le 8ème bit est 0. Ceci permet d'éviter les erreurs de
transmission
• Il y a donc pour le DES 256 clés possibles, soit environ ... 72 millions
de milliards de possibilités
45
II. Chiffrement symétrique :
DES Algorithm
64 bits
Plaintext
IP
32 bits 32 bits
L0 R0
f K1
48 bits
L1=R0 R1 L0 f ( R 0 , K1 )
K2
f
48 bits
K
L2 =R1 R 2 L1 f ( R 1 , K 2 ) Key
scheduler 56 bits
L15=R14 R 15 L14 f ( R 14 , K 15 )
f K16
48 bits
L16=R15
R16 L15 f (R15 , K16 )
IP-1
Ciphertext
64 bits
46
II. Chiffrement symétrique :
47
II. Chiffrement symétrique :
et R0 :
48
II. Chiffrement symétrique :
Round
Les blocs Ln et Rn sont soumis à un ensemble de transformations
répétées appelées round, représentées sur ce schéma, et dont les
détails sont donnés ci-dessous :
Ln Kn+1 Rn
(32 bits) (48 bits) (32 bits)
+ S + E
(32 bits) (48 bits) (48 bits)
Rn+1
(32 bits)
49
II. Chiffrement symétrique :
Expansion permutation
48 bits
S-Box Substitution
32 bits
P-Box Permutation
32 bits
Li Ri Key
50
II. Chiffrement symétrique :
51
II. Chiffrement symétrique :
Expansion permutation
48 bits
S-Box Substitution
32 bits
P-Box Permutation
32 bits
Li Ri Key
52
II. Chiffrement symétrique :
53
II. Chiffrement symétrique :
54
II. Chiffrement symétrique :
55
II. Chiffrement symétrique :
56
II. Chiffrement symétrique :
57
II. Chiffrement symétrique :
Expansion permutation
48 bits
S-Box Substitution
32 bits
P-Box Permutation
32 bits
Li Ri Key
58
II. Chiffrement symétrique :
OU exclusif
Tous ces résultats issus de P sont soumis à un OU Exclusif, avec le L0 de
Itération
Toutes les étapes précédentes (round) sont répétées 16 fois.
59
II. Chiffrement symétrique :
60
II. Chiffrement symétrique :
DES Algorithm
64 bits
Plaintext
IP
32 bits 32 bits
L0 R0
K1
f
48 bits
L1=R0 R 1 L 0 f (R 0 , K1 )
K2
f
48 bits
K
L2 =R1 R 2 L1 f (R 1 , K 2 ) Key
scheduler 56 bits
IP-1
Ciphertext 64 bits
61
II. Chiffrement symétrique :
Expansion permutation
48 bits
S-Box Substitution
32 bits
P-Box Permutation
32 bits
Li Ri Key
62
II. Chiffrement symétrique :
63
II. Chiffrement symétrique :
64
II. Chiffrement symétrique :
65
II. Chiffrement symétrique :
66
II. Chiffrement symétrique :
Cleartext: M = 0123456789ABCDEF16
1ère étape : Génération des clés :
Clé sur 64 bits en héxadécimal: K = 133457799BBCDFF1 16
Clé sur 64 bits en binaire :
K = 00010011 00110100 01010111 01111001 10011011 10111100 11011111 11110001
1. Permutation PC1 :
Permutation utilisant le tableau PC1 :
67
II. Chiffrement symétrique :
68
II. Chiffrement symétrique :
4. Regroupement des deux blocs de 28 bits en un seul bloc de 56 bits :
69
II. Chiffrement symétrique :
70
II. Chiffrement symétrique :
R1 = L 0 f (R0, K1)
71
II. Chiffrement symétrique :
E(R+
0) = 011110 100001 010101 010101 011110 100001 010101 010101
6. Fonction de substitution
Regrouper les données sur 48 bits en 8 blocs de 6 bits chacun
Kn + E(Rn-1) =B1B2B3B4B5B6B7B8
7. Permutation P-Box
Le bloc de 32 bits obtenu est alors soumis à une fonction de permutation P.
S(B) = 0101 1100 1000 0010 1011 0101 1001 0111
f (R0, K1) = 0010 0011 0100 1010 1010 1001 1011 1011
8. Calcul de R
Rn = Ln-1 + f(Rn-1, Kn)
f (R0, K1) : ? 0010 0011 0100 1010 1010 1001 1011 1011
74
II. Chiffrement symétrique :
9. Encore 15 round
K2 = 011110 011010 111011 011001 110110 111100 100111 100101
75
II. Chiffrement symétrique :
Remarque : Texte ASCII Hex Binaire
76
II. Chiffrement symétrique :
77
II. Chiffrement symétrique :
78
II. Chiffrement symétrique :
79
II. Chiffrement symétrique :
80
II. Chiffrement symétrique :
•Un corps fini (Finite Field), parfois aussi appelé corps de Galois (Galois
Field), est un ensemble avec un nombre fini d'éléments. En gros, un
corps de Galois est un ensemble fini d'éléments dans lequel on peut
additionner, soustraire, multiplier et inverser.
•En cryptographie, on s'intéresse presque toujours aux corps à nombre
fini d'éléments, que l'on appelle corps finis ou corps de Galois. Le
nombre d'éléments dans le corps est appelé ordre ou cardinalité du
champ.
81
II. Chiffrement symétrique :
82
II. Chiffrement symétrique :
GF(pm)
m=1 m>1
GF(p) GF(p m)
Prime Fields Extension Fields
Les exemples les plus intuitifs de corps finis Dans AES, le corps fini contient 256
sont les corps d'ordre premier, c'est-à-dire éléments et est noté GF(28). Pour les
les corps avec n=1. Les éléments du corps transformations S-Box et MixColumn, AES
GF(p) peuvent être représentés par des traite chaque octet du chemin de données
entiers 0,1, . . . , p−1. Les deux opérations interne comme un élément du champ
du corps sont l'addition d'entiers GF(28) et manipule les données en
modulaires et la multiplication d'entiers effectuant des opérations arithmétiques
modulo p. dans ce corps fini.
83
II. Chiffrement symétrique :
84
II. Chiffrement symétrique :
85
II. Chiffrement symétrique :
86
II. Chiffrement symétrique :
87
II. Chiffrement symétrique :
AddRoundKey
•Il s’agit d’une addition binaire des bytes de la donnée avec des bytes de
la clé (soit alors par l’application de l’XOR)
88
II. Chiffrement symétrique :
SubBytes
•Il s’agit d’une étape de substitutions de bytes des données selon une
matrice S‐Box prédéfinie.
89
II. Chiffrement symétrique :
SubBytes
•Par exemple si s11={53}, il sera substitué par la case dans la ligne 5 et
colonne 3, donc par {ed}.
S-Box
90
II. Chiffrement symétrique :
ShiftRows
•Décalage circulaire des lignes li de la donnée par i‐1 bytes
91
II. Chiffrement symétrique :
MixColumns
•Chaque byte représente un polynôme. On applique à ces polynômes
des multiplications par 03 (P(x)=x+1) , 02 (P(x)=x) ou 01 (P(x)=1) aux
colonnes.
92
II. Chiffrement symétrique :
Génération de la clé
•Les quatre vecteurs composant la matrice Key sont appelés Words, ce sont des
mots de 32 bits.
•Nous allons commencer tout d’abord par calculer le cinquième vecteur (W i).
Puis, nous allons prendre le vecteur Wi‐1 et nous lui appliquons une opération
appelée RotWord qui consiste en un simple décalage des quatre octets du
vecteur vers le haut. Au résultat, nous appliquons l’opération SubBytes que nous
avons déjà définie.
93
II. Chiffrement symétrique :
Exemple
94
II. Chiffrement symétrique :
A. AddRoundKey
⊕ =
B. Encryption round
95
II. Chiffrement symétrique :
S-Box
96
II. Chiffrement symétrique :
Aucune rotation
97
II. Chiffrement symétrique :
. =
. = ?
98
II. Chiffrement symétrique :
x8+x7+x5+x3 x8+x4+x3+x+1
x8+x4+x3+x+1 1
x7+x5+x4+x+1
99
II. Chiffrement symétrique :
• {03.bf} :
03 = 0000 0011 x+1
bf = 1011 1111 x7+x5+x4+x3+x2+x+1
{03.bf} = (x+1).(x7+x5+x4+x3+x2+x+1)
= (x8+x6+x5+x4+x3+x2+x)+(x7+x5+x4+x3+x2+x+1)
= x8+x7+x6+1 ∉ GF(28)
= x7+x6+x4+x3+x mod g(x)
x8+x7+x6+1 x8+x4+x3+x+1
x8+x4+x3+x+1 1
x7+x6+x4+x3+x
100
II. Chiffrement symétrique :
• {01.5d} :
01 = 0000 0001 1
5d = 0101 1101 x6+x4+x3+x2+1
{01.5d} = 1.(x6+x4+x3+x2+1)
= x6+x4+x3+x2+1 ∈ GF(28)
• {01.30} :
01 = 0000 0001 1
30 = 0011 0000 x5+x4
{01.30} = 1.(x5+x4)
= x5+x4 ∈ GF(28)
{02.d4} + {03.bf} + {01.5d} + {01.30}
= (x7+x5+x4+x+1) + (x7+x6+x4+x3+x) + (x6+x4+x3+x2+1) + (x5+x4)
= x2
0000 0100
= (04)16
101
II. Chiffrement symétrique :
{01.d4} + {02.bf} + {03.5d} + {01.30}
• {01.d4} :
01 = 0000 0001 1
d4 = 1101 0100 x7+x6+x4+x2
{01.d4} = 1.(x7+x6+x4+x2)
= x7+x6+x4+x2 ∈ GF(28)
• {02.bf} :
02 = 0000 0010 x
bf = 1011 1111 x7+x5+x4+x3+x2+x+1
{02.bf} = x.(x7+x5+x4+x3+x2+x+1)
= x8+x6+x5+x4+x3+x2+x ∉ GF(28)
= x6+x5+x2+1 mod g(x)
x8+x6+x5+x4+x3+x2+x x8+x4+x3+x+1
x8+x4+x3+x+1 1
x6+x5+x2+1
102
II. Chiffrement symétrique :
• {03.5d} :
03 = 0000 0011 x+1
5d = 0101 1101 x6+x4+x3+x2+1
{03.5d} = (x+1).(x6+x4+x3+x2+1)
= (x7+x5+x4+x3+x)+(x6+x4+x3+x2+1)
= x7+x6+x5+x2+x+1 ∈ GF(28)
• {01.30} :
01 = 0000 0001 1
30 = 0011 0000 x5+x4
{01.30} = 1.(x5+x4)
= x5+x4 ∈ GF(28)
{01.d4} + {02.bf} + {03.5d} + {01.30}
= (x7+x6+x4+x2) + (x6+x5+x2+1) + (x7+x6+x5+x2+x+1) + (x5+x4)
= x6+x5+x2+x
0110 0110
= (66)16
103
II. Chiffrement symétrique :
⊕ =
RoundKey
104
II. Chiffrement symétrique :
105
II. Chiffrement symétrique :
106
II. Chiffrement symétrique :
2/ Addition (XOR) du résultat avec le « word » wi-4 et avec une constante Rcon
donnée.
•Pour les « word » restants wi , ils sont calculés en additionnant (XOR) le « word »
107
II. Chiffrement symétrique :
w0 w1 w2 w3
w0 w1 w2 w3 w4
Rotword Subbytes
108
II. Chiffrement symétrique :
Rcon
w0 w1 w2 w3 w4
109
II. Chiffrement symétrique :
w0 w1 w2 w3 w4 w5
w0 w1 w2 w3 w4 w5
110
II. Chiffrement symétrique :
111
III. Chiffrement asymétrique :
Primitives Cryptographiques
Fonctions de hachage
Primitives
Permutations
sans clés
Suites aléatoires
Fonctions de hachage
Par bloc
Chiffrement
Primitives Primitives à
Par flux
de sécurité clé symétrique Signatures
K = K’
Suites pseudo-aléatoires
K ≠ K’ Authentification
112
III. Chiffrement asymétrique :
113
III. Chiffrement asymétrique :
114
III. Chiffrement asymétrique :
Texte Texte
chiffrement Internet Déchiffrement
clair
clair Voici le
Voici le
numé ro numé ro
de ma de ma
carte de carte de
cré dit : ☺☼♀☻ cré dit :
111111 ♠♣▼╫◊ 111111
♫◙◘€£
¥₪Ω٭
115
III. Chiffrement asymétrique :
Emetteur Récepteur
Texte crypté
116
III. Chiffrement asymétrique :
RSA : Introduction
•RSA: Rivest, Shamir et Adleman du MIT en 1977
•Système le plus connu et le plus largement répandu
•100 à 1000 fois plus lent que DES
•basé sur l'élévation à une puissance dans un champ fini sur des nombres
entiers modulo un nombre premier
•Le nombre d’exponentiation prend environ O((log n)3) opérations → facile
•emploie de grands nombres entiers (par exemple 1024 bits)
•sécurité due à la factorisation de grands nombres
•Le nombre de factorisation prend environ O(e log n log log n) opérations →
difficile
•Usage : confidentialité, authentification
117
III. Chiffrement asymétrique :
RSA : Principe
•Choisir p et q, deux nombres premiers distincts et de taille à peu près égales
•Noter le « module de chiffrement » n=pq: La longueur de n devrait être entre
1024 et 2048 bits
•Calculer l'indicatrice d'Euler (Ordre du groupe multiplicatif) : (n)=(p‐1)(q‐1)
•Choisir e, un entier premier avec (n), appelé « exposant de chiffrement »
(pgcd(e, (n))=1).
•Comme e est premier avec (n), il est, d'après le théorème de Bachet‐
Bézout, inversible mod (n), c'est‐à ‐dire qu'il existe un entier d tel que
ed1 mod (n). d est l'exposant de déchiffrement.
•Le couple (e,n) est appelé clé publique
•Le couple (d,n) est appelé clé privée.
118
III. Chiffrement asymétrique :
•Déchiffrement :
– Conformément à la manière dont il a été chiffré, le message reçu doit être
composé d'une succession d'entiers C de valeurs comprises entre 0 et n-1.
– Pour chaque entier C il faut calculer M≡ (Cd) mod n.
119
III. Chiffrement asymétrique :
RSA – Exemple 1
• Bob choisi p=61 et q=53
– n = pq = 3233
– (n) = 60 x 52 = 3120
120
III. Chiffrement asymétrique :
RSA – Exemple 1
d=e‐1 mod (n) = 2753 mod 3120 ?
e.d 1 mod (n) 17.d 1 mod 3120
Algorithme d'Euclide étendu :
pgcd((n),e)=1.
pgcd(3120,17)=1 Bezout: il existe u et v tel que 3120 u + 17 v =1
3120 = 183 * 17 + 9 9 = 3120 * 1 – 17 * 183
17 =1*9 +8 8 = 17 * 1 – 9 * 1
= 17 * 1 – (3120 * 1 – 17 * 183 )
= 17 * 184 – 3120 * 1
9 =1*8 +1 1=9*1–8*1
= (3120 * 1 – 17 * 183 )- (17 * 184 – 3120 * 1)
= 3120 * 2 – 17 * 367
d = -367 + 3120 = 2753
121
III. Chiffrement asymétrique :
RSA – Exemple 1
enc(123) = (123^17) mod 3233
= 855 ?
Méthode « modulo exponentiation » :
17(10) = 10001(2)
1 0 0 0 1
123 2197 3173 367 855
122
III. Chiffrement asymétrique :
RSA– Exemple 2
Saddam souhaiterait envoyer le message suivant à George : « Kisses
from Iraq ». Malheureusement, Vladimir les espionne, et pourrait
intercepter ce message. Nos deux compères vont donc chiffrer leurs
échanges avec la méthode RSA.
•Étape 1 :
– George a choisi p = 37 et q = 43. Il en déduit n = 37 × 43 =
1591, et (n) = 36 × 42 = 1512.
– Il choisit ensuite e = 19, qui est premier avec 1512. L’inverse de
19 modulo 1512 est d=955.
– George peut donc maintenant publier sa clé publique, par
exemple sur son site internet : e = 19 et n = 1591
123
III. Chiffrement asymétrique :
RSA– Exemple 2
•Étape 2
124
III. Chiffrement asymétrique :
RSA– Exemple 2
•Étape 3
125
III. Chiffrement asymétrique :
RSA– Exemples
Exemple 1:
126
III. Chiffrement asymétrique :
RSA– Exemples
Exemple 2 :
On calcule n = pq = 29 * 37 = 1073 .
• On doit choisir e au hasard tel que e et (n) soient premiers entre eux. On prend
e = 71.
127
III. Chiffrement asymétrique :
RSA– Exemples
On va encrypter le message 'HELLO'. On va prendre d’abord le code ASCII de chaque
caractère et on les met bout à bout : m = 72(H) 69(E) 76(L)76(L) 79(O) . Ensuite, il
faut découper le message m en blocs qui comportent moins de chiffres que n . n
comporte 4 chiffres, on va donc découper notre message m en blocs de 3 chiffres :
726 976 767 900 (on complète avec des zéros) par suite on encrypte chacun de ces
blocs :
128
III. Chiffrement asymétrique :
RSA– Exemples
On peut reconstituer le message chiffré avec d :
C'est à dire la suite de chiffre 726 976 767 900.On retrouve notre message en
clair 72 69 76 76 79 c’est à dire 'HELLO'.
129
III. Chiffrement asymétrique :
RSA– Exemples
Exemple 3 :
130
III. Chiffrement asymétrique :
RSA– Exemples
Exemple 3 : Réponse :
1. La taille de chaque bloc est égale à 3. Elle doit être plus petit que la longueur
de n qui est égale à 4.
2. 73(I)76(L)70(F)65(A)73(I)84(T)66(B)69(E)65(A)85(U)
737 670 657 384 666 965 850
737 ^7 mod 5141
670 ^7 mod 5141
657 ^7 mod 5141
384 ^7 mod 5141
666 ^7 mod 5141
965 ^7 mod 5141
850 ^7 mod 5141
131
III. Chiffrement asymétrique :
132
III. Chiffrement asymétrique :
133
III. Chiffrement asymétrique :
Attaques du RSA
Il existe trois approches pour attaquer le RSA :
• Recherche par force brute de la clé (impossible étant donné la taille
des données),
• Attaques mathématiques (basées sur la difficulté de calculer (n), la
factorisation du module n) (Méthode Fermat, Méthode Euler,
Méthode Pollard’s Rho) :
– factoriser n=p*q et par conséquent trouver (n) et puis d,
– déterminer (n) directement et trouver d,
– trouver d directement.
• Attaques de synchronisation (Timing attack).
134
III. Chiffrement asymétrique :
Attaques mathématiques
• Durée des attaques en s
135
III. Chiffrement asymétrique :
Avantages et inconvénients
• Avantages :
– Pas besoin d’établir un canal sûr pour la transmission de la clé.
136
IV. Fonctions de hachage :
• Une fonction de hachage est une fonction qui, à partir d'une donnée
fournie en entrée, calcule une empreinte servant à identifier
rapidement la donnée initiale.
137
IV. Fonctions de hachage:
• Propriétés à respecter pour une fonction de hachage cryptographique :
– Preimage resistance (one-way) : Pour n'importe quelle valeur hash y, il est très difficile de
trouver une valeur x telle que h(x) = y.
– 2nd-preimage resistance (weak collision resistance) : Etant donné une valeur x, il est très
difficile de trouver une valeur x' ≠ x qui vérifie h(x’) = h(x).
– Collision resistance (strong collision resistance) : Il est très difficile de trouver deux valeurs
x et x’ telles que h(x) = h(x’).
• Différentes fonctions de hachage :
– MD5 (Message Digest 5) : crée une empreinte sur 128 bits à partir de blocs de 512 bits
– SHA1 (Secure Hash Algorithm 1) : crée une empreinte sur 160 bits à partir de blocs de 512
bits
– SHA2 ( Secure Hash Algorithm 2) : crée une empreinte sur 256, 384 ou 512 bits
138
IV. Fonctions de hachage:
Principe du hachage
Texte clair Texte clair
Internet
Hachage =? Hachage
Empreinte Empreinte
reçue
recalculée
Empreinte Empreinte
reçue
recalculée
139
IV. Fonctions de hachage:
Principe du hachage
Principe du Hachage : Vérification de la validité et de l’intégrité des
messages reçus
140
IV. Fonctions de hachage:
Exemple de fonctionnement
141
IV. Fonctions de hachage:
Exemple: MD5
• MD5: Message Digest 5, est une fonction de hachage cryptographique qui permet
d'obtenir l'empreinte numérique d'un fichier / message
• Inventé par Ronald Rivest (le R de RSA)
• En 1996, une faille qualifiée de grave (possibilité de créer des collisions à la demande) est
découverte et indique que MD5 devrait être mis de côté au profit de fonctions plus
robustes comme SHA‐1.
• MD5 est encore largement utilisé comme outil de vérification lors des téléchargements
pour valider l'intégrité de la version téléchargée grâce à l'empreinte.
• MD5 peut aussi être utilisé pour calculer l'empreinte d'un mot de passe ; c'est le
système employé dans GNU/Linux : plutôt que de stocker les mots de passe
dans un fichier, ce sont leurs empreintes MD5 qui sont enregistrées; quelqu'un qui
lirait ce fichier ne pourra pas découvrir les mots de passe.
142
IV. Fonctions de hachage:
MD5: Principe
• Etape 1 : Complétion
143
IV. Fonctions de hachage:
MD5: Principe
• Etape 2 : Initialisation
144
IV. Fonctions de hachage:
MD5: Principe
• Etape 3 : Calcul itératif :
145
IV. Fonctions de hachage:
MD5: Principe
• Étape 4 : Écriture du résumé
146
IV. Fonctions de hachage:
MD5: Principe
147
V. Signature numérique :
148
V. Signature numérique :
Propriétés de signature :
• Impossible de contrefaire une signature : seul le détenteur de la clef
secrète peut signer en son nom.
• La signature ne doit plus être valide si le message clair à été modifier.
• Impossible de réutiliser une signature.
• Le signataire ne doit pas pouvoir nier avoir signé un message.
Un schéma de signature garantit :
• L'identité de la personne émettant le message,
• L'intégrité des données reçues, c'est-à-dire l'assurance que le message
n'a pas été modifier lors de sa transmission,
• La non-répudiation du message, ce qui signifie que l’émetteur du
message ne pourra pas nier en être l'auteur.
149
V. Signature numérique :
150
V. Signature numérique :
Signature RSA
151