Services permanents

Au XVIIIe s., la cryptanalyse devint une véritable industrie, et chaque pays européen disposait d’un « cabinet noir » antre des meilleurs spécialistes de la nation. À Vienne, par exemple, l’organisation était impeccable : des faussaires faisaient fondre les sceaux des messages interceptés, des sténographes les recopiaient, des linguistes s’occupaient des traductions, puis les messages, rescellés, poursuivaient leur route jusqu’au véritable destinataire… le tout en quelques heures !

Comme tout le monde s’adonnait à ce sport sympathique, le chiffrement monoalphabétique n’offrait pas une sécurité suffisante. Tout bon cryptologue qui se respecte finit donc par adopter (enfin !) le chiffre de Vigenère, certes plus complexe, mais infiniment plus sûr. L’avènement du télégraphe, puis de la transmission en morse acheva de convaincre les plus rétifs. N’importe qui pouvait intercepter un message sur la ligne, et l’importance du codage devenait cruciale.

On a longtemps cru que le chiffre de Vigenère resterait une panacée, mais l’histoire des codes secrets ne cesse de bégayer. Ainsi fallait-il compter avec la formidable entremise d’un certain Charles Babbage. Touche-à-tout de génie hélas trop méconnu, ses inventions vont du compteur de vitesse au pare-buffle pour locomotives, en passant par les tables de mortalité qui font la joie des statisticiens. Il mit même au point deux prototypes de calculateurs programmables, ancêtres de nos ordinateurs. Mais surtout sa matière grise accoucha, en 1854, de l’impensable : une technique imparable pour casser le chiffre de Vigenère (voir encadré ci-dessous). Une découverte encore une fois ignorée, au point que la méthode portera le nom de Friedrich Wilhelm Kasiski, un Prussien qui arriva au même résultat… dix ans plus tard.

La remise à zéro de Babbage

Le tour de force de Charles Babbage pour casser le chiffre de Vigenère repose sur une idée simple : la fréquence d’apparition des lettres ne pouvant rien apporter, il s’intéressa aux répétitions, ces séquences de lettres qui apparaissent plusieurs fois dans un texte crypté.

Une clef étant utilisée à plusieurs reprises pour coder un même message, le nombre de codages possibles de chaque lettre du texte clair ne peut donc dépasser la longueur de la clef. Si la clef est SOLEIL, par exemple, n’importe quelle lettre du texte clair ne peux subir que cinq décalages, soit +18 (S), +14 (O), +11 (L), +4 (E) ou +8 (I). En repérant les répétitions de séquences, il y a donc de très bonnes chances qu’elles correspondent à des mêmes parties du texte clair, codées avec la même partie de la clef. Mais prenons un exemple…

ROVMR MPSWP TUAHV ZBNKB ZRTJF PAEBR RFWGX NABRG
SPNNN ESROT XMIVX WSEXN IEHUO EEOLR YWOYE EKUIQ
IVMIV GEUSH IRMFG JZNGG ITI

  1. On commence par repérer les séquences répétées et les écarts correspondants. En particulier, on a :
    RO à 48 lettres d’intervalle, VM à 80, RM à 88 et XN à 24.
    La clef doit donc avoir 4 ou 8 lettres pour expliquer de tels décalages. On retient la seconde solution et on découpe le texte crypté comme dans tableau suivant :

    1 2 3 4 5 6 7 8
    R O V M R M P S
    W P R T U A H V
    Z B N K B Z R T
    J F P A E B R R
    F W G X N A B R
    G S P N N N E S
    R O T X M I V X
    W S E X N I E H
    U O E E O L R Y
    W O Y E E K U I
    Q I V M I V G E
    U S H I R M F G
    J Z N G G I T I
  2. À ce stade, toutes les lettres d’une même colonne sont supposées avoir subi le même décalage, et ce sans même connaître la clef ! Conséquence de taille : chaque colonne peut être considérée comme un simple Chiffre de César !
    Dans la quatrième colonne, par exemple, si on remplace les trois X (majoritaires) par e, cela correspond à un décalage de -19 lettres qu’on applique à toutes les lettres de la colonne. On obtient donc :

    M T K A X N X X E E M I G
    -19 t a r h e u e e l l t p n

    … et la quatrième lettre de la clef est un T puisqu’elle correspond au décalage observé de 19.
    Autre truc : on peut supposer que le h (du texte en clair) de la 4e colonne est précédé d’un c. Du coup, dans la 3e colonne, P vaudrait c, le décalage serait de 13, etc

  3. En répétant ces opérations dans les différentes colonnes, on obtient au final le tableau suivant, ainsi que la clef FONTAINE déterminée à partir des différents décalages.
    +5 +14 +13 +19 0 +8 +13 +4
    F O N T A I N E
    m
    a
    i
    t
    r
    e
    c o
    r b e a u s u r
    u n a r b r e p
    e r c h e t e n
    a i t e n s o n
    b e c u n f r o
    m a g e m a i t
    r e r e n a r d
    p a r l o d e u
    r a l l e c h e
    l u i t i n t a
    p e u p r e s c
    e l a n g a g e

Et vous aurez reconnu le début de la fable Le Corbeau et le Renard… de Jean de La FONTAINE !

Pages : 1 2 3 4 5 6 7 8 9

Tags: , , , , , , , , , , , , , , , , , , , ,

Cet article a été publié le Mardi 27 janvier 2009 à 0 h 21 min et est classé dans Cryptographie, Histoire, Histoire des Sciences. Vous pouvez suivre les commentaires sur cet article en vous abonnant au flux RSS 2.0 des commentaires. Les commentaires et les pings sont actuellement fermés.

Les commentaires sont fermés pour le moment.