module · crypto jouet · 15 min

Trois idées de cryptographie en taille jouet.

XOR (clé partagée bit-à-bit), substitution (César / Vigenère, cassables par analyse de fréquence), RSA (asymétrique avec petits premiers). Manipulez librement dans les trois onglets, puis relevez la série de défis : chaque palier attaque l'un de ces chiffrements.

défi · cassez les chiffrements
palier 1 / 4

Ève intercepte deux chiffrés XOR produits avec LA MÊME clé. Sans connaître la clé, retrouver le premier mot caché du message 1.

mot 1 = ?

chiffré 1 (C1) · clé inconnue

1F 0C 01 17 09 18 75 0D 09 05 0A 07

chiffré 2 (C2) · même clé

0E 06 0C 0F 03 19 07 6C 04 00 00 01 00

C1 ⊕ C2 (la clé s'annule)

11 0A 0D 18 0A 01 72 61 0D 05 0A 06

message 2 connu : « BONJOUR ALICE »

bac à sable libre
chiffrement XOR symétrique

chiffré (octets hexa)

2B 09 09 0F 03 45 2D 3F 2C

déchiffré avec la même clé

Hello NSI

M ⊕ k ⊕ k = M — XOR est sa propre inverse

⚠ le piège de la clé réutilisée

Avec une clé à usage unique, XOR est inviolable. Mais si la même clé chiffre deux messages, alors C1 ⊕ C2 = M1 ⊕ M2 : la clé s'annule, et connaître un message révèle l'autre. C'est l'objet du premier palier ci-dessus.

à retenir
  • Symétrique (XOR, AES) : même clé pour chiffrer et déchiffrer. Très rapide, mais comment partager la clé sans interception ? Et jamais réutiliser une clé XOR.
  • César / Vigenère : historiquement importants, cassables aujourd'hui en quelques secondes par analyse de fréquence (César) ou par Kasiski (Vigenère).
  • Asymétrique (RSA, ECC) : deux clés différentes — l'une publique pour chiffrer, l'autre privée pour déchiffrer. Repose sur des problèmes difficiles (factorisation, logarithme discret).
  • En vrai protocole (TLS), on combine les deux : asymétrique pour échanger une clé de session, symétrique pour chiffrer les données.
retour au labo