Less is more

Rédigé par Marc Bonnant - -

La cryptologie a érigé cet adage en axiome : l’algorithme le plus robuste de la science des codes est aussi le plus simple, et même si sa mise en œuvre est délicate, il garantit une sécurité absolue. C’est d’ailleurs le seul à présenter cette perfection.

Bruce Schneier le décrit succinctement à la page 18 de sa monumentale "Cryptographie appliquée" pour l’abandonner aussitôt au profit des protocoles orientés réseaux, car le code Vernam exige deux conditions qui le rendent quasiment inapplicable sur le web : la clef de chiffrement doit être 1⃣ aussi longue que le message en clair, et 2⃣ parfaitement aléatoire. En outre, elle ne peut être utilisée qu’une seule fois (masque jetable). Philip Zimmermann (PGP) faisait remarquer à juste titre que si l’on possède déjà un canal sûr pour transmettre une clef, pourquoi ne pas utiliser ce même canal pour échanger des messages ?

Mais l’essentiel du problème réside ailleurs : il n’existe pas de générateur de nombres aléatoires parfait, le hasard étant impossible à modéliser par informatique. La cryptographie se sert, à défaut de mieux, de générateurs pseudo-aléatoires. La machine Enigma, dont le fonctionnement s’inspirait du code Vernam, a été cassée précisément parce que les clefs ne remplissaient pas cette condition ; si son générateur de clefs avait été plus solide, à l’instar de celui que les Soviétiques utilisèrent plus tard durant la guerre froide, les messages allemands interceptés par les alliés n’auraient probablement jamais été décryptés et l’Histoire eût connu un tout autre cours… 

Aujourd’hui, bien que discrète, la cryptographie a investi tous les compartiments de notre vie numérique avec des protocoles à clefs symétriques (notamment AES) dont l’informatique quantique viendra à bout un jour ou l’autre, tandis que le « chiffre de Vernam », bête noire des services de renseignement, assurera à ses utilisateurs une sécurité totale et définitive, sous réserve de quelques précautions élémentaires. ◼

Repères :
• B. Schneier, Cryptographie appliquée, Paris, Vuibert, 2001, p. 18.
• W. Stallings, Cryptography and network security, NJ, Prentice Hall, 1999, p. 41.