Vous êtes sur la page 1sur 6

CRYPTOGRAPHIE

INTRODUCTION

Dès que les hommes apprirent à communiquer, ils durent trouver des moyens d’assurer la
confidentialité d’une partie de leurs communications : l’origine de la cryptographie remonte sans
doute aux origines de l’homme.
En effet, le mot cryptographie est un terme générique désigant l’ensemble des techniques
permettant de chiffrer des messages c’est-à-dire de les rendre inintelligibles sans une action
spécifique.
Du bâton nommé « scytale » au Vie siècle avant JC, en passant par le carré de Polybe ou encore le
code de César, on assista au développement plus ou moins ingénieux de techniques de chiffrement
expérimentales dont la sécurité reposait essentiellement dans la confiance que leur accordaient leurs
utilisateurs. Après la première guerre mondiale a lieu une première révolution technologique.
Mais ce n’est qu’à l’avènement de l’informatique et d’Internet que la cryptographie prend tout son
sens. Les efforts conjoints d’IBM et de la NSA conduisent à l’élaboration du DES (Data Encryption
Standard), l’algorithme de chiffrement le plus utilisé au monde durant le dernier quart du XXème
siècle. A l’ère d’Internet, le nombre d’applications civiles de chiffrement (banques,
télécommunications, cartes bleues,…) explose. Le besoin d’apporter une sécurité accrue dans les
transactions électroniques font naître les notions de signature et authentification électronique. La
première technique de chiffrement à clef publique sûre (intimement liée à ces notions) apparaît : le
RSA.
Nous nous tournerons dans un premier temps vers les techniques cryptographiques qui ont marqué
l’histoire, suivis par les techniques actuelles du monde de l’informatique.
Par ailleurs, nous arrêterons également sur la sécurité des algorithmes les plus connus ainsi que sur
les notions de signatures, certificats et fonctions de hachage.
Vocabulaire de base

Cryptologie : Il s’agit d’une science mathématique comportant deux branches : la cryptographie et la


cryptanalyse

Cryptographie : La cryptographie est l’étude des méthodes donnant la possibilité d’envoyer des don-
nées de manière confidentielle sur un support donné.

Chiffrement : Le chiffrement consiste à transformer une donnée (texte, message, ...) afin de la rendre
incompréhensible par une personne autre que celui qui a créé le message et celui qui en est le
destinataire.
La fonction permettant de retrouver le texte clair à partir du texte chiffré porte le nom de
déchiffrement.

Texte chiffré : Appelé également cryptogramme, le texte chiffré est le résultat de l’application d’un
chiffrement à un texte clair.

Clef : Il s’agit du paramètre impliqué et autorisant des opérations de chiffrement et/ou


déchiffrement.
Dans le cas d’un algorithme symétrique, la clef est identique lors des deux opérations. Dans le cas
d’algorithmes asymétriques, elle diffère pour les deux opérations.

Cryptanalyse : Opposée à la cryptographie, elle a pour but de retrouver le texte clair à partir de
textes chiffrés en déterminant les failles des algorithmes utilisés.

Cryptosystème : Il est défini comme l’ensemble des clés possibles (espace de clés), des textes clairs
et chiffrés possibles associés à un algorithme donné.
1. Techniques de cryptographie au cours de l’histoire :
Contrairement à ce que l’on peut penser, la cryptographie n’est pas seulement une technique
moderne, ni un produit de l’ère informatique. En effet de tout temps, les hommes ont ressenti le
besoin de cacher des informations confidentielles. Bien évidemment depuis ses débuts la
cryptographie a grandement évolué. Au cours des siècles, de nombreux systèmes de chiffrage ont été
inventés, tous de plus en plus perfectionnés, et il est vrai que l’informatique y a beaucoup contribué.
Mais au commencement les algorithmes étaient loin d’être aussi complexes et astucieux qu’à notre
époque. La majeure partie des méthodes d’antan reposait sur deux principes fondamentaux : la
substitution (remplacer certaines lettres par d’autres) et la transposition (permuter des lettres du
message afin de le brouiller).

1.1. Substitution mono-alphabétique


Le chiffrement par substitution mono-alphabétique (on dit aussi les alphabets désordonnés) est le
plus simple à imaginer. Dans le message clair, on remplace chaque lettre par une lettre différente.
Donnons un exemple; nous opérons la substitution suivante :

Text
e a b c d e f g h i J k l m n o p p r s t u v W x y z
clair
Text
e W X E H Y Z T K C P J I U A D G L Q M N R s F v n o
codé

Le texte que nous souhaitons crypter est le suivant : 

UN PETIT ROSEAU M'A SUFFI POUR FAIRE FREMIR L'HERBE HAUTE ET TOUT LE PRE ET LES DOUX
SAULES ET LE RUISSEAU QUI CHANTE AUSSI.

Le texte codé est alors :

RA GYNCN QDMYWR U'W MRZZCN GDRQ ZWCQY ZQYUCQ I'KYQXY KWRNY YN NDRN IY GQY YN IYM
HDRV MWRIYM LRC EKWANYAN WRMMC.

Ces méthodes de chiffrement ont plusieurs avantages :

 un nombre impressionnant de méthodes de chiffrement différentes possibles. En effet, pour


la première lettre de la substitution, il y a 26 choix possibles, pour la seconde, 25 choix, etc....
Il existe donc 26! (lire : factorielle 26) façons de coder distinctes. C'est un nombre assez
impressionnant (de l'ordre de 4×1026). Elle donne une impression de sûreté à ce chiffre, car
par exemple il est impossible de déchiffrer un message codé en essayant toutes les
combinaisons possibles. Cette impression de sûreté est toutefois trompeuse…

 une grande facilité pour réaliser le chiffrement ou le déchiffrement : il suffit d'écrire le


tableau comme ci-dessus, et de lire du haut vers le bas (chiffrement) ou du bas vers le haut
(déchiffrement).
Cependant, un des problèmes du code par substitution est de se souvenir de la clé (c'est-à-dire de la
permutation) employée. Il n'est en effet pas facile de se souvenir de 26 lettres dans un ordre
aléatoire. C'est pourquoi il existe des variantes pour se simplifier la vie, et la plus connu et le code de
César

1.1.1. Code de César

La méthode la plus ancienne admise par l’histoire (par substitution alphabétique) est le non moins
connu code de César, consistant en un décalage simple de lettres. Par substitution si l’on remplace le
A par le C, alors le B devient D, le D un F, etc.… César utilisait ce code simple pour transmettre via un
message des consignes à ces généraux d’armées sans qu’il puissent être exploité par un quelconque
ennemi dans le cas ou le message serait intercepté.
Malheureusement il n’y a que 26 façons différentes de chiffrer à l’aide de ce code ce qui en fait un
code très peu sûr. Mais ce qui est d’autant plus insolite, c’est le fait que ce code de « César » est
encore utilisé de nos jours sur Internet avec le ROT13 (rotation de 13 lettres) qui consiste à cacher
des messages afin qu’ils ne soient pas lus involontairement, comme par exemple s’ils dévoilent le
dénouement d’un film ou encore qui donne la réponse à une devinette.

1.2. Substitution poly-alphabétique


La substitution polyalphabétique consiste à substituer une lettre du message en clair, par une autre
choisie en fonction d'un état du cryptosystème, et non plus de manière fixe comme pour la
monosubstitution.
Ce changement de lettre tout au long du processus, s'obtient à l'aide d'une clé, qui indique le nombre
de décalage à réaliser à ce moment. Pour chiffrer la lettre suivante on utilise alors le caractère
suivant de la clé et ainsi de suite. On recommence au début de la clé quand tous ses caractères sont
épuisés. La plus célèbre utilisation de cette technique reste la machine allemande Enigma, utilisée
pendant la Seconde Guerre mondiale.

L'exemple suivant montre une polysubstitution simple avec une clé de longueur 3 qui va décaler les
lettres de l'alphabet :

On définit la clé '1-2-3' qui indique que le premier caractère sera décalé d'une position, le second de
2 et le troisième de 3 positions, etc.

Le mot : WIKIPEDIA donne donc dans ce cas XKNJRHEKD.

Mais si on chiffre le mot : AAAAAAAAA cela donnera BCDBCDBCD.

On s'aperçoit tout de suite que chiffrer une suite identique de lettres donne une indication (entre
autres) sur la longueur de la clé utilisée.

Si la clé utilisée est un mot et non pas un nombre, la position de chaque lettre dans l'alphabet sera
utilisée afin de connaître le nombre de décalage à utiliser pour chacune des lettres. Ainsi, si le mot
«clé» était utilisé au lieu de «123», il faudrait vérifier la position des lettres C, L et E dans l'alphabet.
Le C arrive en 3e position, le L en 12e et le E en 5e. Il faudra donc utiliser la suite 3-12-5 pour
déchiffrer le message. Le mot WIKIPEDIA deviendrait alors ZUPLBJGUF. Prendre note que si les
positions des lettres dans le mot WIKIPEDIA et celles dans le mot CLÉ dépassent 26 (soit la lettre Z) on
recommence à 1 (A). Dans l'exemple précédent, le P (16) additionné au L (12) nous amène à 28. Donc
28 - 26 = 2, ce qui donne B. Lors du déchiffrement, il ne faut pas oublier que l'on doit soustraire la clé
du message chiffré. Donc, il faut prendre ZUPLBJGUF moins la clé, c'est-à-dire Z (26) - C (3), U (21) - L
(12), P (16) - E (5), etc. Si en soustrayant la clé du message, nous obtenons un chiffre négatif, il faut
simplement retourner à la lettre Z (26) et continuer de descendre. Ainsi, admettons que nous avons E
(5) - J (10), nous obtiendrons finalement un U (21).
On sait depuis le xixe siècle que ce principe de polysubstitution possède de nombreuses failles.

1.2.1. Le chiffre de Vigenère

Même si l'on connaissait depuis fort longtemps les faiblesses de la cryptographie par substitution, et
malgré les essais notamment d'Alberti, de Porta et de Trithème, il n'y eut pas entre César et le XVI ès.
de véritable nouveau procédé cryptographique, à la fois sûr (pour les moyens de l'époque) et facile à
utiliser! Blaise de Vigenère, né en 1523, fut l'initiateur d'une nouvelle façon de chiffrer les messages
qui mit en échec les cryptanalystes trois siècles durant. Vigenère était un personnage à multiples
facettes, tantôt alchimiste, écrivain, historien, il était aussi diplomate au service des ducs de Nevers
et des rois de France. C'est en 1586 qu'il publie son Traicté des chiffres ou Secrètes manières d'écrire,
qui explique son nouveau chiffre .

L'idée de Vigenère est d'utiliser un chiffre de César, mais où le décalage utilisé change de lettres en
lettres. Pour cela, on utilise une table composée de 26 alphabets, écrits dans l'ordre, mais décalés de
ligne en ligne d'un caractère. On écrit encore en haut un alphabet complet, pour la clé, et à gauche,
verticalement, un dernier alphabet, pour le texte à coder :

Pour coder un message, on choisit une clé qui sera un mot de longueur arbitraire. On écrit ensuite
cette clé sous le message à coder, en la répétant aussi souvent que nécessaire pour que sous chaque
lettre du message à coder, on trouve une lettre de la clé. Pour coder, on regarde dans le tableau
l'intersection de la ligne de la lettre à coder avec la colonne de la lettre de la clé.
Exemple : On veut coder le texte "CRYPTOGRAPHIE" avec la clé "MATHWEB". On commence par
écrire la clef sous le texte à coder :

Pour coder la lettre C, la clé est donnée par la lettre M. On regarde dans le tableau l'intersection de la
ligne donnée par le C de la première colonne (en vert), et de la colonne donnée par le M de la
première ligne (en violet).

On trouve O. Puis on continue. Sous le R on trouve le A. La lettre dans le tableau correspondant au R


dans la colonne A est R. On remplace donc le R par lui-même. Pour le Y, la lettre de la clé est T. Dans
la colonne T, le Y est remplacé par R. On continue ainsi et on trouve finalement le message chiffré :
ORRWPSHDAIOEI.

Cet algorithme de cryptographie comporte beaucoup de points forts. Il est très facile d'utilisation, et
le déchiffrement est tout aussi facile si on connait la clé. Il suffit, sur la colonne de la lettre de la clé,
de rechercher la lettre du message codé. A l'extrémité gauche de la ligne, on trouve la lettre du texte
clair. Vous pouvez vous entrainer avec le message codé TYQFLJ, qu'on a codé avec la clé EKETHR.

En outre, l'exemple précédent fait bien apparaitre la grande caractéristique du code de Vigenère : la
lettre E a été chiffrée en R, puis en M, la lettre P en W puis en I. Impossible par une analyse
statistique simple de retrouver les lettres les plus courantes. Dernière chose, on peut produire une
infinité de clés et il est très facile de convenir avec quelqu'un d'une clé donnée. Il résista aux travaux
des cryptanalystes jusqu'au XIXè siècle.

Vous aimerez peut-être aussi