Cryptology Academy · Leçon

Chiffrement XOR et masque jetable

Construisez un chiffre XOR simple et découvrez son équivalent à confidentialité parfaite

Leçon 2 sur 413 étapes

Chiffrement XOR et masque jetable est une leçon Cryptology Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cryptology Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cryptology Academy comprend 4 leçons au total.

Bienvenue

Le chiffrement XOR est simple : texte chiffré = texte en clair XOR clé. Lorsque la clé est véritablement aléatoire et utilisée une seule fois, nous obtenons le masque jetable — le seul chiffrement dont l’incassabilité est démontrée.

Bases du chiffrement XOR

key = bytes([0x5A, 0xF2, 0x3C, 0x11]) plaintext = bytes([0x48, 0x65, 0x6C, 0x6C]) # 'Hell' ciphertext = bytes(p^k for p,k in zip(plaintext,key)) # Result: 0x12 0x97 0x50 0x7D

Propriété d’auto-inversion de XOR

Le déchiffrement est identique au chiffrement : plain = cipher XOR key Preuve : (P XOR K) XOR K = P XOR (K XOR K) = P XOR 0 = P Cela rend les chiffrements XOR trivialement symétriques.

Concept du masque jetable

Un masque jetable (OTP) utilise une clé aléatoire aussi longue que le message et l’emploie exactement une fois. Il est théoriquement incassable : chaque texte chiffré peut être déchiffré en n’importe quel texte en clair possible avec la même probabilité.

Démonstration du secret parfait de Shannon

Claude Shannon a démontré en 1949 qu’un chiffrement possède un secret parfait si et seulement si la clé est aléatoire, au moins aussi longue que le message et utilisée au plus une fois. L’OTP est le seul chiffrement pratique répondant à ces conditions.

Limites pratiques de l’OTP

La clé doit être aussi longue que le message. Elle doit être distribuée de manière sécurisée. Elle ne peut jamais être réutilisée. Ces contraintes rendent l’OTP impraticable pour la plupart des applications.

Attaque par réutilisation de clé : masque à usages multiples

Si C1 = P1 XOR K et C2 = P2 XOR K, alors C1 XOR C2 = P1 XOR P2. La clé s’annule ! Un attaquant disposant de deux textes chiffrés obtient P1 XOR P2, ce qui révèle des motifs.

Attaque par traînage de texte probable

Si l’attaquant devine une partie de P1 (un « texte probable », comme « the »), l’application de XOR à cette partie et à P1 XOR P2 à chaque position révèle le texte correspondant de P2. Les textes en clair complets sont ainsi progressivement récupérés.

Échec réel de la réutilisation de clé

Le projet Venona a déchiffré des milliers de messages soviétiques chiffrés avec un masque jetable, car des agents du KGB ont réutilisé des masques sous la pression de la guerre. La réutilisation de la clé a compromis un chiffrement pourtant démontré comme parfaitement secret.

XOR dans les chiffrements par flot

Les chiffrements par flot modernes (ChaCha20, RC4) génèrent un flot de clés pseudoaléatoire et l’appliquent par XOR au texte en clair. Ils se rapprochent du masque jetable, mais utilisent une clé courte étendue par un CSPRNG.

Démonstration du chiffrement XOR en Python

import os def otp_encrypt(plaintext: bytes) -> tuple: key = os.urandom(len(plaintext)) ciphertext = bytes(p^k for p,k in zip(plaintext,key)) return ciphertext, key ciphertext, key = otp_encrypt(b'Secret!')

Vérification rapide

Pourquoi la réutilisation de la clé d’un masque jetable est-elle catastrophiquement dangereuse ?

Récapitulatif

XOR et le masque jetable sont fondamentaux. Nous allons maintenant étudier pourquoi les systèmes XOR naïfs échouent en pratique et quelles attaques exploitent la réutilisation des clés.
Gratuit pour commencer

Apprends Cryptology Academy avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
67
Leçons
261

Questions Fréquemment Posées

La leçon « Chiffrement XOR et masque jetable » est-elle gratuite ?

Oui — le texte complet de « Chiffrement XOR et masque jetable » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cryptology Academy, passe à CoddyKit PRO. Le cours Cryptology Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Chiffrement XOR et masque jetable » ?

Construisez un chiffre XOR simple et découvrez son équivalent à confidentialité parfaite Tu pratiques Cryptology Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Cryptology Academy ?

Aucune expérience préalable n'est requise. Cryptology Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Chiffrement XOR et masque jetable » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Cryptology Academy ?

Oui. Chaque leçon Cryptology Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Rappel des opérations bit à bit
  2. Chiffrement XOR et masque jetable
  3. Pourquoi XOR seul n’est pas sécurisé
  4. XOR dans AES et les chiffres par flux
← Retour à Cryptology Academy