Cryptanalyse du chiffre de Vigenère - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs est disponible ici.

Le chiffre de Vigenère est un chiffrement basé sur une substitution polyalphabétique : une lettre de l'alphabet dans le texte en clair peut être chiffré de plusieurs manières. Ce principe remonte à des travaux antécédents à ceux de Blaise de Vigenère au XVIe siècle mais Vigenère fut l'un des premiers à présenter ce type de chiffrement sous la forme d'une table avec la présence d'une clé secrète. Le chiffre de Vigenère restera inviolable pendant plusieurs siècles.

On pense que Charles Babbage effectua la première véritable cryptanalyse du chiffre de Vigenère vers 1854. En parallèle, un officier prussien à le retraite, Friedrich Wilhelm Kasiski parvint au même résultat sans avoir eu vent des travaux de Babbage puisque ce dernier ne les avait pas publiés. Kasiski rédigea Die Geheimschriftren und die Dechiffrir-kunst en 1863 où il présentait le test qui allait porter son nom : le test de Kasiski qui permet d'estimer la taille de la clé.

Première étape : déterminer la longueur de la clé

Il consiste à chercher des répétitions dans le texte chiffré. Considérons par exemple le mot-clé " ABCD " qui sert à chiffrer " MESSAGER TRES MESQUIN MESOPOTAMIEN ".

Clé répétée A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C
Texte en clair M E S S A G E R T R E S M E S Q U I N M E S O P O T A M I E N
Texte chiffré M F U V A H G U T S G V M F U T U J P P E T Q S O U C P I F P

Dans l'exemple ci-dessus, le trigramme " MES " est chiffré en " MFU " deux fois et " PET " une fois. Babbage et Kasiski comprirent que des répétitions de cette sorte leur offraient la prise dont ils avaient besoin pour attaquer Vigenère.

Ces séquences redondantes peuvent indiquer deux caractéristiques :

  • soit la même séquence de lettres du texte clair a été chiffrée avec la même partie de la clef
  • soit deux suites de lettres différentes dans le texte clair auraient (possibilité faible) par pure coïncidence engendré la même suite dans le texte chiffré.

Le premier cas étant le plus probable, on calcule le nombre de lettres entre deux séquences identiques. Dans notre cas, il y a 12 lettres entre les deux " MFU ", on en déduit que la longueur de la clé est un diviseur de 12 (sinon la clé et les deux " MES " ne seraient pas alignés). La clé peut donc posséder soit 12, 6, 4, 3 ou 2 lettres (avec une lettre, nous aurions un chiffrement monoalphabétique facilement cassé avec une analyse fréquentielle). Avec un texte plus long, on découvrirait d'autres séquences qui permettraient d'affiner le résultat et réduire la taille de la clé à une ou deux possibilités.

Exemple sur un texte plus long

Soit un texte chiffré de plusieurs centaines de caractères. Ce texte paraît a priori aléatoire et pourtant il contient des redondances intéressantes.

KQOWEFVJPUJUUNUKGLMEKJINMWUXFQMKJBGWRLFNFGHUDWUUMBSVLPS
NCMUEKQCTESWREEKOYSSIWCTUAXYOTAPXPLWPNTCGOJBGFQHTDWXIZA
YGFFNSXCSEYNCTSSPNTUJNYTGGWZGRWUUNEJUUQEAPYMEKQHUIDUXFP
GUYTSMTFFSHNUOCZGMRUWEYTRGKMEEDCTVRECFBDJQCUSWVBPNLGOYL
SKMTEFVJJTWWMFMWPNMEMTMHRSPXFSSKFFSTNUOCZGMDOEOYEEKCPJR
GPMURSKHFRSEIUEVGOYCWXIZAYGOSAANYDOEOYJLWUNHAMEBFELXYVL
WNOJNSIOFRWUCCESWKVIDGMUCGOCRUWGNMAAFFVNSIUDEKQHCEUCPFC
MPVSUDGAVEMNYMAMVLFMAOYFNTQCUAFVFJNXKLNEIWCWODCCULWRIFT
WGMUSWOVMATNYBUHTCOCWFYTNMGYTQMKBBNLGFBTWOJFTWGNTEJKNEE
DCLDHWTVBUVGFBIJG

KQOWEFVJPUJUUNUKGLMEKJINMWUXFQMKJBGWRLFNFGHUDWUUMBSVLPS
NCMUEKQCTESWREEKOYSSIWCTUAXYOTAPXPLWPNTCGOJBGFQHTDWXIZA
Y
GFFNSXCSEYNCTSSPNTUJNYTGGWZGRWUUNEJUUQEAPYMEKQHUIDUXFP
GUYTSMTFFSHNUOCZGMRUWEYTRGKMEEDCTVRECFBDJQCUSWVBPNLGOYL
SKMTEFVJJTWWMFMWPNMEMTMHRSPXFSSKFFSTNUOCZGMDOEOYEEKCPJR
GPMURSKHFRSEIUEVGOYCWXIZAYGOSAANYDOEOYJLWUNHAMEBFELXYVL
WNOJNSIOFRWUCCESWKVIDGMUCGOCRUWGNMAAFFVNSIUDEKQHCEUCPFC
MPVSUDGAVEMNYMAMVLFMAOYFNTQCUAFVFJNXKLNEIWCWODCCULWRIFT
WGMUSWOVMATNYBUHTCOCWFYTNMGYTQMKBBNLGFBTWOJFTWGNTEJKNEE
DCLDHWTVBUVGFBIJG

On regarde ensuite la distance entre les répetitions. On cherche les facteurs pour chaque paire :

    Longueurs de clef possibles (diviseurs de la distance)
Séquence répétée Distance entre les répetitions 2 3 5 19
WUU 95         x x
EEK 200 x     x  
WXIZAYG 190 x     x x
NUOCZGM 80 x     x  
DOEOY 45   x x  
GMU 90 x x x  

Les facteurs premiers du nombre de caractères entre deux débuts de séquences figurent dans le tableau (ex. 95 = 5 x 19). Il apparaît dans le tableau que toutes les périodes sont divisibles par 5. Tout se cale parfaitement sur un mot-clef de 5 lettres. Une autre méthode pour trouver la longueur de la clef utilise l'indice de coïncidence.


Mesures de sécurité cryptographique
Cryptographie : Preuve de sécurité | Sécurité inconditionnelle | IND-CPA | IND-CCA | Kerckhoffs | Malléabilité | Sécurité calculatoire | Hypothèses calculatoires | Confusion et diffusion
Cryptanalyse de base : Biais statistique | Corrélation | Dictionnaire | Force brute | Fréquence | Indice de coïncidence | Interpolation | Mot probable
Cryptanalyse par canal auxiliaire : Canaux auxiliaires : Acoustique | Consommation | Émanations EM | Faute | Sondage | Temporel
Cryptanalyse ciblée : Clé apparentée | Clé faible | EFF | Enigma | Glissement | Intégrale | Linéaire / Différentielle / Différentielle impossible / Différentielle-linéaire / Boomerang | Modes opératoires | Modulo n | Quadratique | Rectangle | Rencontre au milieu | Vigenère | χ²
Systèmes asymétriques : Clé apparentée | Clé faible | Homme au milieu | Sécurité sémantique
Fonctions de hachage : Effet avalanche | Linéaire / Différentielle | Paradoxe des anniversaires | Pseudo-collision
Autres : Anonymat | Confidentialité | Intégrité | Sécurité par l'obscurité

Cryptologie historique
Chiffres: ADFGVX | Alberti | Beale | Carré de Polybe | César | Delastelle | Hill | Marie Stuart | Permutation | Pigpen | Playfair | Polyalphabétique | Scytale |Substitution | Transposition | Trithémius | Vigenère
Cryptanalyse: Analyse fréquentielle | Indice de coïncidence | Test de Kasiski | Cryptanalyse du chiffre de Vigenère
Autre: Histoire de la cryptographie
Page générée en 0.047 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise