Probabilités et statistiquesNotion · Glossaire
chiffre de Vernam
Le chiffre de Vernam, ou masque jetable, est un chiffrement symétrique qui combine chaque caractère du message avec un caractère d'une clé secrète. Dans sa version binaire, cette combinaison utilise le XOR ; sous des conditions très strictes sur la clé, elle offre une sécurité inconditionnelle.
Sommaire
Ce que vous allez apprendre
- Relier message, clé et chiffré au moyen du XOR.
- Refaire un chiffrement et son contrôle sur six bits.
- Énoncer les trois conditions nécessaires à la sécurité inconditionnelle.
- Voir pourquoi une clé répétée, trop courte ou pseudo-aléatoire retire la garantie absolue.
En clair
Deux correspondants veulent protéger le message binaire 101101. Avant l'échange, ils partagent secrètement une suite aléatoire de même longueur, 011010. Ils combinent les bits placés face à face : deux bits différents donnent 1, deux bits identiques donnent 0. Le résultat transmis est 110111.
Le destinataire refait exactement la même opération avec la clé et retrouve 101101. Un espion ne dispose que de 110111. Si la clé est réellement aléatoire, aussi longue que le message et jamais réutilisée, ce chiffré ne lui révèle rien sur le message d'origine.
Définition
Le chiffre de Vernam, aussi appelé masque jetable ou one-time pad, est un chiffrement symétrique par substitution : les correspondants partagent une clé secrète avant de communiquer. Le procédé a été inventé par Gilbert Vernam en 1917, puis perfectionné par Joseph Mauborgne. Dans la version binaire, le message en clair est une suite de bits notée M, la clé une suite notée K et le texte chiffré une suite notée C. L'opération « ou exclusif », abrégée XOR et notée ⊕, vaut 1 lorsque les deux bits diffèrent et 0 lorsqu'ils sont identiques. Le chiffrement s'écrit :
Comme appliquer deux fois le même bit de clé annule son effet, le déchiffrement obéit à . Une variante sur un alphabet combine de même chaque caractère avec un caractère de clé par décalage circulaire.
La sécurité inconditionnelle exige simultanément trois conditions. La partie de clé employée doit être au moins aussi longue que le message. Ses valeurs doivent être tirées de façon totalement aléatoire, et non produites par un générateur pseudo-aléatoire. Enfin, aucun élément de clé ne doit servir une seconde fois. La clé doit aussi rester secrète et parvenir aux correspondants par un moyen sûr. Sous ces hypothèses, chaque message possible est compatible avec le chiffré intercepté grâce à une clé possible : le chiffré seul n'apporte donc aucune information sur le clair. Claude Shannon a démontré cette propriété de sécurité parfaite en 1949.
Un exemple, pas à pas
Un correspondant doit chiffrer une suite de six bits. Supposons que le tirage aléatoire de la clé ait produit 011010. Le diagramme rassemble le message, cette clé et le résultat ; chaque colonne constitue une opération XOR indépendante.
Données.
Message en clair M : 101101.
Clé secrète K : 011010.
Règle : bits identiques → 0 ; bits différents → 1.
Message en clair M : 101101.
Clé secrète K : 011010.
Règle : bits identiques → 0 ; bits différents → 1.
Étape 1. On combine les six paires dans leur ordre : 1⊕0=1 ; 0⊕1=1 ; 1⊕1=0 ; 1⊕0=1 ; 0⊕1=1 ; 1⊕0=1.
Étape 2. En lisant les résultats de gauche à droite, on obtient le texte chiffré C :
Contrôle. Le destinataire combine 110111 avec la même clé 011010. Il obtient successivement 1, 0, 1, 1, 0, 1, donc retrouve exactement le message de six bits 101101.
En pratique
Avant toute communication, les correspondants doivent produire une clé véritablement aléatoire, aussi longue que l'ensemble des messages prévus, puis la partager par un canal sûr. Une transmission ordinaire sur le réseau ne résout pas ce préalable si elle peut elle-même être interceptée.
Pendant l'échange, chaque portion de clé doit être associée à un seul message et marquée comme consommée des deux côtés. Avec plusieurs correspondants, il faut séparer les jeux de clés afin d'empêcher toute réutilisation accidentelle.
Lorsque générer, distribuer et suivre autant de clé que de données devient irréaliste, le masque jetable perd son avantage opérationnel. Il faut alors choisir un autre dispositif et évaluer sa garantie propre, sans lui attribuer automatiquement la sécurité absolue du masque jetable.
À ne pas confondre
Masque jetable et simple opération XOR. Un XOR ne devient pas automatiquement un chiffre de Vernam parfaitement sûr. Dans l'exemple 101101⊕011010, la garantie absolue ne vaut que si 011010 provient d'un tirage totalement aléatoire, reste secrète et n'est jamais réutilisée.
Aléatoire véritable et pseudo-aléatoire. Une longue suite calculée par un générateur peut sembler désordonnée, mais elle ne satisfait pas la condition d'aléa total donnée par la source. Employer une telle suite retire la preuve de sécurité inconditionnelle.
Substitution et transposition. Le chiffre de Vernam remplace chaque caractère à l'aide de la clé. Une transposition permute les caractères sans les remplacer : ABC devenu BCA relève d'un réordonnancement, tandis qu'ABC devenu DEF illustre une substitution.
Limites et pièges
Réutiliser une clé brise la condition décisive. Si la même clé K chiffre deux messages M1 et M2, un observateur peut combiner les deux chiffrés : . La clé disparaît de ce calcul. Il faut donc retirer définitivement chaque portion après son premier emploi.
Une clé trop courte ne peut pas être répétée. Pour le message de six bits 101101, une clé de moins de six bits ne remplit pas la condition de longueur. La répéter pour atteindre six positions constitue déjà une réutilisation ; il faut produire six positions de clé, chacune utilisée une seule fois.
Une suite pseudo-aléatoire n'offre pas la preuve absolue. Le symptôme trompeur est une clé visuellement irrégulière mais calculée par un algorithme. Il faut une source d'aléa véritable pour revendiquer la sécurité inconditionnelle.
La distribution est aussi importante que le calcul. Une clé parfaite interceptée ou mal attribuée ne protège plus l'échange. Les correspondants doivent la transférer sûrement, conserver leurs exemplaires synchronisés et garantir qu'aucune portion n'est affectée à deux messages.
Pour aller plus loin
Claude Shannon, l'Américain précurseur. Cette lecture replace l'auteur de la preuve de 1949 dans l'histoire de la théorie de l'information.
chiffrement par substitution. Cette notion élargit l'étude des procédés qui remplacent les unités du message plutôt que de les réordonner.
chiffrement par transposition. Ce mécanisme fournit le contraste direct : les caractères restent présents, mais leur ordre est modifié.
Explorez les mathématiques autrement
Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.
Découvrir les offres
