Des
chercheurs ont trouvé un moyen d’encoder un message dans les variations
graphiques des lettres d’un texte. Subtil et efficace.
Un groupe de chercheurs de l’université américaine de
Columbia vient de présenter une nouvelle technique de stéganographie.
Pour rappel, cet art mathématique permet de dissimuler des messages dans
un autre, l’exemple le plus courant étant de les cacher dans des
fichiers d’image ou de son. Ce que l’on peut faire avec des logiciels
open source tels que Anubis ou OpenStego. Même les pirates commencent à utiliser la stéganographie pour diffuser leurs malwares.
Baptisée FontCode,
cette nouvelle technique encode le message secret dans des variations
graphiques subtiles des caractères. Pour chaque lettre d’une police
donnée, Times New Roman par exemple, les chercheurs vont établir une
série de variantes que l’on pourra associer à des chiffres. En fonction
du message secret à dissimuler, FontCode remplacera alors chaque
caractère par l’une de ces variantes.
Le résultat final pourra être sauvegardé sous la
forme d’un document PDF ou d’une image. Le texte peut également être
imprimé sur un support papier sans que l’encodage en soit affecté. Pour
décoder le message, il suffit de faire analyser le fichier par un
logiciel dédié. Dans le cas d’un support imprimé, le destinataire du
message peut également le scanner au travers d’un smartphone. Dans les
deux cas, la reconnaissance des différentes variantes s’appuie sur des
algorithmes d’apprentissage automatique, en occurrence un réseau
neuronal convolutif. Les chercheurs ont diffusé en ligne une
démonstration vidéo de leur nouvelle technique.
La quantité de données que l’on peut intégrer dépend
évidemment de la longueur du texte initial. Un texte d’environ 40.000
caractères permet de dissimuler environ 70 kilobits de données. Ce n’est
pas énorme, mais suffisant pour diffuser un message secret. Les cas
d’usage de FontCode sont d’ailleurs multiples. Le plus évident est celui
de pouvoir créer un canal de communication secret entre plusieurs
personnes. Ceux-ci pourront même aller jusqu’à chiffrer le message
caché, à condition qu’ils se mettent d’accord sur une clé commune.
FontCode peut également servir pour intégrer de manière invisible des
métadonnées pour apporter des informations sur le texte et/ou l’auteur
ou simplement insérer un lien hypertexte façon QRCode. FontCode permet
également d’insérer un tatouage numérique
pour lutter contre le piratage ou une signature numérique pour garantir
l’authenticité du texte et lutter contre des falsifications.