Ainsi le juge Peter Smith a mis en italique certains caractères dans les premières pages de son texte de jugement de 71 pages : il suffit de les relever et de les juxtaposer dans leur ordre d'apparition pour découvrir le Smithy Code :

smithycodeJaeiextostgpsacgreamqwfkadpmqzv

Mais comment décoder la suite de caractères en italiques apparaissant après smithycode ? Très bonne question. À laquelle un avocat londonien, Dan Tench, semble avoir apporté la réponse : il suffit (enfin c'était tout de même pas évident) de réordonner les caractères en utilisant la suite de... Fibonacci[1]. Pour ceux qui n'auraient pas lu le livre de Dan Brown, cette suite d'entiers y joue un rôle important.

Pour décoder le message, on utilise la suite de Fibonacci 1, 1, 2, 3, 5, 8, 13, ... Pour chaque caractère i suivant le message d'introduction smithycode, on réalise un décalage dans l'alphabet de Fib(i) - 1 modulo 26 pour trouver le message correct. Fib(1) = Fib(2) = 1, donc les deux premiers caractères restent inchangés : Ja. Le 3ème est un e, on lui ajoute Fib(3) - 1, soit 1, on obtient f. Le 4ème est i : on ajoute Fib(4) - 1 = 2, on obtient 'k'. Puis e : e + Fib(5) - 1 = e + 4 = i, puis x + Fib(6) - 1 = x + 7 = e, ... On obtient jusqu'ici Jafkie. Mais le juge Smith avait laissé quelques indices à d'éventuels casseurs de code : tout d'abord qu'il s'inspirait d'une méthode mathématique exposée dans le Da Vinci Code et ensuite, comme l'indiquait son entrée dans le Who's Who qu'il était un admirateur de l'amiral Jackie Fisher dont la principale oeuvre fut une modernisation de la Royal Navy. Mais pourquoi Jafkie dans le code et non Jackie ? En fait, le message chiffré de Smith utilise une clé de décalage de taille 8 inspirée de la suite de Fibonacci, mais avec une petite variante :

1 1 25 3 5 8 13 21

Et oui, il fallait utiliser 25 (donc ajout de 24) et non tout simplement 2 ! On obtient alors le c recherché (et non f). Cette clé est utilisée plusieurs fois tout au long du texte (après avoir ajouté 21 - 1 = 20, on repasse à l'ajout de 1 - 1 = 0).

Après déchiffrement avec cette méthode, on obtient :

JACKIEFISTERWHOAREYOUDREADNOUGH

Après correction de la faute à Fister (volontaire ou involontaire ?), on obtient bien Fisher. Il faut également ajouter un t à dreadnough. Après l'ajout d'espace et de ponctuation, on obtient finalement :

Jackie Fisher who are you ? Dreadnought.

Mais que signifie donc Dreadnought ? Il s'agit en fait du nom d'un cuirassé de la Royal Navy justement construit en 1908... par le fameux Jackie Fisher (pour en savoir plus, voir l'article de Wikipedia.

Et voilà le mystère du Smithy Code résolu ! Bien entendu, un article a été créé sur Wikipedia à l'entrée ''Smithy Code'' et explique en détails comment casser le code.

Notes

[1] Le n-ième terme d'une suite de Fibonacci est défini par la somme du (n-1)-ième terme et du (n-2)-ième terme (des deux précédents donc). Il existe différentes variantes selon les deux premiers termes débutant la suite (par exemple 1, 1, 2, 3, 5, 8, ... avec termes initiaux 1, 1).