Démontrer la stéganographie textuelle
Faites porter un court secret par une phrase ordinaire pour comprendre l'encodage des caractères Unicode invisibles.
Guide
La stéganographie par caractères de largeur nulle encode d'abord le message secret en octets UTF-8, puis convertit chaque bit en caractère invisible : 0 devient U+200B, 1 devient U+200C, et des U+200D servent de délimiteurs au début et à la fin. Si le texte porteur n'est pas vide, toute la charge invisible est insérée juste après le premier point de code Unicode ; la page de décodage sait aussi retirer du texte visible les caractères de largeur nulle courants.
Mis à jour le 2026-09-102 min read
La stéganographie par caractères de largeur nulle encode d'abord le message secret en octets UTF-8, puis convertit chaque bit en caractère invisible : 0 devient U+200B, 1 devient U+200C, et des U+200D servent de délimiteurs au début et à la fin. Si le texte porteur n'est pas vide, toute la charge invisible est insérée juste après le premier point de code Unicode ; la page de décodage sait aussi retirer du texte visible les caractères de largeur nulle courants.
| Entrée | Sortie | Remarque |
|---|---|---|
Porteur Bonjour + secret A |
8 bits insérés après B |
le A tient sur 1 octet en UTF-8 |
| Texte contenant U+200B/U+200C | secret UTF-8 décodé | une fin de moins de 8 bits est ignorée |
| Texte contenant U+FEFF | le nettoyage le supprime | le nettoyage va plus loin que les caractères produits par l'outil |
Faites porter un court secret par une phrase ordinaire pour comprendre l'encodage des caractères Unicode invisibles.
Après un copier-coller depuis une page web ou un document, si une comparaison donne un résultat étrange, supprimez les caractères de largeur nulle avant de continuer.
Non. La règle d'encodage est publique et directement réversible : il n'y a pas de clé, et aucune confidentialité n'est garantie.
La plateforme intermédiaire peut normaliser ou filtrer U+200B/U+200C/U+200D, ce qui endommage le flux de bits.
Le porteur, le message, l'encodage et le décodage restent en mémoire dans le navigateur ; l'outil ne téléverse ni ne conserve ces textes.
Mis à jour le 2026-09-10
Cacher un message secret dans un texte ordinaire à l’aide de caractères invisibles, ou révéler et supprimer un contenu caché
Cet outil n’est pas entièrement traduit ; certains contenus utilisent la langue source ou une langue de repli.
N’importe quel texte ordinaire peut servir de couverture
Généré après saisie du message secret
Copiez le texte ci-dessus et envoyez-le : à l’œil nu, il est identique à un texte ordinaire ; votre destinataire le reconstitue avec « Extraire le message » de cet outil.
Le message secret est d’abord converti en binaire UTF-8, puis encodé avec des caractères de largeur nulle : 0 → U+200B (espace de largeur nulle), 1 → U+200C (non-joignant de largeur nulle) ; le début et la fin sont délimités par U+200D (liant de largeur nulle). Le tout est inséré après le premier caractère du texte porteur. Ces caractères ayant une largeur nulle, ils sont totalement invisibles à l’œil nu.
Usages courants : transmission de messages codés, filigrane de copyright (pour retrouver la source d’une fuite de document), détection anti-copie, etc. Attention : certains champs de saisie et éditeurs filtrent les caractères de largeur nulle ; si l’extraction échoue après un collage, transmettez plutôt le texte sous forme de fichier.