Outil pour déchiffrer/chiffrer avec une transposition. Un chiffrement par transposition, aussi appelé permutations de colonnes, est une technique consistant à modifier l'ordre des lettres d'un texte en le plaçant dans une grille.
Chiffre par Transposition - dCode
Catégorie(s) : Chiffrement par Transposition
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
Le chiffre par transposition est une méthode de chiffrement qui réorganise les caractères d'un message selon un autre ordre/arrangement défini par une clé de transposition/permutation.
Chiffrement par transposition est le nom générique donné à tout chiffrement qui consiste à réorganiser les lettres du texte clair dans un nouvel ordre. Cependant, dans la littérature, le terme chiffrement par transposition est généralement associé à un sous-ensemble : la transposition par colonnes (ou transposition rectangulaire) qui consiste à écrire le message clair dans un tableau/une grille/un rectangle, puis à arranger les colonnes de ce tableau selon une permutation définie.
La clé de transposition/permutation est une série de nombres (souvent générée à partir d'un mot) qui indique dans quel ordre arranger les lettres.
Exemple : Le mot KEY permet de générer la permutation 2,1,3 :
Avant le tri alphabétique | Après le tri alphabétique | |
Mot clé | K,E,Y | E,K,Y |
Ordre des colonnes | 1,2,3 | 2,1,3 |
Le chiffre par transposition de colonnes consiste à écrire un message dans un tableau de largeur N (avec N, la taille de la permutation), ligne par ligne (ou colonne par colonne), d'en permuter les colonnes selon l'ordre de la clé et de lire le résultat en colonnes (ou par lignes).
Exemple : Chiffrer MESSAGE par transposition de colonnes avec la clé CODE (permutation 1,3,4,2) donne MASESEG (écriture en ligne et lecture du tableau en colonnes)
Colonnes | 1,2,3,4 | Colonnes triées | 1,3,4,2 |
Texte clair | M,E,S,S | Texte chiffré | M,S,S,E |
A,G,E,_ | A,E,_,G |
Certaines variantes consistent à lire le tableau en lignes et non en colonnes, dans ce cas, le message chiffré avec une lecture en colonne serait MASES_EG.
Si la grille contient des cases vides, il est possible de les compléter avec une lettre neutre X (ou autre lettre plus fréquence) afin de faciliter le déchiffrement manuel.
Le déchiffrement par transposition de colonnes est similaire au chiffrement, sauf que l'ordre des colonnes est modifié/inversé.
Si le message a une longueur (nombre de caractères) qui n'est pas un multiple de la taille de la permutation, alors, il est nécéssaire de pré-calculer la position des cases vides dans la grille (en simulant un remplissage similaire au chiffrement).
Exemple : Une permutation 2,1,3 a permis d'obtenir le message CDOEDX (écriture par lignes, lecture par lignes) :
Colonnes | 2,1,3 | Colonnes triées | 1,2,3 |
Texte chiffré | C,D,O | Texte clair | D,C,O |
E,D,X | D,E,X |
Exemple : Le texte clair est DCODEX.
Si le message a été lu en colonnes, alors écrire le tableau par colonnes
Exemple : Une permutation 2,1,3 a permis d'obtenir le message CEDDOX (écriture par lignes, lecture par colonnes) :
Colonnes | 2,1,3 | Colonnes triées | 1,2,3 |
Texte chiffré | C,D,O | Texte clair | D,C,O |
E,D,X | D,E,X |
Exemple : Le texte clair est DCODEX.
Le message est constitué des lettres du message original mais dans un ordre différent (réarrangement des caractères dans le désordre).
L'indice de coincidence est identique à celui de la langue du texte clair.
L'indice de coincidence des bigrammes est, par contre, différent.
Il est envisageable de tester toutes les permutations si la clé n'est pas trop longue, cependant la méthode la plus efficace est de disposer ou d'essayer de deviner un mot du texte clair et d'en déduire les permutations de colonnes.
Si le message chiffré est composé de très peu de mots (1, 2 ou 3) alors un solveur d'anagrammes peut permettre de les retrouver.
Le chiffre par transposition est, avec le chiffre par substitution, une des briques les plus utilisées par les chiffrement plus élaborés. Il existe des dizaines de chiffrements qui l'utilisent comme ADFGVX, Amsco, Double Transposition, Redefence, etc.
Les cases vides de la grille introduisent une difficulté supplémentaire, plutot chronophage, lors du déchiffrement. Car le recepteur du message doit calculer la position de celles-ci, ce qui nécessite entre autre, de compter le nombre de caractères du message. Si les cases vides ne sont pas complétées et que le pré-calcul n'est pas fait, des erreurs pourraient apparaitre dans la réorganisation de certaines lettres (notamment des dernières).
dCode se réserve la propriété du code source pour "Chiffre par Transposition". Sauf code licence open source explicite (indiqué Creative Commons / gratuit), l'algorithme pour "Chiffre par Transposition", l'applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou les fonctions liées à "Chiffre par Transposition" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou les données, en téléchargement, script, ou les accès API à "Chiffre par Transposition" ne sont pas publics, idem pour un usage hors ligne, PC, mobile, tablette, appli iPhone ou Android !
Rappel : dCode est gratuit.
Le copier-coller de la page "Chiffre par Transposition" ou de ses résultats est autorisée (même pour un usage commercial) tant que vous créditez dCode !
L'exportation des résultats sous forme de fichier .csv ou .txt est gratuite en cliquant sur l'icone export
Citer comme source bibliographique :
Chiffre par Transposition sur dCode.fr [site web en ligne], consulté le 05/10/2024,