Passer au contenu principal
Tangente
Histoire et cultureNotion · Glossaire

Vernam Gilbert

Le chiffre de Vernam est un chiffrement symétrique qui combine chaque bit du message avec celui d’une clé par l’opération XOR ; la même clé permet de retrouver le message. Dans sa forme de masque jetable, sa sécurité inconditionnelle exige une clé tirée uniformément au hasard, indépendamment du message, secrète, aussi longue que lui et jamais réutilisée.
Chiffrement XOR sur quatre bits Le message 1011 et la clé 0110 sont combinés colonne par colonne pour produire 1101. Message M Clé K Chiffré C 1011 0110 1101 XOR s’applique séparément dans chaque colonne.
Chaque colonne applique XOR aux bits de même rang : 1011 mêlé à 0110 produit 1101.
Sommaire

Ce que vous allez apprendre

  • Identifier Gilbert Sandford Vernam, ses dates et son cadre professionnel.
  • Refaire un chiffrement et un déchiffrement XOR sur quatre bits.
  • Énumérer les quatre conditions nécessaires à la sécurité inconditionnelle du masque jetable.
  • Distinguer la personne, le procédé, le masque jetable et l’opération XOR.

En clair

Vers 1917, dans les laboratoires de la Bell Telephone Company, Gilbert Vernam imagine de mêler chaque élément d’un message à un élément d’une clé secrète. La clé a la même longueur que le message et ne sert qu’une fois.
Sur des bits, le mélange se fait avec l’opération XOR : deux bits identiques donnent 0, deux bits différents donnent 1. Le destinataire applique de nouveau la même clé pour retrouver le message. L’idée décisive tient autant au calcul qu’aux qualités de la clé : elle doit être tirée uniformément au hasard, indépendamment du message, gardée secrète et jamais réutilisée.

Définition

Gilbert Sandford Vernam (1890–1960) est un ingénieur américain des laboratoires de la Bell Telephone Company. Vers 1917, il invente un procédé de chiffrement symétrique devenu le chiffre de Vernam. Dans sa forme à clé secrète aussi longue que le message, tirée uniformément au hasard, indépendamment de lui et à usage unique, ce procédé est aussi appelé masque jetable, ou one-time pad.
Le message est représenté par une suite de bits notée M. La clé, notée K, est une suite secrète comportant exactement autant de bits, tirée uniformément au hasard et indépendamment du message. Le texte chiffré, noté C, est obtenu par XOR bit à bit : C=MKC=M\oplus K. Comme appliquer deux fois XOR avec le même bit annule son effet, le destinataire calcule M=CKM=C\oplus K. Le procédé est donc symétrique : la même clé intervient au chiffrement et au déchiffrement.
La sécurité inconditionnelle annoncée pour le masque jetable exige conjointement que la clé entière soit tirée uniformément au hasard, indépendamment du message, gardée secrète, aussi longue que lui et jamais réutilisée. Claude Shannon en établira ultérieurement le caractère inconditionnellement sûr sous ces conditions. Si l’une d’elles manque, le calcul XOR reste possible, mais la garantie propre au masque jetable ne s’applique plus.

Un exemple, pas à pas

Prenons un message de quatre bits M = 1011 et une clé de quatre bits K = 0110. Cette valeur est supposée issue d’un tirage uniforme indépendant du message, gardée secrète et réservée à ce seul message. Le schéma associé permet de contrôler séparément les quatre opérations XOR.
1. On compare les bits de même rang.
2. On calcule successivement 1 XOR 0 = 1, 0 XOR 1 = 1, 1 XOR 1 = 0, puis 1 XOR 0 = 1.
3. On assemble les résultats : le texte chiffré est C = 1101.
Pour vérifier le déchiffrement, on reprend exactement la même clé : 1101 XOR 0110 = 1011. Le résultat redonne bien les quatre bits du message initial. Ce contrôle confirme le calcul, mais la garantie de sécurité dépend encore des conditions imposées à la clé.

En pratique

Pour chiffrer, l’expéditeur prépare une clé secrète aussi longue que le message, tirée uniformément au hasard et indépendamment de lui, puis applique XOR bit à bit. Dans l’exemple conducteur, 1011 mêlé à 0110 produit 1101.
Pour déchiffrer, le destinataire possède la même clé et l’applique au texte chiffré. Le calcul 1101 XOR 0110 redonne 1011, sans opération inverse différente.
Avant de parler de masque jetable, il faut contrôler que la clé entière est tirée uniformément au hasard, indépendamment du message, gardée secrète, aussi longue que lui et employée une seule fois. Si une condition manque, il faut présenter le résultat comme un chiffrement XOR, sans lui attribuer la sécurité inconditionnelle du masque jetable.

À ne pas confondre

Gilbert Vernam et le chiffre de Vernam. Le premier est l’ingénieur américain né en 1890 et mort en 1960 ; le second est le procédé de chiffrement qu’il invente vers 1917. Une date biographique décrit la personne, tandis qu’une suite de bits et une clé décrivent le procédé.
Chiffre de Vernam et masque jetable. Le nom « masque jetable » souligne les conditions qui portent la garantie : clé tirée uniformément au hasard, indépendamment du message, secrète, aussi longue que lui et employée une seule fois. Une clé reprise pour un second message ne satisfait donc pas cette appellation stricte.
Opération XOR et système de chiffrement. XOR est le calcul effectué bit à bit ; il ne suffit pas, à lui seul, à garantir la sécurité. Le cas 1011 XOR 0110 = 1101 décrit une opération. La garantie dépend en plus de la manière dont la clé est produite, protégée, dimensionnée et utilisée.

Limites et pièges

Clé réutilisée. Dès le deuxième message chiffré avec la même clé, la condition d’usage unique est rompue. Il faut écarter la revendication de sécurité inconditionnelle et réserver à chaque message une nouvelle clé tirée uniformément au hasard et indépendamment de lui.
Clé trop courte. Une clé de trois bits ne constitue pas un masque jetable complet pour le message 1011, qui en comporte quatre. Ajouter un quatrième bit ne suffit que si la clé complète est tirée uniformément au hasard, indépendamment du message, gardée secrète et réservée à ce seul usage.
Clé prévisible, corrélée ou divulguée. Une suite devinable n’est pas tirée uniformément au hasard ; une suite corrélée au message n’en est pas indépendante ; une suite connue d’un tiers n’est plus secrète. Dans ces cas, XOR peut encore produire un texte chiffré, mais il faut renoncer à la garantie du masque jetable.
Calcul correct, conclusion excessive. Retrouver 1011 après le contrôle 1101 XOR 0110 prouve seulement que le chiffrement et le déchiffrement concordent. Pour conclure à la sécurité inconditionnelle, il faut vérifier séparément toutes les propriétés de la clé.

Pour aller plus loin

Le chiffre de Vernam permet de reprendre le procédé lui-même, au-delà du repère biographique donné par cette fiche.
La fiche Shannon Claude situe le mathématicien associé à la démonstration ultérieure de la sécurité inconditionnelle.
L’entrée cryptographie replace le chiffrement symétrique et la protection des messages dans leur domaine général.
Continuez avec Tangente

Explorez les mathématiques autrement

Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.

Découvrir les offres