Darkjpeg : un webservice de stéganographie opensource

Rédigé par citizenz - - 1 commentaire

Je m'attaque à un truc que je ne connais pas du tout : la stéganographie. Ca m'a l'air un poil complexe bien qu'utilisé depuis déjà longtemps par "certains groupes".

Sur ce thème, je viens de tomber sur la page Github de DarkJpeg (https://github.com/yndi/darkjpeg/) et son site principal (http://yndi.github.io/darkjpeg/).

DarkJpeg, c'est quoi ?

DarkJPEG est un service Web de stéganographie en ligne de nouvelle génération.

Il est censé répondre aux besoins des utilisateurs en ce qui concerne la liberté de communication, et ceci même dans les pays qui enfreignent les droits de l'homme, par leur censure du Net ou même en refusant d'utiliser la cryptographie par la loi.

Le service utilise des méthodes de stéganographie qualifiées de "fortes" pour cacher ... le fait même de cacher des données (avec des méthodes de cryptographie puissantes) et pour protéger les données d'une lecture "non autorisée" par des groupes de personnes non fiables.

C'est un peu compliqué pour le novice que je suis. En fait, c'est un peu le système des poupées russes : je souhaite cacher ... ce que j'ai caché.

Ce que Darkjpeg propose :

  • SHA3 key generation;
  • AES256 encryption;
  • JPEG steganography;
  • Random containers;
  • Client side encoding;
  • Anonymity and privacy;
  • MIT License.

Le site n0where.net propose un petit compte-rendu des possibilités qu'offre cette appli (https://n0where.net/open-source-steganography-darkjpeg/).

Comment ça marche ?

Je me suis "amusé" à tester les capacités de l'appli et c'est assez surprenant. Vous pouvez, directement sur le site, copier-coller une URL ou carrément ajouter un fichier. 

J'ai d'abord choisi une image :


Puis je l'ai "glissée-déposée" dans la barre prévue à cet effet :


J'ai entré un mot de passe, j'ai cliqué sur OK (en fait, y'a pas écrit OK... juste deux "barres").

Remarquez les options qui s'affichent : 

  • encode : permet d'encoder
  • auto : option par défaut (autres options : join, steg, ...)
  • file : affiche la description de votre fichier et sa taille
  • rand : ça télécharge une image de manière aléatoire depuis Wikimedia (autres options : grad ou image)


Et Hop ! Je me suis retrouvé avec une image... mais pas celle de départ ! C'est bien ça la stéganographie... ou l'art de camoufler.
Vous cliquez sur l'image pour la télécharger.

Et après ?

Et bien l'idée c'est de pouvoir aussi "décoder" l'image.
Avec les mêmes outils, on va faire "la démarche inverse" :

  • On charge l'image encodée dans la barre
  • On clique encode qui se transforme en decode
  • On rentre le mot de passe
  • On valide ...

.. et HOP!

On retrouve le fichier original ! Magique ... et peut-être... utile.

Fil RSS des articles de ce mot clé