Avant-propos

La serrurerie, c’est facile : il suffit de mettre la clé dans la serrure, de tourner, et la porte s’ouvre. Et pourtant…

Qui se doute que derrière la serrure qu’il a achetée (trop ?) cher, il y a des artisans qui ont ajusté le mécanisme au micron près, et testé les métaux choisis pour qu’ils soient résistants à tout forçage ? Si l’artisan a bien travaillé, seule la clé d’origine ouvrira la porte. Une mauvaise copie ne fonctionnera pas.

À l’inverse, une serrure bon marché acceptera de pâles répliques de la clé. La France a eu un roi féru de serrurerie. Plus récemment, le physicien Richard Feynman a raconté dans ses mémoires comment il avait gagné une réputation de perceur de coffres-forts. À Los Alamos, le site où était mise au point la bombe atomique, chaque scientifique disposait d’un coffre-fort pour y ranger ses papiers confidentiels. Nombreux étaient ceux qui étaient négligents et qui perdaient leur clé.

Comme c’était une des passions de R. Feynman, on l’appelait au secours. Il s’enfermait alors dans le bureau de l’étourdi, ouvrait le coffre en quelques secondes, puis lisait le journal pendant une heure. Cela pour faire croire qu’il s’était épuisé à la tâche, et qu’il avait eu beaucoup de mal !

Comment faisait-il ? Tout simplement, il avait remarqué que les serrures n’étaient pas de bonne qualité, pas bien ajustées. Un jeu de quelques clés et un peu d’habileté suffisaient à ouvrir tous les coffres. De plus, il copiait les clés de ses collègues négligents. Qui peut prétendre n’avoir jamais laissé traîner ses clés n’importe où ?

Cette petite histoire illustre bien les problèmes posés par un système de sécurisation : qualité du matériel, négligence des utilisateurs, copie des clés.

La cryptographie, c’est facile : il suffit de taper le code PIN de la carte bancaire et l’achat est validé. Et pourtant…

Qui se doute que derrière la puce de la carte se cache une armée de mathématiciens et d’informaticiens de haut niveau, des spécialistes qui s’assurent que le système mis en place est solide, qu’il sera très difficile d’effectuer des copies des clés ?

Pour parvenir à garantir la solidité de leur système, les spécialistes vont se servir de quelques-uns des problèmes les plus compliqués des mathématiques.

Heureusement, comme l’utilisateur d’un coffre-fort en acier, celui d’un coffre-fort numérique n’a pas à se soucier de la qualité des matériaux. Il a juste à comprendre le mode d’emploi, et ne pas être négligent sur certains points comme l’étaient les collègues de R. Feynman.

Finalement, oui, la cryptographie, c’est facile… pour l’utilisateur.

Introduction

Chacun sait se servir d’un trousseau de clés pour protéger son domicile, les accès à certains sites ou armoires à confitures, ou encore mettre en sécurité bijoux et papiers importants.

Chacun sait estimer la sécurité d’une serrure ou d’un coffre, pour l’adapter à ses besoins.

Et le serrurier est là pour assurer l’entretien et le dépannage, qui ne sont pas du ressort de l’utilisateur.

Dans l’univers numérique, des outils souvent bien plus performants que ceux inventés par les serruriers classiques existent. Dans cet univers, le serrurier est un cryptologue, qui emploie des outils mathématiques et informatiques pour nous fabriquer des coffres-forts virtuels.

Chacun doit aujourd’hui apprendre à utiliser ces outils, pour commencer à les maîtriser.

Au nom de la lutte contre le terrorisme, les États mettent en place des lois d’exception aboutissant à une surveillance généralisée des citoyens. Le Patriot Act aux États-Unis, la loi sur le renseignement en France, sont-ils légitimes ?

Chacun répondra à cette question comme il l’entend, à condition d’être correctement informé sur les mécanismes de la cryptographie.

C’est l’ambition de cet ouvrage.

1

La cryptographie à travers l’histoire

1.1 L’Antiquité

On trouve des traces de cryptographie dans l’Ancien Testament (le chiffre Atbash) ainsi que dans l’Égypte antique.

1.2 L’âge artisanal

Peu ou prou, la sécurité repose sur le secret du système employé.

On trouve différents systèmes : à substitution (on remplace les lettres par d’autres selon une table de conversion), à transposition (on change l’ordre des lettres selon une règle convenue), ou un mélange des deux systèmes. Voir [2] ou [4] pour plus de détails.

– 1610. Première utilisation connue d’une fonction à sens unique avec gâche secrète en vue de dater une découverte : vers 1610, Galilée publie sous forme d’anagrammes ses découvertes. Voir [5].

– 1822. Champollion réalise le premier décryptage (à texte clair, texte chiffré) sur la pierre de Rosette. Il livre au monde la clé de compréhension des hiéroglyphes. Voir 6.2 Attaques contre les primitives.

– 1883. Principes de Kerckhoffs. Le temps du secret est révolu : les systèmes proposés doivent être totalement publics et leurs faiblesses doivent pouvoir être discutées publiquement : « Il faut qu’il [le système cryptographique] n’exige pas de secret, et qu’il puisse sans inconvénient tomber entre les mains de l’ennemi » (Journal des sciences militaires, 1883). Voir [4] ou 5.1 La Cryptographie militaire (Kerckhoffs, 1883).

– 1917. Masque jetable, one time pad (Vernam). Voir 5.4 Masque jetable (One time pad, Vernam).

La cryptanalyse en est impossible d’après les travaux de Shannon. Le principe de fonctionnement est très simple, mais suppose que les clés soient générées de façon parfaitement aléatoire, puis distribuées sur un canal totalement sécurisé.

1.3 La mécanisation

La cryptanalyse par « texte en clair choisi » devient possible, puisque le cryptanalyste peut disposer d’une machine à chiffrer.

– Enigma (1918) (et autres systèmes à rotors).

Cryptanalyse réalisée en Pologne par Rejewski en 1933, puis par Alan Turing et les équipes de Bletchley Park en 1939-1940. Les travaux de Bletchley Park ont abouti à la construction de Colossus, premier ordinateur au monde, dont les plans ont été détruits après la guerre pour des raisons de secret.

– En 1946, J.Cl. Shannon [9] pose les bases théoriques de la cryptologie.

1.4 L’âge industriel et informatique

L’usage généralisé des réseaux informatiques rend obligatoire la généralisation de la cryptographie, et un minimum de formation des utilisateurs afin d’éviter les pièges.

Les révélations sur les activités d’espionnage des communications, dans le monde entier, par la NSA confirment cette nécessité.

La façon dont certains opposants au régime de Kadhafi hier, ou au régime syrien aujourd’hui, se sont fait piéger par de mauvaises utilisations d’Internet (en particulier, des attaques par un intermédiaire, « man in the middle ») montre la nécessité de former les usagers.

Cryptographie publique et libre, ou secrète et tolérée ?

Les législateurs hésitent. En particulier, pour l’authentification, la signature (libre) et la confidentialité (soumise à autorisation).

1.5 Systèmes symétriques

– Lucifer (1970) et le DES (1976).

Le DES a été cassé en juin 1998. Il s’est révélé résistant à la cryptanalyse différentielle, dont les principes ne seront redécouverts par des universitaires (non tenus au secret) que bien après la création du DES.

– IDEA (1992).

– AES (2000). Il est issu d’un appel d’offres public, suivi d’études et de critiques publiques.

– Échange de clés (Diffie & Hellman, 1976), dit aussi « protocole DH ». Le problème de la distribution des clés est résolu.

Les usages des systèmes symétriques seront abordés au chapitre 7.

1.6 Systèmes à clé publique (asymétriques)

– Sac à dos (Hellman, 1978). Premier exemple de système à clé publique. Il a été cassé très peu de temps après son invention.

– RSA (Rivest, Shamir, Adleman, 1978). RSA-155 a été cassé en août 1999. RSA reste solide avec des clés de plus de 155 chiffres.

– Courbes elliptiques (Miller & Koblitz, 1985). L’utilisation des courbes elliptiques permet de résoudre le problème du logarithme discret ainsi que la factorisation des grands nombres : RSA et l’échange de clés sont fragilisés. Les courbes elliptiques autorisent de nouveaux développements cryptographiques et sont déjà implémentées dans les cartes à puce.

– PGP (P. Zimmermann, 1991). C’est le système « grand public » qui a fait trembler la NSA. Il utilise IDEA et RSA.

Les usages des systèmes à clé publique seront abordés au chapitre 8.

1.7 1989 : le protocole ZK

« The knowledge of interactive proof systems » : avec cet article, Goldwasser, Micali et Rackof introduisent la notion de protocole ZK et de preuve interactive. La classe ZK s’est révélée ouvrir une nouvelle orientation en mathématiques avec la classe des protocoles interactifs.

Pour plus de détails, voir la section 4.9 Preuve à divulgation nulle, protocoles ZK.

1.8 Mars 2000 : la signature numérique a valeur légale en France

La section 9.2 précise les avantages d’une signature numérique.

1.9 Octobre 2012 : Keccak

SHA3, aussi appelée Keccak, est une fonction de hachage. Comme AES, elle est issue d’un appel d’offres public.

L’utilisation des fonctions de hachage est précisée à la section 4.12.

1.10 Où en est-on en 2015 ?

Un projet de loi d’une république africaine illustre clairement les hésitations des pouvoirs publics face à la cryptologie :

Article 5 :

L’utilisation des moyens de cryptologie est libre. La fourniture, l’importation et l’exportation des moyens de cryptologie assurant exclusivement des fonctions d’authentification ou de contrôle d’intégrité sont également libres.

Lorsque la cryptologie utilisée permet d’assurer des fonctions de confidentialité, le principe de libre utilisation prévu à l’alinéa 1er du présent article s’applique si elle s’appuie sur des conventions secrètes gérées par un organisme agréé conformément aux dispositions de la présente loi.

Article 6 :

Nonobstant les dispositions de l’article 5 de la présente loi, les modalités d’utilisation de la taille de certaines clés sont fixées par décret.

Autrement dit : liberté pour assurer l’authentification et l’intégrité (nécessaires au commerce électronique), mais limitations concernant la confidentialité (la vie privée). On retrouve plus ou moins les mêmes hésitations dans tous les pays.

En Europe, la fourniture de moyens de cryptologie est soumise à autorisation : on peut voir cela comme un moyen de garantir à l’utilisateur la fiabilité du système vendu.

Le principe de Kerckhoffs, par contre, est de plus en plus respecté : par exemple, AES et SHA3 ont donné lieu à des concours publics.

Comme on le verra, la boîte à outils créée par les mathématiciens et les professionnels de l’informatique se remplit et permet aujourd’hui de remplacer toutes nos vieilles serrures ou cadenas par des techniques autrement plus performantes.

Encore faut-il que les utilisateurs s’en emparent et sachent s’en servir : après les révélations sur les agissements d’espionnage de la NSA, il s’est trouvé des ministres qui ne voulaient pas utiliser leur téléphone sécurisé au prétexte que c’était trop compliqué !

2

Les acteurs de la cryptographie

2.1 Le postier (P)

1

Autrefois, les enveloppes étaient fermées, et le courrier arrivait toujours à destination. Le facteur n’était pas censé ouvrir le courrier, ni, sauf cas exceptionnel de censure, refuser de distribuer les lettres.

Aujourd’hui, il faut bien comprendre que tout ce qui transite sur le Net est public, qu’il est impossible de contrôler le cheminement d’un courrier. Par exemple, un mail envoyé de Paris, 12e arrondissement, vers Paris, 15e arrondissement, peut très bien transiter par Amsterdam, Londres, les États-Unis, pour revenir à Paris (ou se perdre). Et chacun de ces pays va estimer légitime d’appliquer sa propre législation (censure, écoute) sur ce mail.

Par ailleurs, contrairement à une lettre papier, le support informatique permet des copies à l’identique, et ce à l’infini. Et même – on commence à en prendre conscience – sans limitation de temps.

Des lois ont été mises en place pour contrôler le travail du postier. En est-il de même avec le Net ou la téléphonie mobile ? À l’évidence, la réponse est qu’il reste bien du chemin à parcourir ! En France, il y a bien des lois qui obligent à présenter une carte d’identité pour acquérir un téléphone portable, ou pour limiter la transmission des « fadettes » par le fournisseur d’accès.

...