Chiffrement par substitution


Chiffrement par substitution

Le chiffrement par substitution est une technique de cryptage utilisée depuis bien longtemps puisque le chiffre de César en est un cas particulier. Sans autre précision, elle désigne en général un chiffrement par substitution monoalphabétique, qui consiste à substituer dans un message chacune des lettres de l'alphabet par une autre (du même alphabet ou éventuellement d'un autre alphabet), par exemple, ainsi que procédait César a par d, b par e et ainsi de suite. Quand l'alphabet d'arrivée est le même, la substitution est définie par une permutation des lettres de l'alphabet. Mais le chiffrement par substitution se distingue donc des chiffrements par permutation, définis eux par une permutation des lettres du message.

Le simple chiffrement par substitution est facile à casser par analyse des fréquences des lettres du texte chiffré, mais demeure cependant en tant que composant élémentaire des chiffrements modernes (ce sont les S-Boxes des réseaux de substitution-permutation).

Pour brouiller la cryptanalyse par analyse de fréquences, diverses techniques de substitution plus ou moins élaborées ont été inventées au cours des siècles, comme les chiffrements par substitution homophonique (une lettre fréquente peut être remplacée par des signes différents), ou par substitution polyalphabétique.

Sommaire

Les chiffrements par substitution monoalphabétique

La substitution monoalphabétique est une des plus ancienne méthode de chiffrement. Elle consiste à remplacer systématiquement dans le message clair une lettre donnée de l'alphabet par un signe donné (qui peut être simplement une autre lettre). Deux lettres distinctes doivent être chiffrées en deux signes distincts, sinon il y aurait ambiguïté lors du déchiffrement. Une même lettre est toujours chiffrée par le même signe : c'est le principe de la substitution monoalphabétique. Voici un exemple où l'alphabet du clair et celui du chiffré sont tous deux les 26 lettres de l'alphabet latin :

ABCDEFGHIJKLMNOPQRSTUVWXYZ
AZERTYUIOPQSDFGHJKLMWXCVBN

le message SUBSTITUTION devient LWZLMOMWMOGF.

L'ordre de l'alphabet latin étant connu, il suffit de donner la suite des 26 signes correspondant, qui est la clef de chiffrement. L'alphabet du chiffré peut être le même que celui du clair (en changer n'introduit pas de sécurité supplémentaire). Pour l'alphabet latin, ceci permet de construire 26! ≈ 4 × 1026 substitutions (soit de l'ordre de 288), à savoir le nombre de permutations des 26 lettres.

Pour pouvoir retenir plus facilement la clef du chiffre (une suite de 26 lettres quand on chiffre avec l'alphabet latin), il est possible de l'obtenir à partir d'un mot clef, complété ensuite par les lettres restantes dans l'ordre de l'alphabet (en partant du début de l'alphabet ou de la dernière lettre du mot clef).

Chiffres l'utilisant

La substitution polyalphabé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 polysubstition simple avec une clé de longueur 3 qui va décaler les lettres de l'alphabet :

On définit la clé '123' 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.

On sait depuis le XIXeme siècle que ce principe de polysubstitution possède de nombreuses failles, comme le montre l'officier Prussien Friedrich Kasiski dans son test.


Chiffres l'utilisant

Faiblesses

Ces chiffres, y compris les chiffres polyalphabétiques, ne sont plus utilisés, du moins sérieusement, et n'ont plus qu'un intérêt historique ou de divertissement. Les chiffres utilisant la simple substitution monoalphabétique sont faciles à casser par analyse fréquentielle, technique qui s'est utilisée également pour les chiffres par substitution homophonique. Pour les chiffres par substitution polyalphabétique il est nécessaire de connaître la longueur de la clef (le nombre de substitutions monoalphabétiques utilisées) pour pratiquer l'analyse de fréquence. La longueur de la clef peut se déceler par recherche de répétitions dans le chiffré (voir cryptanalyse du chiffre de Vigenère), ou par des méthodes statistiques (voir indice de coïncidence).

Voir aussi

Bibliographie

  • Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone (1986), handbook of applied cryptography, 5ème édition (2001), CRC Press ISBN: 0-8493-8523-7,consultable en ligne, ch, 1.5.

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Chiffrement par substitution de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Chiffrement par permutation — Chiffrement par transposition Un chiffrement par transposition (ou chiffrement par permutation) est un chiffre qui consiste à changer l ordre des lettres, donc à construire des anagrammes. Cette méthode est connue depuis l Antiquité, puisque les… …   Wikipédia en Français

  • Chiffrement par décalage — Le chiffre de César fonctionne par décalage des lettres de l alphabet. Par exemple dans l image ci dessus, il y a une distance de 3 caractères, donc B devient E dans le texte codé. En cryptographie, le chiffrement par décalage, aussi connu comme… …   Wikipédia en Français

  • Chiffrement par transposition — Un chiffrement par transposition (ou chiffrement par permutation) est un chiffre qui consiste à changer l ordre des lettres, donc à construire des anagrammes. Cette méthode est connue depuis l Antiquité, puisque les Spartiates utilisaient déjà… …   Wikipédia en Français

  • Chiffrement Par Produit — En cryptographie, un chiffrement par produit est un type populaire de chiffrement de bloc qui exécute à la suite un certain nombre de transformations simples comme des substitutions, des permutations et des opérations d arithmétique modulaire.… …   Wikipédia en Français

  • Chiffrement Par Bloc — Le chiffrement par bloc (en anglais block cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l autre étant le chiffrement par flot. La principale différence vient du découpage des données en blocs de …   Wikipédia en Français

  • Chiffrement par produit — En cryptographie, un chiffrement par produit est un type populaire de chiffrement de bloc qui exécute à la suite un certain nombre de transformations simples comme des substitutions, des permutations et des opérations d arithmétique modulaire.… …   Wikipédia en Français

  • Chiffrement par bloc — Le chiffrement par bloc (en anglais block cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l autre étant le chiffrement par flot. La principale différence vient du découpage des données en blocs de …   Wikipédia en Français

  • Algorithme de chiffrement par bloc — Chiffrement par bloc Le chiffrement par bloc (en anglais block cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l autre étant le chiffrement par flot. La principale différence vient du découpage… …   Wikipédia en Français

  • Substitution monoalphabétique — Chiffrement par substitution Le chiffrement par substitution est une technique de cryptage utilisée depuis fort longtemps puisque le chiffre de César en est un cas particulier. Sans autre précision, elle désigne en général un chiffrement par… …   Wikipédia en Français

  • Substitution polyalphabétique — Chiffrement par substitution Le chiffrement par substitution est une technique de cryptage utilisée depuis fort longtemps puisque le chiffre de César en est un cas particulier. Sans autre précision, elle désigne en général un chiffrement par… …   Wikipédia en Français


Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.