Comme chiffre de transposition, on peut utiliser une grille recouverte par un cache que l'on fait tourner. Ce procédé a semble-t-il été inventé par le colonel autrichien Eduard Fleissner von Wostrowitz (1825-1888). On en trouve une description dans son livre Handbuch der Kryptographie (1881)
Dans l'exemple ci-dessous, on utilise une grille 6x6 et un cache avec 9 trous. Chiffrons le message de 36 lettres "JE CHIFFRE CE TEXTE AVEC UN CACHE TOURNANT Z". On pose le cache sur la grille, puis on remplit les cases découvertes avec les 9 premières lettres du message (la case rouge sert de repère pour voir comment le cache tourne). On tourne ensuite le cache d'un quart de tour, puis on écrit dans les cases découvertes les 9 lettres suivantes du message, et ainsi de suite. On obtient une grille remplie de lettres dans un ordre incompréhensible.
Le cache ci-dessous est celui employé dans le roman de Jules Verne Matthias Sandorf (première partie, chapitre IV).
|
|
|
|
|
On écrit ensuite les caractères ligne par ligne pour obtenir le message chiffré: TJEEO CCUCR HENUI TNAEF NCFXT ATZER CAHEE V.
Si le message contient davantage de lettres que les n cases de la grille, on découpe le message en tranches de n lettres, et on applique le procédé plusieurs fois, éventuellement avec des caches différents.
Le programme javascript ci-dessous permet de chiffrer un texte avec une grille tournante grâce à des caches de taille 4x4 ou 6x6. Avec la souris, cliquez sur les cases que vous voulez évider (les trous sont marqués d'un X), puis vérifiez la conformité du cache avant de chiffrer. Des lettres aléatoires seront ajoutées pour compléter la grille si besoin est.
. | . | . |
. | . | . |
. | . | . |
Ecrivez
un programme Python qui chiffre et déchiffre un texte en utilisant une
grille de Fleissner 6x6. Solution
Ecrivez
un programme Python qui décrypte un texte chiffré avec une grille
de Fleissner 6x6, en essayant toutes les grilles possibles (recherche exhaustive
des clefs). Solution
![]() |
![]() ![]() |