Avant de dérouler la mécanique des chiffrements concrets, il faut s’accorder sur ce que « chiffrer sûrement » veut dire. La question n’est pas anodine : cacher la clé ne suffit pas à cacher le message, et l’on peut parfaitement ignorer la clé tout en devinant l’essentiel du clair. C’est ce hiatus que la théorie de Shannon vient combler, en donnant au secret une définition qui ne doive plus rien à l’intuition.
Ce qu’un chiffrement doit cacher
Un chiffrement symétrique se donne par trois algorithmes : un générateur qui produit une clé « aléatoire » , un algorithme de chiffrement et un algorithme de déchiffrement . Comme , on peut supposer que la clé de chiffrement et celle de déchiffrement coïncident. On note le message clair et le chiffré associé.
Le chiffrement poursuit alors trois objectifs emboîtés :
- Cacher la clé. Nécessaire, mais insuffisant : même parfaitement dissimulée, une clé ne garantit pas que le chiffré résiste. Un chiffrement par substitution en témoigne — si le chiffré n’emploie pas toutes les lettres, l’analyse fréquentielle n’en révélera qu’une partie de la clé, ce qui suffit souvent.
- Cacher le texte clair. L’adversaire peut vouloir décrypter un message précis sans retrouver la clé.
- Cacher tout ce qui n’est pas déjà connu. C’est là l’exigence forte : rendre impossible la découverte du clair, intégralement, partiellement, ou de toute information connexe.
Cette dernière formulation mérite qu’on s’y arrête. En pratique, une part du message est presque toujours supposée connue de l’attaquant — un courriel commence par « Bonjour », un en-tête XML suit une grammaire fixe. La sécurité ne se juge donc pas dans l’absolu, mais relativement à ce que l’adversaire savait déjà.
Le formalisme de Shannon
On appelle cryptosystème la donnée de où est l’ensemble des messages, celui des chiffrés, celui des clés, et où les fonctions , vérifient
Le chiffrement est symétrique si , asymétrique si, connaissant , déterminer est calculatoirement très difficile.
Tout l’apport de Shannon tient dans le passage au probabiliste. On voit comme une variable aléatoire dont la distribution encode l’information a priori de l’attaquant : savoir que le message commence par « Bonjour », c’est concentrer la masse de sur les clairs commençant ainsi. L’attaquant sait seulement que est tirée selon la loi sur , que l’est selon la loi sur , et que peut disposer de son propre aléa. En vertu du principe de Kerckhoffs, il connaît la distribution de .
Sécurité au sens de Shannon
Un chiffrement est sûr au sens de Shannon si la connaissance du chiffré n’apporte aucune information sur le clair.
Le secret parfait
Formalisons cette exigence. La fonction de chiffrement induit sur la distribution
et la loi de Bayes relie la probabilité a posteriori à la probabilité a priori :
Secret parfait
Un cryptosystème est à secret parfait si la réception d’un chiffré ne modifie en rien ce que l’on croit du clair :
De façon équivalente, chaque chiffré est également probable quel que soit le clair d’origine :
Shannon a caractérisé exactement ces systèmes, sous l’hypothèse et pour tout :
Théorème (Shannon, 1949)
Le cryptosystème est à secret parfait si et seulement si
- la loi des clés est uniforme, et
- pour tout , l’application est une bijection de sur .
Ces conditions imposent en particulier qu’il y ait au moins autant de clés que de messages : la perfection a un prix, et l’on va voir lequel.
Le masque jetable
Le seul chiffrement à secret parfait d’usage courant est le One-Time Pad, ou masque jetable. On y prend , la clé étant tirée uniformément, et l’on pose simplement
où désigne le XOR bit à bit. Le déchiffrement n’est que le chiffrement réappliqué, l’opération étant involutive.
Théorème (One-Time Pad)
Le masque jetable est parfaitement sûr, à condition que la clé soit tirée uniformément et n’apparaisse qu’une seule fois.
La double contrainte est fatale à sa généralisation. Le théorème de Shannon impose : les clés sont donc au moins aussi longues que les messages, et, tirées uniformément, elles sont incompressibles. Réutiliser une clé ruine tout — deux chiffrés partageant leur masque révèlent le XOR de leurs clairs. C’est pourquoi le OTP, théoriquement inviolable, demeure impraticable dès que l’on veut chiffrer plus que l’on ne peut au préalable convoyer de clé.
De la perfection à la faisabilité
Ce constat d’impraticabilité est fécond : il déplace l’exigence. Puisqu’on ne peut offrir à un adversaire illimité une ignorance totale, on se contentera de la rendre inaccessible à un adversaire borné en temps et en mémoire. C’est le passage de la sécurité inconditionnelle à la sécurité calculatoire, où l’on ne demande plus que le déchiffrement soit impossible, mais qu’il soit infaisable dans les limites du calcul réaliste. Toute la cryptographie symétrique moderne et la cryptographie à clé publique se déploient dans ce cadre assoupli.