Vacarme 27 / Cahier

César ouvre-toi

par

Police partout : par les temps qui courent, on peut avoir envie d’un peu de secret. mais comment s’y prendre ? Sourire aux caméras du métro ? On n’en sera pas moins filmé. Fuir aux Galápagos ? On risque de regretter le métro. Essayons autre chose : la cryptographie.

Un agent britannique envoie, sous forme cryptée, un message à son supérieur : « L’infidèle Docteur Kelly veut parler ». Tout le problème consiste à ce que le destinataire soit le seul à pouvoir le lire. Si un tiers curieux intercepte le message et parvient à le décrypter, non seulement le scientifique ne pourra plus être retenu de parler, mais tous sauront de surcroît que ce qu’il a à dire est de grande importance. Quant à l’agent si bien informé, il aura quelques soucis.

La cryptographie est une science très ancienne. On sait que Jules César, pendant la guerre des Gaules, utilisait un système rendant illisibles les messages qu’il envoyait à Cicéron. Le principe est le suivant : chaque lettre de l’alphabet est décalée de 3 unités à droite (ce nombre 3 s’appelle « la clé du système »). a est alors remplacée par d, …, w par z, x par a, y par b et z par c.

Supposons que l’émetteur E et le destinataire D du message aient secrètement convenu d’utiliser le code de César. E lui envoie donc le message « olqilghoh grfwhxu nhoob yhxw sduohu ». Il suffit alors à D de décaler toutes les lettres de 3 unités à gauche pour le lire.

Malheureusement, le tiers curieux T saura le décrypter assez aisément.

Il sait que e est la lettre la plus fréquente de la langue française et constate que la lettre hest la plus fréquente du message intercepté. h correspond sans doute à la lettre claire e. Or « e + 3 = h ». T décale alors les lettres du message intercepté de 3 unités à gauche et découvre le texte envoyé.

Le code de César, malgré son évidente faiblesse, fut encore employé par les officiers sudistes pendant la guerre de Sécession, et même par l’armée russe en 1915.

On inventera par la suite des systèmes cassant la conservation de la fréquence des lettres. Toutes les lettres e du message clair ne seront plus transformées en une seule et même lettre.

Mais ce n’est pas là le seul défaut du code de César. En effet, puisque toutes les lettres y sont décalées du même nombre d’unités, T a, au plus, 25 textes à écrire (l’alphabet comporte 26 lettres) : temps de travail dérisoire pour un ordinateur.

Imaginons alors que E et D disposent d’un système dont le nombre de clés soit considérable. Ils ne sont pas à l’abri pour autant : T peut en effet découvrir la clé. Il pourra lire alors tous les messages passés et à venir. Par prudence, il est donc préférable de modifier la clé le plus souvent possible. Se pose alors un problème : comment transmettre la nouvelle clé sans qu’elle tombe en de mauvaises mains ; cette fameuse clef qu’il faut s’abstenir de faire circuler et d’exposer au risque d’être vue par les curieux ? À moins qu’aucune clé ne soit à transmettre…

Par un message clair, E informe D de son intention de changer de clé et du procédé qu’il souhaite utiliser. Celui-ci met en jeu un grand nombre N qu’il choisit alors, de manière arbitraire, et qu’il lui transmet. T a donc connaissance, comme D, du procédé et du nombre N choisis.

Le procédé est le suivant :
E choisit un nombre e qu’il garde secret.
D choisit un nombre d qu’il garde secret.
E envoie à D le nombre Ne.

D envoie à E le nombre Nd.

T peut intercepter ces nombres. Mais le risque pris par E et D est infime puisque le temps de calcul pour trouver e ou d est considérable, même sur de puissants ordinateurs.

D reçoit donc Ne et calcule, à l’abri des regards, (Ne)d grâce au nombre d qu’il a gardé secret.

E reçoit donc Nd et calcule, à l’abri des regards, (Nd)e grâce au nombre e qu’il a gardé secret.

E et D ont alors en main la même clé secrète puisque (Ne)d = (Nd)e = Ned. Et pourtant, comme T, E n’a pas connaissance du nombre d, ni D du nombre e.

E et D se sont échangé des nombres, publiquement, aux yeux de tous. Ils ont même mutuellement convenu, sans s’en cacher, du procédé à utiliser. Une seule idée : ne plus transmettre la clé mais la construire. Enfin, quelques règles à suivre, simples : choisir un nombre et le garder secret, puis effectuer deux calculs de puissance. La commutativité de l’exponentielle, propriété élémentaire, fait le reste ; et c’est ce petit rien mathématique qui assure le secret des échanges à venir. Ils peuvent poursuivre en toute quiétude. Les tiers curieux, eux, regardent des textes passer, mais n’ont pas les yeux pour les voir.