Des espaces qui parlent : stéganographie dans le texte

Le 23/04/2025

Tout le monde connaît le chiffrement. Mais peu savent qu’il est aussi possible de cacher des messages dans du texte sans rien ajouter de visible.
C’est ce qu’on appelle la stéganographie textuelle, et une de ses méthodes les plus discrètes repose… sur les espaces.

Le principe

Certains caractères sont invisibles à l’œil nu, mais bien présents dans un fichier texte. Les plus courants sont :

l’espace classique (U+0020)

l’espace insécable (U+00A0)

l’espace fine (U+2009)

l’espace zéro largeur (U+200B)

le caractère de saut de ligne invisible (U+2028)

ou encore la tabulation (\t)

En alternant ces caractères selon un code prédéfini (par exemple : espace normal = 0, espace insécable = 1), on peut écrire un message en binaire invisible.

Exemple

Voici un extrait de texte "normal" :

La stéganographie est l’art de dissimuler un message dans un contenu banal.

Mais si je copie cette phrase avec une série de caractères invisibles à la fin de chaque mot, elle devient un support de message caché. Le rendu visuel reste inchangé… mais le fichier n’est plus le même.

Lecture automatique

Il existe des scripts (en Python ou JavaScript) capables d’extraire ces séquences invisibles et de reconstituer un message codé.
J’ai expérimenté une fois avec un outil maison… sans grande réussite.

Limites

  • Cette méthode ne fonctionne que si le format du fichier préserve les caractères spéciaux (éviter .docx, préférer .txt ou .md).
  • Un copier-coller peut altérer ou supprimer ces caractères.
  • Et bien sûr, la moindre relecture automatique ou export web peut tout casser.

Bref, c’est élégant… mais instable.

À tester si vous êtes curieux

Je laisse ici un petit extrait “expérimental”. Peut-être y trouverez-vous un message ? Ou peut-être est-ce une impasse.

La stéganographie est l’art de dissimuler un message dans un contenu banal.