Leon Battista Alberti (1404-1472)

Chapitre: II. Histoire de la cryptologie Prérequis: -

Bien que les chiffres polyalphabétiques n'apparaissent qu'à la fin du 16e siècle, on peut en faire remonter l'origine au savant florentin Léon Battista Alberti (image ci-contre). Né en 1404, Alberti fut l'une des figures majeures de la Renaissance: peintre, compositeur, poète et philosophe, auteur de la première approche scientifique de la perspective, d'un traité sur la mouche domestique et d'une oraison funèbre pour son chien. C'est probablement comme architecte qu'il est le plus connu: il a entre autres écrit le premier traité d'architecture imprimé (le De Re Aedificatoria).
Autour de 1460, Alberti proposa d'utiliser deux ou plusieurs alphabets désordonnés en passant de l'un à l'autre au cours du chiffrement, afin d'échapper à l'analyse des fréquences des cryptanalystes potentiels. Bien qu'il ait effectué, ce faisant, la percée la plus significative dans le cryptage depuis plus de mille ans, Alberti échoua à développer son concept en un système complet. Cette tâche devait revenir à plusieurs chercheurs qui travaillèrent sur ses idées après lui: Jean Trithème, Giovanni Battista Bellaso, Giovanni Porta et Blaise de Vigenère.

Le cadran chiffrant d'Alberti

Dans l'essai (De Componendis Cyphris) qu'il écrivit en 1466 ou 1467, il laissait entendre qu'il avait inventé la notion d'analyse des fréquences, mais les idées qu'il avançait semblent trop élaborées pour qu'il en soit ainsi. Néanmoins, son étude remarquablement claire constitue, en vingt-cinq pages manuscrites en latin, le plus ancien ouvrage de cryptologie du monde occidental.
Ce n'est qu'après avoir expliqué comment les décryptements sont possibles qu'il exposait les moyens de les prévenir. Partant de là, Alberti passait en revue divers procédés: substitutions de différentes sortes, transposition des lettres au sein d'un mot, messages obtenus en marquant d'un point certaines lettres d'un texte innocent, encres sympathiques. Il terminait son oeuvre par un chiffre de son invention: le cadran chiffrant.

«Je découpe deux disques dans une plaque de cuivre. L'un, plus grand, sera fixe, et l'autre, plus petit, mobile. Le diamètre du disque fixe est supérieur d'un neuvième à celui du disque mobile. Je divise la circonférence de chacun d'eux en vingt-quatre parties égales appelées secteurs. Dans chaque secteur du grand disque j'inscris en suivant l'ordre alphabétique normal une lettre majuscule rouge: d'abord A, ensuite B, puis C, etc., omettant H et K [et Y] qui ne sont pas indispensables.» Ceci lui donnait 20 lettres, J, U et W ne figurant pas dans son alphabet. Dans les quatre secteurs restants, il inscrivait les chiffres 1, 2, 3 et 4. Dans chacun des vingt-quatre secteurs du disque mobile, il inscrivait «une lettre minuscule, en noir, non pas dans un ordre normal comme pour le disque fixe, mais dans un ordre incohérent. Ainsi, on peut supposer que la première lettre sera a, la deuxième g, la troisième q, et ainsi de suite jusqu'à ce que les vingt-quatre secteurs soient remplis, car il y a vingt-trois caractères dans l'alphabet latin, le vingt-quatrième étant &. Ces arrangements effectués, on place le petit disque sur le grand, de façon qu'une aiguille passée dans les deux centres serve d'axe commun autour duquel tournera le disque mobile.» Les deux correspondants, disposant chacun de cadrans identiques, conviennent d'une lettre-indice prise dans le cercle mobile, par exemple k. Ensuite, pour chiffrer, l'expéditeur place cette lettre-indice en face d'une lettre quelconque du disque extérieur. Il informe son correspondant de la position du disque mobile en écrivant en tête du cryptogramme cette lettre-clef. Alberti donne comme exemple le k en face du B. «À partir de ce point de départ, chaque lettre du message [chiffré] représentera la lettre fixée au-dessus d'elle. Après avoir écrit trois ou quatre lettres, je peux changer la position de la lettre-indice de façon que k soit, par exemple, sous le D. Donc, dans mon message, j'écrirai un D majuscule et à partir de ce point k ne signifiera plus B mais D et toutes les lettres du disques fixes auront de nouveaux équivalents Cette multiplicité des équivalents fait d'Alberti l'inventeur de la substitution polyalphabétique.


Le petit programme javascript ci-dessous vous permettra de chiffrer/déchiffrer un message avec le chiffre d'Alberti. Le disque mobile (ligne jaune) est décalé d'un cran vers la gauche tous les quatre caractères. Choisissez le décalage initial puis écrivez votre texte.

Alphabet clair A B C D E F G I L M N O P Q R S T V X Z 1 2 3 4
Alphabet chiffré
Décalage initial (0-23)      

Message clair

Message chiffré


Exercice

Chiffrement

Fabriquez le cadran chiffrant d'Alberti décrit ci-dessus, puis chiffrez à la main le texte suivant (décalage initial de 1): Au gibet noir, manchot aimable,
Dansent, dansent les paladins
Vérifiez votre cryptogramme avec le programme ci-dessus.

Déchiffrement

Déchiffrez à la main le texte suivant (décalage initial de 1): ngkxb nzkfr smvdf yshzi ntpfs ysyqq a&tet &bo&t sbylv slid


Surchiffrement

Alberti compléta cette découverte, déterminante dans l'histoire de la cryptologie, par une autre invention remarquable: le surchiffrement codique. C'est dans ce but qu'il avait ajouté les chiffres sur le disque extérieur. Il composa une table dans laquelle était réunies toutes les combinaisons possibles des chiffres 1, 2, 3, 4, de 11 à 4444. Il obtint ainsi 336 groupes qu'il utilisait comme un petit répertoire. «J'introduis ces nombres dans mon message et, par application du procédé, ils se trouvent remplacés par des lettres qui leur correspondent». Ainsi supposons que 341 signifie "Pape". Ce nombre deviendra "iqh" pour une position du disque et "dgb" pour une autre.


Références


Didier Müller, 29.8.01