Académique Documents
Professionnel Documents
Culture Documents
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Cryptographie
Olivier Frider
ETR6
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Cryptographie
Advanced Encryption System - AES :
1.
2.
3.
4.
5.
INTRODUCTION :.............................................................................................................................3
UN PEU D'HISTOIRE... :....................................................................................................................3
MOTIVATIONS :..............................................................................................................................3
LES LOIS DE MATRE SHANNON :......................................................................................................4
CRYPTOGRAPHIES SYMTRIQUE ET ASYMTRIQUE :................................................................................4
5.1) PRINCIPE DE LA CRYPTOGRAPHIE SYMTRIQUE :.......................................................................................4
5.2) PRINCIPE DE LA CRYPTOGRAPHIE ASYMTRIQUE :.....................................................................................5
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
1. INTRODUCTION :
Ce document a pour but d'exposer les principes de base de la cryptographie. Il ne constitue nanmoins pas
une initiation complte et exhaustivement dtaille mais expose plutt les principales notions ncessaires
l'tude de l'algorithme AES. L'tude d'AES commencera par les motivations qui ont conduit son
laboration, puis les mcanismes successifs lis l'algorithme lui-mme seront prsents.
2. UN PEU D'HISTOIRE... :
Depuis fort longtemps, les activits de l'homme caractres religieux, guerrier et, plus rcemment,
commercial, ont conduit ce dernier chiffrer l'information. 2000 ans avant notre re, des scribes gyptiens
recouraient des hiroglyphes modifis pour masquer la signification de certains textes. En 1700 avant
Jsus-Christ, les Crtois utilisaient des disques de chiffrement (disques de Phastos) pour, semble-t-il,
dissimuler d'ventuels lecteurs non-initis des secrets destins aux membres de leur caste.
Les premires utilisations militaires connues datent de 400 avant notre re, par les Spartiates. Ainsi le
gnral spartiate Lysandre utilisait-il un bton appel scytale sur lequel s'enroulait un ruban en spirale.
Le ruban contenait le texte et, une fois enroul, il tait possible de lire le texte verticalement sur le bton.
Un bton de diamtre incorrect ne restituait pas le texte original, ce qui faisait du diamtre du bton la cl
du chiffrement.
Jules Csar recourait une substitution simple de lettres pour communiquer avec ses gnraux; la cl
constituait la distance de substitution. Ainsi, une cl de 3 le conduisait remplacer la lettre A par la
lettre D , la lettre B par la lettre E , etc.
Au Moyen Age, l'Eglise s'inquite de la circulation d'ides subversives et finit par imposer l'interdiction de
crypter l'information. Ceci freine l'volution de la cryptographie et il faudra attendre le XVme sicle et
l'invention de l'imprimerie pour que le dveloppement de cette science puisse se poursuivre.
L'apparition des communications radio dans le domaine militaire va ensuite rendre la cryptographie
incontournable. La guerre de 1914-1918 est l'un des premiers conflits utiliser systmatiquement la
cryptographie.
La guerre de 1939-1945 va ensuite introduire les machines chiffrer qui vont remplacer le chiffrement
jusqu'ici effectu la main. La plus clbre de ces machines est sans doute l'Enigma de l'arme allemande
dont l'tude mobilisa nombre de brillants mathmaticiens polonais (dont Marian Rejewski) dans un
premier temps, puis chez les Allis (parmi lesquels on peut citer Alan Turing).
3. MOTIVATIONS :
L'histoire a dmontr le besoin de la cryptographie et l're de l'conomie de march et de la concurrence
ne fait que le confirmer. Il est aujourd'hui vital, pour les entreprises, d'tre en mesure de garder une
certaine confidentialit dans leurs affaires.
On peut citer comme exemple l'anecdote du transporteur arien europen Airbus qui aurait perdu un juteux
contrat au profit de l'amricain Boeing. Tandis que l'affaire tait sur le point d'tre conclue, Boeing aurait
prsent une offre plus favorable et ainsi vol le contrat destin Airbus. Car c'est bien de vol qu'il
s'agit, le contrat ayant t obtenu par espionnage (Echelon au service de l'conomie...). Ceci n'est qu'une
anecdote, mais elle suffit dmontrer la ncessit de la confidentialit.
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Internet, lui aussi, ne sera pas ce qu'il est sans la cryptographie. Il serait en effet impensable de songer
une quelconque activit financire impliquant une monnaie lectronique sans chiffrage (achats online et
transactions en tout genre).
Plus rcemment, des expriences pilotes ont t mises sur pieds dans le but de proposer aux citoyens
concerns de voter par Internet. Ici aussi, la confidentialit doit tre assure afin de garantir le secret de
vote.
La cryptographie symtrique.
La cryptographie asymtrique.
Si les origines de la premire sont trs anciennes (2000 av. J.-C), le principe de la cryptographie
asymtrique n'apparat qu'en 1976.
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
L'metteur (Alice) et le destinataire (Bob) doivent se mettre d'accord pralablement sur la cl (k)
utiliser. Pour ceci, ils ne doivent pas utiliser le rseau de communication standard qui est susceptible
d'tre espionn (par Eve).
Chaque fois qu'Alice veux transmettre un message (m) Bob, elle utilise sa cl secrte pour chiffrer
(c=Ek(m)), et elle envoie le rsultat de ce chiffrage par l'intermdiaire du mme canal.
Bob utilise son tour la mme cl secrte et le mme algorithme public pour dchiffrer le message
cod qu'il a reu.
Les principaux problmes de cette mthode sont les suivants :
Si Eve parvient dcouvrir la cl, alors il pourra dchiffrer tous les messages encods avec cette
cl. Il peut mme se faire passer pour Alice ou Bob.
Il est impratif que la cl ne soit connue que par Alice et Bob. Or l'acheminement de la cl entre
Alice et Bob est un problme non trivial. On parle de canal sr pour dsigner le mdia qui
servira cet change. Dans la pratique, il est difficile de trouver un canal sr.
Pour garantir la scurit du chiffrage symtrique, il faut donc viter de transmettre la cl puisque le canal
de transmission n'est pas sr. Rsoudre ce problme revient trouver une solution au paradoxe suivant :
- Comment transmettre la cl au destinataire sans la transmettre ?
C'est en 1976 que ce problme apparemment insoluble fut rsolu par deux chercheurs amricains :
Whitfield Diffie et Martin Hellman (assists par Ralph Merkle). Ainsi naquit le principe de la
cryptographie asymtrique, considr comme la plus grande russite de la cryptographie moderne.
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Le texte clair est divis en blocs dont la taille est fixe et dpendante de la longueur de la cl.
Puis, l'algorithme est appliqu successivement chacun de ces blocs. Les algorithmes recourant
cette mthode sont dits de blocs .
Le texte clair est chiffr bit aprs bit en temps rel. Cette mthode est adapte au chiffrage
d'information de nature synchrone comme, par exemple, la parole avec GSM. Les algorithmes
recourant cette mthode sont dits de flot .
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Initial Round.
N Rounds.
Final Round.
C'est la premire et la plus simple des tapes. Elle ne compte qu'une seule
opration : Add Round Key.
N tant le nombre d'itrations. Ce nombre varie en fonction de la taille de la cl
utilise. 128 bits N=9, 192 bits N=11, 256 bits N=13. Cette deuxime
tape est constitue de N itrations comportant chacune les quatre oprations
suivantes : Sub Bytes, Shift Rows, Mix Columns, Add Round Key.
Cette tape est quasiment identique l'une des N itrations de la deuxime
tape. La seule diffrence est qu'elle ne comporte pas l'opration Shift Columns.
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
32
88
31
E0
43
5A
31
37
F6
30
98
A8
8D
A2
Cl :
(Key)
2B
28
AB
09
7E
AE
F7
CF
07
15
D2
15
4F
34
16
A6
88
3C
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
A0
9A
E9
3D
F4
C6
F8
E3
E2
8D
48
BE
2B
2A
08
E0
B8
1E
27
BF
B4
41
11
98
5D
52
AE
F1
E5
30
10
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
E0
B8
1E
27
BF
B4
41
11
98
5D
52
AE
F1
E5
30
E0
B8
1E
BF
B4
41
27
5D
52
11
98
30
AE
F1
E5
03
01
01
D4
E0
B8
1E
01
02
03
01
BF
B4
41
27
01
01
02
03
5D
52
11
98
03
01
01
02
30
AE
F1
E5
matrice constante
matrice State
11
matrice Result
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Ainsi, pour obtenir le premier rsultat (ligne1, colonne1), on procde comme suit :
02
03
01
01
D4
E0
B8
1E
01
02
03
01
BF
B4
41
27
01
01
02
03
5D
52
11
98
03
01
01
02
30
AE
F1
E5
matrice constante
matrice State
matrice Result
a(x)
b(x)
a(x) = 0x7+0x6+0x5+0x4+0x3+0x2+1x1+0x0 = x
b(x) = 1x7+1x6+0x5+1x4+0x3+1x2+0x1+0x0 = x7+x6+x4+x2
Maintenant que a(x) et b(x) sont connus, il reste les multiplier modulo le polynme de
degr 8 m(x) = x8+x4+x3+x+1. Ce polynme est irrductible dans GF(28), il ne peut tre
divis que par lui-mme et par 1 :
a(x)b(x) mod m(x) = x(x7+x6+x4+x2) mod
a(x)b(x) mod m(x) = x8+x7+x5+x3
mod
x8+x4+x3+x+1
x8+x4+x3+x+1
Le rsultat de cette expression est le polynme reprsentant le produit 02D4 dans le champ
de Galois GF(28).
Ce calcul ne sera men terme car l'objectif tait juste de montrer le lien entre Rijndael et
les champs de Galois. Il ne prsente pas de rel intrt dans la mesure o la deuxime
mthode est non seulement plus simple, mais aussi plus adapte l'implmentation dans des
circuits programmables.
12
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
13
(=36)
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Il reste additionner modulo 2 les quatre rsultats des multiplications pour obtenir le
premier lment de la matrice Result :
Result[1,1] = 10110011 11011010 01011101 00110000
Result[1,1] = 00000100 = 04h
L'opration Mix Columns est particulirement laborieuse puisque les 15 autres lments de la matrice
doivent tous tre calculs de cette manire !
Ceci est bien trop long pour tre dtaill. Voici donc le rsultat final : la matrice Result (cette matrice
devient naturellement la matrice State de la prochaine opration) :
04
E0
48
28
66
CB
F8
06
81
19
D3
26
E5
9A
7A
4C
14
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
28
AB
09
01
02
04
08
10
20
40
80
1B
36
7E
AE
F7
CF
00
00
00
00
00
00
00
00
00
00
15
D2
15
4F
00
00
00
00
00
00
00
00
00
00
16
A6
88
3C
00
00
00
00
00
00
00
00
00
00
Cl originale (Key)
Les quatre vecteurs composant la matrice Key sont appels Words (ce sont des mots de 32 bits). On
commence par calculer le cinquime vecteur (Wi) :
Wi-4
Wi-1 Wi
2B
28
AB
09
7E
AE
F7
CF
15
D2
15
4F
16
A6
88
3C
15
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
On prend le vecteur Wi-1 auquel on applique une opration appele RotWord qui consiste en un simple
dcalage des quatre bytes du vecteur vers le haut. Au rsultat on applique encore l'opration Sub Bytes :
Wi-1
RotWord(Wi-1)
SubBytes{RotWord(Wi-1)}
09
CF
8A
CF
4F
84
4F
3C
EB
3C
09
01
Le vecteur obtenu (SubBytes{RotWord(Wi-1)}) doit encore tre additionn modulo 2 avec le vecteur Wi-4
ainsi que le premier vecteur de la matrice Rcon :
Wi-4
Rcon(colonne1)
2B
SubBytes{RotWord(Wi-1)}
8A
01
7E
84
00
XOR
15
XOR
00
16
01
00
28
AB
09
A0
7E
AE
F7
CF
FA
15
D2
15
4F
FE
16
A6
88
3C
17
EB
16
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Le deuxime vecteur de la deuxime cl s'obtient plus simplement que le premier. En effet, il est donn
par Wi = Wi-4 XOR Wi-1 :
Wi-4
Wi-1 Wi
2B
28
AB
09
A0
2B
28
AB
09
A0
88
7E
AE
F7
CF
FA
7E
AE
F7
CF
FA
54
15
D2
15
4F
FE
15
D2
15
4F
FE
2C
16
A6
88
3C
17
16
A6
88
3C
17
B1
Wi-1 Wi
2B
28
AB
09
A0
88
2B
28
AB
09
A0
88
23
7E
AE
F7
CF
FA
54
7E
AE
F7
CF
FA
54
A3
15
D2
15
4F
FE
2C
15
D2
15
4F
FE
2C
39
16
A6
88
3C
17
B1
16
A6
88
3C
17
B1
39
Le quatrime et dernier vecteur de la deuxime cl s'obtient de la mme manire que les deuxime et
troisime (Wi = Wi-4 XOR Wi-1) :
Wi-4
Wi-1 Wi
2B
28
AB
09
A0
88
23
2B
28
AB
09
A0
88
23
2A
7E
AE
F7
CF
FA
54
A3
7E
AE
F7
CF
FA
54
A3
6C
15
D2
15
4F
FE
2C
39
15
D2
15
4F
FE
2C
39
76
16
A6
88
3C
17
B1
39
16
A6
88
3C
17
B1
39
05
Les quatre vecteurs de la deuxime cl sont maintenant dfinis. La matrice Key a doubl de taille. Elle
contient pour l'instant les cls des Rounds 0 et 1 :
2B
28
AB
09
A0
88
23
2A
7E
AE
F7
CF
FA
54
A3
6C
15
D2
15
4F
FE
2C
39
76
16
A6
88
3C
17
B1
39
05
Round0 Key
Round1 Key
17
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Il reste faire 9 fois l'intgralit de cette dmarche d'extension de la cl pour trouver les 9 autres cls
secondaires...
2B
28
AB
09
A0
88
23
2A
...
7E
AE
F7
CF
FA
54
A3
6C
...
15
D2
15
4F
FE
2C
39
76
...
16
A6
88
3C
17
B1
39
05
...
Round0 Key
Round1 Key
Round2 Key
Round10 Key
10. DCHIFFRAGE :
Toutes les oprations ralises lors du chiffrage sont rversibles, condition d'avoir la cl bien entendu :
18
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Bob procde l'extension de la cl de la mme manire qu'Alice l'a fait lors du chiffrage.
Les additions modulo 2 (XOR) effectues lors de l'opration Add Round Key sont rversibles (en
effet, (A XOR B) XOR B = A).
L'opration Sub Bytes est inverse en utilisant la table S inverse (Inverse S-Box). Si par exemple la
S-Box indique le byte F7 (ligne 2, colonne 6), alors la Inverse S-Box restituera le byte 26 (ligne F,
colonne 7).
Les dcalages de l'opration Shift Rows sont inverss, c'est--dire effectus vers la droite.
La multiplication matricielle de l'opration Mix Columns ncessite une inversion de la matrice. Une
fois la matrice inverse obtenue, la manipulation est la mme que pour l'opration Mix Columns faite
lors du chiffrage.
A cause du calcul de la matrice inverse, le dchiffrage est environ 30% plus lent que le chiffrage.
11. CONCLUSION :
Le principe de la thermodynamique suffit dmontrer que la recherche exhaustive de cls comportant 192
ou 256 bits est irralisable. D'autre part, l'utilisation de la S-Box constitue une relle difficult pour les
cryptanalystes. L'opration Mix Columns combine avec Shift Rows fait que, aprs les nombreux rounds,
tous les bits de sortie dpendent de tous les bits d'entre. Ceci aussi rend la cryptanalyse difficile.
L'utilisation des cls secondaires construites par extension de la cl originale, quant elle, complique les
attaques lies la cl en cassant les symtries.
Rijndael est un algorithme sr et va probablement le demeurer encore une vingtaine d'annes. Plus que
l'volution technologique, les progrs en mathmatiques sont de plus en plus la cause de vulnrabilit des
algorithmes de cryptographie modernes. Ceci s'explique d'une part par le fait que les attaques exhaustives
(force brute) deviennent irralisables (cls trop longues), mais aussi par les nombreuses thses de doctorat
que ce domaine de la technologie de l'information suscite.
12. SOURCES :
Introduction aux techniques de cryptographie Markus Jaton (octobre 2002)
Elments de cryptographie Stephan Robert ( mai 2003)
Specification for the Advanced Encryption Standard (AES) FIPS Publication 197 ( novembre 2001)
Cryptography and network security Williams Stallings chez Prentice Hall
Ars Cryptographica, un excellent site didactique sur la cryptographie en gnral :
http://www.apprendre-en-ligne.net/crypto/
Cryptographie en gnral :
http://www.securite.org/db/crypto/
19
Prsentation personnelle
Cryptographie
AES
Olivier Frider
ETR6
mai 2004
Rijndael :
http://www.nist.gov/public_affairs/releases/aesq&a.htm
http://security.ece.orst.edu/koc/ece478/ws/slides/ch05.pdf
http://ece.gmu.edu/reports/aes_power_analysis_report.pdf
http://www.computerworld.com/securitytopics/security/story/0,10801,45282,00.html
Rijndael et les champs de Galois :
http://www.math.umn.edu/~garrett/crypto/rijndael_intro/
http://www.ulb.ac.be/inforsciences/files/MathAES5posters.pdf
Divers :
http://www.chez.com/nopb/crypto2.html
http://www.di.ens.fr/~pointche/Documents/Slides/s2002_cachan.pdf
Un grand merci M. Gilles Primault pour sa prcieuse aide concernant les champs de Galois.
Few persons can be made to believe that it is not quite an easy thing
to invent a method of secret writing which shall baffle investigation.
Yet it may be roundly asserted that human ingenuity cannot concoct a
cipher which human ingenuity cannot resolve...
Edgar Allan Poe
A Few Words on Secret Writing, 1841.
20