Tutoriel sur la Stéganographie
1. Qu'est-ce que la Stéganographie ?
La stéganographie est l'art et la science de dissimuler des messages secrets dans un message de couverture de manière à ce que personne, hormis l'expéditeur et le destinataire prévu, ne soupçonne l'existence du message.
Modèle de base de la stéganographie
Un fichier de couverture (X) et un message secret (M) sont introduits dans un encodeur stéganographique. La fonction d'encodage stéganographique, f(X,M,K), intègre le message secret dans un fichier de couverture. L'objet stéganographique résultant ressemble fortement à l'original, sans changements visibles. Pour récupérer le message secret, l'objet stéganographique est décodé par un décodeur stéganographique.
2. Historique de la Stéganographie
La stéganographie existe depuis des milliers d'années et a été utilisée dans diverses formes :
- En 440 av. J.-C., les Grecs anciens écrivaient des messages sur du bois et les recouvraient de cire.
- Les Romains utilisaient des encres invisibles qui étaient révélées par la chaleur ou la lumière.
- Pendant la Seconde Guerre mondiale, les Allemands ont introduit les microdots, de minuscules documents cachés dans des papiers ordinaires.
- Les chiffres nuls permettaient de cacher des messages secrets dans des textes anodins.
Aujourd'hui, des techniques modernes assurent la protection des données.
3. Différence entre Stéganographie et Cryptographie
Bien que la stéganographie et la cryptographie aient pour but de protéger les informations, leurs méthodes diffèrent.
Critère | Stéganographie | Cryptographie |
---|---|---|
Définition | Cache l'existence d'une communication | Transforme les données en une forme inintelligible |
Objectif | Maintenir la communication secrète | Protéger les données |
Visibilité des données | Jamais | Toujours |
Structure des données | Inchangée | Modifiée |
Clé | Optionnelle, mais plus sûre avec | Nécessaire |
Défaillance | Si découvert, les données sont exploitables | Nécessite une clé pour déchiffrer |
La stéganographie est plus discrète, mais si le message caché est détecté, il est plus vulnérable.
4. Techniques de Stéganographie
La stéganographie peut être classée en cinq types selon l'objet de couverture :
a. Stéganographie textuelle
Cacher des informations dans des textes en modifiant leur format, en remplaçant des mots, ou en générant des textes lisibles avec une grammaire aléatoire. Techniques principales :
- Méthodes basées sur le format
- Génération aléatoire et statistique
- Méthodes linguistiques
b. Stéganographie par image
Les images numériques sont des supports idéaux en raison de leur grande quantité de bits. Principales techniques :
- Insertion du bit de poids faible (LSB)
- Masquage et filtrage
- Encodage de motifs redondants
- Chiffrement et dispersion
- Transformation cosinus et codage
c. Stéganographie audio
Les messages secrets sont insérés dans un signal audio, ce qui modifie sa séquence binaire. Techniques :
- Codage du bit de poids faible
- Codage de parité
- Codage de phase
- Spectre étalé
Utilisation dans les fichiers WAV, AU, MP3.
d. Stéganographie vidéo
Les données peuvent être cachées dans des fichiers vidéo. Deux approches principales :
- Intégration des données dans la vidéo brute avant compression
- Intégration directe dans le flux compressé
e. Stéganographie réseau (Protocol Stéganography)
Utilisation des protocoles réseau (TCP, UDP, ICMP) pour cacher des informations dans les paquets de données, par exemple dans les en-têtes TCP/IP.
5. Meilleurs Outils pour la Stéganographie
Voici quelques outils gratuits pour pratiquer la stéganographie :
- Stegosuite : écrit en Java, permet de cacher des informations dans des images.
- Steghide : open source, cache des fichiers secrets dans des images ou des fichiers audio.
- Xiao Steganography : cache des données dans des images BMP ou des fichiers WAV.
- SSuite Picsel : cache du texte dans des images avec une approche différente.
- OpenPuff : outil avancé permettant de stocker des fichiers dans des images, audio, vidéos ou fichiers flash.