Quasi-Atbash #
L’agent K est toujours à la recherche d’un moyen pour transmettre des messages à l’agent Q. Puisque ses techniques ne font pas long feu face aux participants au concours Codémoi, il est amené à en changer très souvent.
Au cours d’une lecture, il a découvert le très ancien code Atbash, et décide d’utiliser une variante de son cru.
Dans le chiffrement Atbash original, on utilise ce tableau :
A B C D E F G H I J K L M
Z Y X W V U T S R Q P O N
Chaque lettre est remplacée par celle située au dessus ou au dessous.
Ainsi, PYTHON
donne KBGSLM
.
Dans la variante de l’agent K, entre le chiffrement de chaque lettre, la
ligne du haut est décalée d’un cran vers la droite. Ainsi, pour chiffrer
PYTHON
, le P
donne K
,
puis le tableau devient (le M
qui sort à droite revient par la gauche) :
M A B C D E F G H I J K L
Z Y X W V U T S R Q P O N
Le Y
est alors chiffré en A
.
Le tableau est à nouveau décalé :
L M A B C D E F G H I J K
Z Y X W V U T S R Q P O N
et le T
est chiffré en E
.
Ainsi de suite… et on obtient comme chaîne chiffrée du mot PYTHON
:
KAEPHH
Lors de l’envoi de plusieurs messages, la ligne supérieure n’est pas
réinitialisée, c’est à dire que le A
ne reprend pas sa place en début de
ligne. Si à la suite du chiffrement du mot PYTHON
, on chiffrait le mot
ENIGME
, on obtiendrait donc : PFWXQX
.
Vous avez intercepté un message de l’agent K :
UNQDBBYKKNHACSYZCIKIUKTRILEKLZOAHNXJTZPFEZPHZVHRSJWWFNEX
mais vous ignorez quelle était a position initiale de la ligne supérieure, et
par ailleurs… vous pensez que pour brouiller les pistes, le message en
clair contient des séquences de lettres inintelligibles (le message en clair
pourrait être par exemple : DLZALRZEMFDDSQENRENDEZVOUSDANSLAPRESMIDIXGRKLREIO
)
Quel est le lieu mentionné dans le message intercepté ?
Pièces à fournir :
- fichier contenant votre code source (
.sb3
ou.py
), pour que nous puissions tester ;- explications sur la manière dont vous avez procédé ;
- réponse à l’énigme.