Cacher des données dans une image

La stéganographie est l’art de cacher des informations à la vue, et dans ce tutoriel, je vais vous montrer comment utiliser Steghide - un outil de ligne de commande très simple pour faire exactement cela. En outre, je vais passer en revue un peu de contexte conceptuel pour vous aider à comprendre ce qui se passe dans les coulisses. C’est un outil simple, configurable, qui ne prend que quelques secondes pour cacher des informations dans de nombreux types de fichiers.

Spy Mode Activated

Qu’est-ce que la stéganographie?

Contrairement au cryptage, où il est évident qu’un message est caché, la stéganographie cache les données en clair , à l’intérieur d’un fichier tel qu’une image. En ce qui concerne les images, pour quiconque ne sait pas qu’il contient des données cachées, cela ressemble à une image normale et innocente.

La stéganographie est utile dans les situations où l’envoi de messages cryptés peut éveiller des soupçons, comme dans les pays où la liberté d’expression est supprimée. Il est également fréquemment utilisé comme filigrane numérique pour détecter les images ou les fichiers audio volés. Et sur une note moins pratique - c’est juste cool.

Comment la stéganographie est-elle mise en œuvre?

Il existe plusieurs techniques différentes pour dissimuler des données dans des fichiers normaux. L’un des plus largement utilisés et peut-être le plus simple à comprendre est la technique des bits les moins significatifs, communément appelée LSB.

Cette technique change les derniers bits d’un octet pour encoder un message, ce qui est particulièrement utile dans quelque chose comme une image, où les valeurs rouges, vertes et bleues de chaque pixel sont représentées par huit bits (un octet) allant de 0 à 255 en décimal ou 00000000 à 11111111 en binaire.

Changer les deux derniers bits dans un pixel complètement rouge de 11111111 à 11111101 change seulement la valeur rouge de 255 à 253, ce qui à l’œil nu crée un changement de couleur presque imperceptible mais nous permet toujours d’encoder des données à l’intérieur de l’image.

La technique des bits les moins significatifs fonctionne bien pour les fichiers multimédias, où les valeurs d’octets légèrement changeantes ne créent que de légères modifications imperceptibles, mais pas si bien pour des choses comme le texte ASCII, où un seul bit changera complètement le caractère. Cela ne veut pas dire que les données cachées à l’aide de la stéganographie LSB sont également faciles à détecter si quelqu’un les recherche.

Pour cette raison, il existe une pléthore d’autres techniques de stéganographie, chacune avec ses propres avantages et inconvénients. Une autre technique beaucoup moins détectable s’appelle la technique du coefficient de transformée en cosinus discrète (je sais, c’est une bouchée), qui change légèrement les poids (coefficients) des ondes cosinus qui sont utilisées pour reconstruire une image JPEG.

Utilisation efficace de la stéganographie

En gardant à l’esprit que certaines techniques de stéganographie numérique sont meilleures que d’autres, en général, il vaut mieux éviter la technique LSB et opter pour quelque chose d’un peu plus sophistiqué. En fait, concevoir votre propre algorithme de stéganographie n’est pas très difficile si vous avez déjà de bonnes bases de codage et de mathématiques. Mais pour avoir une idée du fonctionnement de la stéganographie, LSB, que Steghide utilise, se débrouillera bien ici.

Deux autres choses à considérer sont le cryptage et la compression. Le cryptage des données avant leur intégration ajoute une couche de sécurité supplémentaire, tandis que la compression de vos données vous permettra évidemment de mieux les intégrer dans votre fichier de couverture. Les schémas de cryptage et de compression peuvent être inclus en tant que paramètres optionnels dans Steghide, et nous les aborderons ci-dessous.

Intégrez les données cachées dans un fichier

L’utilisation de Steghide est très facile. Pour l’installer depuis le terminal sous Linux, utilisez apt .

1
apt-get install steghide

Une fois installé, pour pouvoir intégrer des données dans un fichier, tapez la commande ci-dessous.

1
steghide embed -ef 'secret file' -cf coverFile -sf 'file out' -z compressionLevel -e 'schema'

Traduction de wonderhowto.com