Sécurité Des Données-Partie4
Sécurité Des Données-Partie4
Sécurité Des Données-Partie4
I T A L 2 0 1 6
I E N S E N S A
A J 1 6 2 0 1 6
En utilisant le code ASCII, on trouve l’équivalence des lettres du message et de la clé (En Hexadécimale)
Le message « m » La clé « K »
4b 41 52 54 45 4e 53 41
49 54 41 4c 32 30 31 36
49 45 4e 53 45 4e 53 41
41 4a 31 36 32 30 31 36
49 54 41 4c 32 30 31 36
(45) = 0100 0101 = K(0,0)
49 45 4e 53 45 4e 53 41
0e 0f 01 15
On aura donc : 7b 64 70 7a
m K= M 0c 0b 1d 12
73 7a 00 00
ab 76 7C 59
21 43 51 da
fe 2b a4 c9
8f da 63 63
ab 76 7C 59 ab 76 7C 59
21 43 51 da 43 51 da 21
fe 2b a4 c9 a4 c9 fe 2b
8f da 63 63 63 8f da 63
Par exemple :
2 3 1 1
1 2 3 1
ab ab
1 1 2 3
3 1 1 2 43 43
Mix column
a4 a4
63 63
ab 76 7c 59
43 51 da 21
ab=(ab*2)XOR(43*3)XOR(a4*1)XOR(63*1)
a4 c9 fe 2b 43=(ab*1)XOR(43*2)XOR(a4*3)XOR(63*1)
63 8f da 63
a4=(ab*1)XOR(43*1)XOR(a4*2)XOR(63*3)
63=(ab*3)XOR(43*1)XOR(a4*1)XOR(63*2)
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par bloc
Le mode AES : chiffrement des données avancées
4. Mélange par colonne
a. Multiplication de chaque colonne par la matrice suivante:
La deuxième colonne va être aussi multipliée par la même matrice de la manière suivante :
4c 4c 59 87 87
b9 b9 1b 10 05
= ”M2”
1e 1e 24 34 8b
c7 c7 55 0f 36
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par bloc
Le mode AES : chiffrement des données avancées
5. Génération et Addition de la clé du tour
Pour générer la clé de chaque tour, on aura besoin d’une colonne de la table ci-dessous :
01 02 04 08 10 20 40 80 1b 36
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00
00
32 30 31
31 36
36 b1 81 B0 86
45 4e 53
53 41
41
K 40 0e 5d 1c
32 30 31
31 36
36 b1 81 b0 86
S-Box
01 45 41 4e 0f 53 5c 41 1d
41 36 05
00 32 b1 30 81 31 B0 36 86
36 41 83
05 00 45 40 4e 0e 53 5d 41 1c
41 36
41 83 00 32 b1 30 81 31 b0 36 86
36
b1 81 B0 86
40 0e 5d 1c
“K1”
b1 81 b0 86
Et pour finir, on applique un XOR entre la clé “K1” el le message resultant “M2” :
b. Addition de la clé 1 par un ou exclusive :
0d 56 db 9a
08 9a a0 83
5e 2a 69 97
76 d4 bf b0
“M2”
“K1”
Fin du tour 1, et le message resultant va subir les mêmes transformations dans le tour 2
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par bloc
Le mode AES : chiffrement des données avancées
Chiffrement et déchiffrement par AES
L'octet en sortie pour le flux de chiffrement est choisi dans le tableau, à l'index S[i] + S[j]. On
retrouve en sortie cette valeur S(S[i] + S[j]) qui sera "XOR" avec l'octet correspondant du texte clair.
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par flux (flot)
Le mode RC4
Algorithme
Chiffrement
Deux étapes sont nécessaires pour le chiffrement : l'initialisation à l'aide de la clé et le
chiffrement du texte clair.
La première étape génère deux tableaux de 256 octets en fonction de la clé : un tableau
K initialisé avec les octets de la clé et un tableau S (appelé table d'états, laquelle sera le flux
appliqué sur le texte clair) initialisé avec les nombres de 0 à 255 permutés pseudo-
aléatoirement selon le tableau K.
Exemples des tableaux (clé de 40 bits)
K = {clé(0),clé(1),clé(2),...,clé(39),clé(0),clé(1),...,clé(39)}
S = {34,55,228,0,...,4}
La deuxième étape consiste aussi en des permutations pour effectuer le chiffrement. À noter
que les additions sont toutes exécutées modulo 256.
i=0
j=0
Pour chaque octet du texte clair
Ajouter 1 à i (i=i+1 mod 256)
Ajouter S[i] à j (j=j+ S[i] mod 256)
Permuter S[i] avec S[j]
n = S[i] + S[j] mod 256)
Retourner le résultat du OU-Exclusif entre S[n] et l'octet du texte clair
Fin Pour
On remarque que le tableau S change à chaque itération en ayant deux éléments permutés.
Déchiffrement
Le déchiffrement est exactement l'inverse du chiffrement.
Considérations
Le RC4 est la propriété de la RSA Security, mais la version allégée ARC4 peut être utilisée
légalement. Il est populaire en étant extrêmement rapide (environ dix fois plus rapide que le
DES) et relativement sécuritaire.
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par flux (flot)
Le mode LFSR
Le LFSR est un registre à décalage à rétroaction linéaire. C’est un mécanisme très souvent utilisé dans
les chiffrements symétriques de flux.
Il génère des séquences de bits pseudo-aléatoires. La série de bits est initialisée par un vecteur
d'initialisation.
Le comportement du vecteur "registre" est défini par rapport à un compteur.
L’étendue des applications est très large : chiffrement des communications, contrôle d'erreurs sur la
transmission de données, auto-test des composants électroniques…
Schéma de fonctionnement d'un LFSR : le bit de rétroaction est obtenue par XOR sur une sélection des bits du registre
Ali KARTIT : Docteur en Sécurité des Réseaux Informatiques alikartit@gmail.com
La cryptographie moderne symétrique
Chiffrement par flux (flot)
Le mode LFSR
Exemples d'algorithmes cryptographiques utilisant les LFSRs :
Codage/décodage des transmissions des téléphones cellulaires
A5/1 : chiffrement des communications GSM, il utilise 3 LFSRs de 19, 22 et 23 bits (64 bits au total) ;
Codage du Bluetooth. E0 : protocole de codage du Bluetooth utilisant quatre LFSR de longueurs 25, 31, 33, et 39 bits (128 bits au total)
Schéma du A5/1 et ses trois registres à décalage. À chaque tour d'horloge, chaque registre est décalé si la valeur de son bit d'horloge (en
orange) est majoritaire parmi celles des trois bits d'horloge (en orange). Le bit de sortie est alors le XOR des bits de sortie des trois registres.