I. Définitions
Dans nos démonstrations, nous partons du principe que le code est connu puisque nous travaillons sur le
codage et non le décodage.
Pour cela, il nous faut d’abord introduire quelques notions essentielles :
On transforme le message lorsqu’on remplace chaque lettre par sa lettre (ou signe) correspondant (voir
schéma 1).
Une transformation peut-être répétée indéfiniment. On remarque alors que quelque soit le code, nous
reviendrons au message initial au bout d’un certain nombre de transformations : nous appellerons ici ce
nombre « cycle de transformation ».
En transformant un code plusieurs fois, on remarque aussi que certaines lettres se transforment
indépendamment des autres. On peut donc les regrouper et l’on appelle ce groupe un roulement et sa
valeur correspond au nombre de lettres qui le composent (voir schéma 2).
On remarque encore que pour qu’un roulement revienne à son point de départ, il faut que chaque lettre de
celui-ci soit passée par toutes les autres (voir schéma 3).
Autrement dit, pour qu’un roulement revienne à son point de départ, il faut et il suffit que le nombre de
transformations effectuées soit égal à sa valeur ou à un multiple de celle-ci.
Il est donc possible de prévoir le « cycle de transformation ».
II. Calculer le cycle de transformation :
•Dans un premier cas , si l’on connait le nombre de lettres différentes du code, le nombre de
roulements et leur valeur, il suffit de prévoir quand tous les roulements reviendront à leur point de
départ en même temps ce qui correspond par exemple au produit des valeurs de ces derniers. Mais
si on cherche à trouver un cycle de roulements le plus petit possible, il faut calculer le PPCM des
valeurs de tous ces roulements.
Exemple :
Pour le code suivant (légèrement différent de celui du problème de départ) :
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
E A B C D J F M S G P O I Q Y K T W H U N Z R V L X
Pour le mot « vive » :
Roulements différents :
1. Celui qui comprend la lettre « v » a pour valeur 3 (Voir schéma 4).*