Chiffrement et Déchiffrement du Code de César


Qu'est-ce que le Chiffre de César :

Le Chiffrement de César (ou Code César) est un exemple particulier de chiffrement par substitution. Il tire son nom de Jules César, qui l'utilisait pour chiffrer des documents militaires, souvent avec un décalage de 3 lettres. Ce chiffrement consiste à remplacer chaque lettre du message une à une par une lettre située plus loin dans l'alphabet, suivant un décalage précis. Par exemple pour chiffrer le message suivant :

Jules César

On substitue à chaque lettre du message secret la lettre de l'aphabet située 3 positions plus loin. Ainsi le J est chiffré M, le U est chiffré X, etc. Si on doit chiffrer la lettre Z, on repart du début de l'alphabet et on a chiffre donc avec la lettre C. Cela nous donne le message chiffré suivant :

mxohv fhvdu
Les caractères spéciaux, accents, etc sont supprimés du message chiffré. Il est aussi possible d'enlever les espaces pour éviter que la personne qui lira le message chiffré puisse connaître la longueur des mots.

Jules César aurait utilisé l'alphabet grec pour son code César, rendant le code plus difficile à casser étant donné que le grec à cette époque n'était pas connu des Gaulois. Des chiffrements par décalage existaient bien avant le code César, probablement plus complexes qu'un simple décalage de 3. Il est également suggéré que César aurait utilisé d'autres chiffrements par décalage (source : Chiffrement par décalage).

Le Rot 13 est une variante du Code César dans laquelle le décalage est par convention fixé à 13. Cela dit il reste aussi facile à casser que le chiffre de César habituel.

Cryptanalyse du Chiffre de César :

Le chiffre de César se déchiffre facilement, tout comme la plupart des chiffres monoalphabétiques, par exemple le Carré de Polybe. Il suffit en effet de bruteforcer les 26 positions de l'alphabet (c'est à dire d'essayer chaque possibilité). Au vu du nombre restreint de possibilités, ça ne pose aucun souci technique. L'autre solution pour casser les chiffrements par substitution monoalphabétique, de façon générale, est d'employer l'analyse fréquentielle. Cette technique de cryptanalyse consiste à analyser un texte chiffré pour en faire ressortir les fréquences d'apparition des lettres. Une fois ces fréquences déterminées, il suffit de les comparer à la fréquence moyenne d'apparition des lettres (qui varie selon les langues) pour essayer de deviner par quelles lettres sont remplacées les lettres du message d'origine.
La difficulté de cette méthode reste la nécessité pour l'attaquant d'avoir un échantillon de taille suffisante à analyser pour que les fréquences soient représentatives. Il est à noter qu'on peut ajouter les fréquences des bigrammes et trigrammes les plus courants dans la langue visée.