Stéganographie
Aussi appelé : Dissimulation · Hidden writing
La stéganographie est la troisième branche de la cryptologie, à côté de la cryptographie (rendre illisible) et de la cryptanalyse (lire malgré tout). Du grec steganos (« couvert ») et graphein (« écrire »), elle ne cherche pas à transformer un message — elle cherche à le cacher. L’observateur ne soupçonne même pas qu’un message existe.
La distinction fondamentale avec la cryptographie
- Cryptographie : « Voici un message ; bonne chance pour le lire. » L’existence du message est publique, son contenu est protégé par une clé.
- Stéganographie : « Voici une photo de mon chien. » Le destinataire seul sait que la photo cache un message.
C’est une question de modèle d’adversaire. La cryptographie suppose que l’adversaire voit la communication — elle protège le contenu. La stéganographie suppose que l’adversaire peut intercepter mais peut ignorer la nature du contenu — elle protège l’existence même de la communication. Les deux postures sont complémentaires : on peut chiffrer puis cacher, ce qui donne deux barrières à franchir.
Techniques historiques
L’histoire de la stéganographie est aussi vieille que celle de la cryptographie :
- Tatouage du crâne : selon Hérodote (-440), Histiée tatoue un message sur le crâne d’un esclave, attend que les cheveux repoussent, puis envoie l’esclave avec instruction « rasez-le » au destinataire. Lent, mais indétectable.
- Tablettes de cire : à Sparte, on grave un message sur une tablette de bois, on recouvre de cire, puis on grave un message anodin sur la cire de surface. À l’arrivée, on gratte la cire.
- Encres invisibles : jus de citron ou de lait pour révélation à la chaleur. Sels métalliques (sulfate de cuivre, ferrocyanure) pour révélation chimique. Très utilisé pendant la Première Guerre mondiale par les espions.
- Acrostiches : la première lettre de chaque ligne d’un poème compose le message. Tradition ancienne en hébreu, latin, et plus récemment dans la poésie chevaleresque.
- Microdots (XXᵉ siècle) : photographies réduites à la taille d’un point d’imprimerie, collées à la place d’un point dans une lettre ordinaire. Inventés par les Allemands pendant la Seconde Guerre mondiale.
Stéganographie cryptographique
Certaines techniques sont à la frontière entre stéganographie et cryptographie :
- Chiffre de Bacon (1605, Francis Bacon) : encode le binaire dans la typographie d’un texte ordinaire (italique vs romain, ou deux fontes différentes). Le texte porteur est lisible et innocent ; les bits sont dans la forme, pas dans les mots. Cinq positions par lettre, donc 2⁵ = 32 codes.
- Chiffre Ave Maria (Trithemius, 1499) : remplace chaque lettre par un mot d’une liste de prières. Le message ressemble à une oraison authentique. Indétectable à l’œil non averti.
- Stéganographie linguistique moderne : on encode dans le choix de synonymes (« said » vs « stated » vs « announced ») d’un texte généré, ou dans la longueur des phrases. Plus difficile à détecter qu’une encre invisible.
Techniques numériques
L’ère informatique a démultiplié les possibilités :
- LSB embedding dans les images : modifier le dernier bit (Least Significant Bit) de chaque pixel ne change la couleur que de manière imperceptible à l’œil. Une image PNG de 1 mégapixel cache jusqu’à 384 ko de message (3 bits par pixel sur les canaux RGB). Outils : steghide, outguess, F5.
- Audio stéganographie : message caché dans le bruit haute fréquence d’un MP3 ou dans la phase d’un échantillon WAV. Inaudible.
- Vidéo stéganographie : combine LSB image + audio sur les frames. Très grand volume disponible.
- Stéganographie réseau : message caché dans les en-têtes TCP/IP « inutilisés » (champs IP options, séquence de paquets, timing entre paquets). Permet de canaliser de l’information à travers un firewall qui ne regarde que le contenu applicatif.
- Stéganographie blockchain : encoder un message dans des transactions Bitcoin (champs OP_RETURN, timing). Le message survit aussi longtemps que la blockchain.
Stéganalyse : la chasse aux messages cachés
À chaque technique de stéganographie correspond une stéganalyse — la cryptanalyse adaptée. On cherche les anomalies statistiques :
- Les bits LSB d’une image naturelle ont une distribution attendue ; si elle est trop uniforme, c’est suspect.
- Les fichiers MP3 ont des « buckets » de bruit caractéristiques ; un MP3 stéganographié se distingue par mesure de Kullback-Leibler.
- Le timing entre paquets réseau a une signature naturelle ; un canal caché par timing apparaît comme une anomalie.
Outils : StegExpose, zsteg, binwalk. Comme en cryptanalyse, c’est un jeu de chat et de souris.
Stéganographie versus cryptographie
| Cryptographie | Stéganographie | |
|---|---|---|
| Que cache-t-on ? | Le contenu | L’existence |
| Robustesse | Garantie par la longueur de clé | Garantie par l’imperceptibilité |
| Si découvert ? | Casser le chiffre demande du travail | Le message est révélé |
| Soupçon ? | Attire l’attention | Ne se voit pas |
D’où la pratique courante : chiffrer ET cacher. Le message est d’abord chiffré (donc protégé par une clé), puis dissimulé (donc invisible). Si quelqu’un le trouve, il faut encore le casser. Deux barrières valent mieux qu’une.
À retenir :
- Stéganographie = cacher l’existence d’un message ; cryptographie = cacher son contenu.
- Histoire ancienne : tatouage de crâne, tablettes de cire, encres invisibles, acrostiches.
- Numérique : LSB sur images, bruit MP3, timing réseau, blockchain.
- Stéganalyse statistique : on cherche les anomalies de distribution.
- Pratique recommandée : chiffrer puis cacher. Deux barrières.