D-Le code de Vigenère
D-Le code de Vigenère
Inventé par Blaise de Vigenère, un diplomate français de la renaissance, cette méthode de codage reprend l'idée du code de César mais en faisant varier le décalage en fonction d'une clé. La clé peut être un mot ou une phrase ou même être aussi longue que le message, la clé choisie doit être écrite sous le message autant de fois que nécessaire. Ensuite il faut décaler chaque lettre de la première ligne ( du message ) du numéro d'ordre de la lettre qui lui est associée ( celle de la clé qui est juste en dessous ) le numéro d'ordre pour A est 0, pour B est 1,etc.
On peut aussi appliquer ce code avec le tableau de Vigenère ci-dessous :
Prenons un exemple :
Si l'on veut coder le message VIVE LA PREMIERE avec la clé TPE , on inscrit sous le message VIVE LA PREMIERE la clé TPET PE TPETPETP et on lit à l'aide du tableau pour trouver le contenu de la troisième ligne qui sera le message codé: avec en abscisse la lettre du message et en ordonnée la lettre de la clé, la lettre qui se trouve à l'intersection de la ligne et de la colonne associées est la lettre du message codé.
VIVE LA PREMIERE
TPET PE TPETPETP
OXZX AE IGIFXIKT
Le message VIVE LA PREMIERE codé par la clé TPE est donc OXZX AE IGIFXIKT.
Pour décoder ce message en connaissant la clé, il suffit d'effectuer le même processus que pour coder, mais en sens inverse.
Par contre, si la clé est inconnue, il est extrêmement compliqué de décoder le message car contrairement au code César, il n'y a pas que 25 possibilités de décalage mais une infinité ( tous les mots, phrases, paragraphes possibles ). Cette technique de codage est donc beaucoup plus sécurisée à condition de garder la clé secrète, ou plutôt connue du destinataire et de lui seul.
Chiffrement
On commence par écrire la clé, en la répétant en boucle, au-dessous du texte en clair.
Exemple :
La clé est : MUSIQUE
Le texte à coder est : « j'adore écouter la radio »
J'ADORE ECOUTER LA RADIO
M'USIQU EMUSIQU EM USIQU
Pour chaque lettre en clair, on sélectionne la colonne correspondante et pour une lettre de la clé, on sélectionne la ligne adéquate, puis au croisement de la ligne et de la colonne on trouve la lettre chiffrée.
Lettre en clair (colonne) |
Lettre de la clé (ligne) |
Lettre chiffrée |
J |
M U |
V V W H Y I O I M B U L P M L S L Y I |
Le texte chiffré est alors : V'UVWHY IOIMBUL PM LSLYI
Déchiffrement
Si on veut déchiffrer un texte ; on commence par écrire la clé, en la répétant en boucle, au-dessous du texte chiffré.
Exemple :
La clé est : MUSIQUE
Le texte a codé est : V'UVWHY IOIMBUL PM LSLYI
Pour chaque lettre chiffrée : on cherche cette lettre chiffrée dans la ligne correspondant à la lettre de la clé, puis on trouve la lettre en clair en haut de la colonne sélectionnée.
Lettre de la clé (ligne) |
Lettre chiffrée (dans cette ligne) |
Lettre en clair |
M U U S I Q U E M U S I Q U |
V U V W H Y I O I M B U L P M L S L Y T |
J A D T E R L A R A D I O |
Le texte en clair est alors: J'ADORE ECOUTER LA RADIO
Concernant le décodage du code de Vigenère, il y aurait une hypothèse selon laquelle Charles Babbage est le premier à y être parvenu environ vers 1854. Il y aurait également un officier prussien nommé Friedrich Kasiski qui réussit à briser ce codage à peu près au même moment tout en n'ayant jamais entendu parler des recherches de Babbage. Cet officier a publié en 1863 Die Geheimschriften und die Dechiffrierkunst, où il présente les tests qui portent son nom et qui permettent de briser ce code : les tests de Kasiski permettent d'estimer la taille de la clé utilisée.
Durant l'antiquité et le moyen-âge, les bases de la cryptologie sont donc posées. On note déjà une avancée au cours de cette période avec le codage César qui évolue en codage de Vigenère beaucoup plus complexe à briser. D'autres avancées suivront jusqu'au XXème siècle, mais ce n'est rien par rapport aux avancées qui vont avoir lieu durant la seconde guerre mondiale.