L'idée de la clé publique

Le problème de l'échange de clés

Tous les chiffres vus jusqu'ici sont symétriques : la même clé sert à chiffrer et à déchiffrer. Ils partagent donc un défaut commun, et il est sérieux.

Le problème

Pour s'écrire en secret, deux personnes doivent d'abord partager une clé. Mais comment la transmettre ? Si elles disposaient déjà d'un canal sûr, elles y feraient passer le message directement.

Ce serpent qui se mord la queue a longtemps imposé des rendez-vous physiques, des valises diplomatiques, des carnets de codes.

Le problème d'échelle

Il y a pire. Avec n personnes voulant toutes communiquer deux à deux, il faut :

n × (n - 1) / 2  clés

Pour 1 000 personnes, cela fait 499 500 clés à créer, distribuer et protéger. Pour le web mondial, c'est absurde.

L'idée renversante

En 1976, Diffie et Hellman posent une question que personne n'avait osée : et si les deux clés étaient différentes ?

Chacun possède une paire :

  • une clé publique, qu'il diffuse largement — sur son site, dans un annuaire ;
  • une clé privée, qu'il ne montre à personne.

Ce qui est chiffré avec la clé publique ne se déchiffre qu'avec la clé privée correspondante.

Pourquoi ça change tout

N'importe qui peut vous écrire en secret sans vous avoir jamais rencontré : il prend votre clé publique, chiffre, et vous seul pouvez lire. Aucun rendez-vous préalable, aucun canal sûr à établir.

Et le nombre de clés devient linéaire : n personnes, n paires. Pas 499 500.

C'est cette idée qui rend possible le cadenas de votre navigateur : votre ordinateur n'a jamais rencontré le serveur de votre banque, et pourtant ils établissent un secret en quelques millisecondes.