• Aucun résultat trouvé

La dissimulation de données

I.4 Mise en œuvre (Où et comment cacher l‟information secrète)

I.4 Mise en œuvre

(Où et comment cacher l‟information secrète)

Il existe autant d‟endroits où cacher de l‟information qu‟il existe de formats et de types de données, les plus fréquemment utilisés étant les plus anodins. Bien qu‟on ne s‟intéresse ici qu‟au cas des images, on peut citer quelques possibilités pour les autres formats.

I.4.1. Message transporté dans un texte

Le placement des ponctuations, l‟introduction de variations orthographiques ou typographiques, le choix entre des synonymes ou des formes grammaticales, l‟espacement entre les mots sont des façons simples d‟ajouter de l‟information sans perturber l‟information originale.

D‟autres techniques plus subtiles mais aussi plus délicates à mettre en œuvre, consistent à offrir d‟autres clefs de lecture en n‟utilisant que certaines lettres ou les lettres dans un certain ordre.

Pour les textes écrits, le fait de décaler une lettre de quelques pixels ne pose aucun problème sur une imprimante à laser et est pratiquement invisible à l'œil nu. En jouant sur les inter lettrages d'un texte très long et à raison de deux valeurs d'espacement correspondant à 1 et 0, il est possible de transmettre un message sous forme papier, qui ne révèlera son vrai sens qu'une fois analysé par un scanner ayant une bonne précision.

I.4.2 Message transporté dans une image

La stéganographie d‟image numérique exploite les limites du système visuel humain (SVH). Ce dernier a une très basse sensibilité aux petits changements dans la luminance, et par conséquent, les variations dans les basses fréquences de l‟image peuvent être utilisées pour cacher une grande quantité d‟information. D‟autres détails du codage de l‟image, telle la palette de couleur, peuvent également être utilisés pour cacher des informations.

Typiquement les images numériques sont stockées dans des fichiers à raison de 24 bits/pixel ou de 8 bits/pixel. Evidement, une image de 24 bits fournit plus d‟espace pour cacher les informations mais, elles sont généralement très volumineuses (1024 sur 768 pixels) et ne sont transmises sur un réseau (Internet) qu‟au format compressé. Dans ce cas, c‟est dans les choix du niveau de compression que se fera l‟insertion. Les approches d‟insertion les plus fréquentes sont les suivantes:

Chapitre 3 : La dissimulation de données

36  Usage des bits de poids faible d'une image

La technique de base dite LSB (pour Least Significant Bit), consiste à modifier les bits de poids faible des pixels codant l'image pour contenir les bits du message secret [FG99]. une image numérique est une suite de pixels dont on code la couleur a l'aide d'un triplet d'octets; par exemple pour une couleur RGB sur 24 bits, chaque octet indique l'intensité de la couleur rouge, vert ou bleu (Red, Green, Blue) par un niveau parmi 256. Passer d'un niveau n au niveau immédiatement supérieur (n+1) ou inférieur (n-1) ne modifie que très peu la teinte du pixel, or c'est ce que l'on fait en modifiant le bit de poids faible de l'octet.

Cette technique très basique, s'applique tout particulièrement au format d'image BMP, format sans compression destructive, avec codage des pixels entrelacé sur 3 octets comme énoncé ci-dessus. Réciproquement, tout procédé de compression-décompression d'images avec pertes tel que le format JPEG est susceptible de détruire un message stéganographié de cette façon. On parle alors de stérilisation.  Manipulation de la palette de couleurs d'une image

Certains formats graphiques tel que GIF ou PNG permettent le stockage des couleurs de l'image par référence à une palette de couleurs insérée dans le même fichier. Pour une image contenant 256 couleurs dans sa palette, il y a factoriel 256 façons différentes de stocker cette image. En utilisant un code connu entre l'émetteur et le récepteur de l'image (une clef), on peut donc communiquer un message de petite taille caché dans la permutation des couleurs dans la palette de l'image. Les deux images sont visuellement identiques, mais le stockage de celles-ci est différent.

 Message caché dans le domaine de compression d'une image

L'idée dans cette technique n'est pas de cacher une information dans les couleurs ou dans la palette mais dans les choix de compression. On distingue les algorithmes de compression conservative (lossless) et les algorithmes de compression non conservative (lossy).

- Avec des algorithmes de compression conservative tel que Zip ou Gzip, on peut choisir la puissance de compression. En consommant plus de temps calcul et/ou plus de mémoire pour les opérations intermédiaires, on peut obtenir de meilleurs résultats de compression. Ainsi deux fichiers compressés de tailles différentes peuvent être décompressés en deux fichiers identiques. - Avec la compression non conservative comme le format JPEG (joint

photographic Experts Group) on peut compresser des images à nuance continue à moins de 10% de leur taille originale , tout en perdant un peu de qualité. Le format JPEG est à double étape de compression. La première consiste à découper l'image en bloc de 8 fois 8 pixels et de transformer ce bloc par la transformée du cosinus discrète (DCT). Parmi les 64 coefficients de la DCT de chaque bloc, on n'en considère que 8 choisis parmi les fréquences moyennes. Trois de ces coefficients sont choisis avant insertion, et pour coder un "1" on leur rajoute une certaine valeur, et on leur enlève cette même valeur

Chapitre 3 : La dissimulation de données

37

pour coder un "0". Une fois tous les blocs compressés, il faut coder les coefficients obtenus en consommant le moins d'espace possible. Cette deuxième compression n'introduit pas de perte et est similaire dans les principes à ce que l'on peut retrouver dans Zip ou Gzip. Là encore, on peut introduire des bits d'informations supplémentaires.

I.4.3 Message transporté dans du son

Dans les formats sonores, il existe à peu près les mêmes possibilités de cacher des messages que dans les images. Le bruit de fond par exemple, constitué de faibles variations dans les basses fréquences, imperceptible pour l‟oreille, peut être utilisé pour cacher une grande quantité d‟information. Afin de rester indécelable, le bruit artificiel doit posséder les propriétés statistiques d‟un vrai bruit de fond. Dans ce contexte, et sans entrer dans les détails, on peut distinguer quatre méthodes pour dissimuler les données : le codage du bit du poids faible, phase du codage, le spectre dispersé et la dissimulation des données par l‟écho.

Dans un fichier sonore au format MIDI, par analogie à la permutation de la palette de couleurs, il est possible de permuter les différentes pistes.

Dans un fichier sonore avec compression sans perte, on peut cacher de l'information dans des variations imperceptibles du son, les bits faiblement significatifs.

Dans un fichier sonore avec compression avec perte, on peut cacher de l'information dans les choix de compression.

I.5 La stéganalyse

Alors que l‟objectif de la stéganographie est l‟action d‟éviter le soupçon des messages cachés au sein d‟autres données, le but de la stéganalyse est de découvrir et rendre inutilisables de tels messages cachés.

Le problème ici est différent de celui de la cryptanalyse : Le cryptanalyste dispose du message chiffré qu‟il veut décrypter, alors que le stéganalyste est un observateur qui soupçonne une communication cachée et qui veut l‟empêcher. Le message est inconnu, et la technique utilisée l‟est aussi. Pour compliquer la situation, souvent le message est chiffré avant d‟être dissimulé. Pourtant des moyens sérieux existent : Pour interdire toute communication cachée il faut pouvoir intercepter et transformer toutes les communications (car elle peuvent potentiellement servir de transport). Un firewall possède les propriétés appropriées pour ce genre de contrôle absolu des communications. Celui qui veut empêcher une communication cachée se doit néanmoins de laisser passer le message de couverture tout en détruisant le message caché. Il peut aussi tout simplement détruire tout message suspect :

- L‟observateur peut comparer les propriétés statistiques de la communication qu‟il soupçonne et les comparer avec celles d‟une communication ne contenant

Chapitre 3 : La dissimulation de données

38

pas de messages cachés. De trop grandes différences peuvent être l‟indice d‟une communication cachée.

- Puisque le bruit de fond ou les basses fréquences sont des bonnes cachettes, il faudra y rajouter son propre bruit, ou filtrer le bruit existant. Il s‟agit donc d‟une sorte de dégradation du message. On pourra aussi décoder/décompresser puis coder/compresser le message pour le débarrasser des cachettes utilisant les particularités de certain codage.

- Un logiciel de stéganographie laisse sur le stégo-médium une série d‟octets

caractéristiques ou signature. Parfois, le simple fait d‟utiliser un format d‟image particulier peut être une signature.

- En pratique, la stéganographie est couplée avec la cryptographie afin de rendre

le message inintelligible s‟il est découvert. Le principal problème est que lorsque l‟on chiffre un fichier avec de la cryptographie forte, le flux de données se présente comme un flux aléatoire d‟octets. Et curieusement, un flux de données aléatoires est rare dans le domaine de l‟informatique. Donc, un flux d‟octets aléatoires apparaissant soudainement devient détectable.

En conclusion, la propriété la plus importante dans tout système stéganographique est l‟indétectabilité par analyse statistique. En d‟autres termes, il doit être difficile pour un attaquant de distinguer entre le médium original et le stégo-médium. A ce jour, une lutte efficace contre la stéganographie reste difficile à mettre en œuvre même s‟il existe des pistes intéressantes.