Le chiffre Ragbaby

Le chiffre Ragbaby a été inventé par le membre de l'American Cryptogram Association (ACA) SHERLAC et fut décrit pour la première fois dans l'édition de juillet-août 1955 de la revue de l'ACA The Cryptogram. C'est un chiffre polyalphabétique qui a deux spécificités:

Chiffrement

  1. Ecrire la phrase en laissant les espaces. Numéroter chaque lettre des mots en commençant par le rang du mot. Par exemple, prenons la phrase "Ma chérie, je vous aime."
m
a
c
h
e
r
i
e
j
e
v
o
u
s
a
i
m
e
1
2
2
3
4
5
6
7
3
4
4
5
6
7
5
6
7
8
  1. Choisir une clef de chiffrement et construire la table de chiffrement. Par exemple la clef "anonyme" donnera la table :

A N O Y M E B C D F G H I K L P Q R S T U V W Z

Comme le j et le w ont été enlevés, cette table a 24 lettres.

  1. Pour chiffrer, on va utiliser la table et les décalages indiqués au point 1. Pour chiffrer le m, on va se décaler de 1 cran vers la droite dans la table à partir du M, ce qui donnera E. Pour chiffrer le a, on va se décaler de 2 à partir du A, celui qui donnera O. Puis on laissera l'espace. Pour chiffrer le c, on va se décaler de 2 dans la table à partir du C pour obtenir F, etc. On considère que la table est "circulaire": si on dépasse la dernière lettre de la table, on continue à la première. Dans notre exemple, un décalage de 6 à partir du U donnera O. Le résultat final sera:

EO FLFWSI PF NCON ESHK

Déchiffrement

Le déchiffrement s'effectue comme le chiffrement, sauf que l'on se décale vers la gauche dans la table de chiffrement.


Le petit programme javascript ci-dessous vous permettra de chiffrer/déchiffrer un message avec le chiffre Ragbaby. Écrivez votre texte et le mot-clef, tous les deux sans accents (au besoin prétraitez le texte).

Message clair

Mot-clef
Message chiffré


Exercice

Programmation

Ecrivez un programme Python qui chiffre et déchiffre un texte en utilisant le chiffre Ragbaby. Solution.


Référence


  Didier Müller, 5.7.24