4 points par GN⁺ 9 시간 전 | 1 commentaires | Partager sur WhatsApp
  • Ghost Font est une expérience de communication visuelle qui forme des lettres à partir du mouvement de points identiques au fond : les humains perçoivent le message dans la vidéo, tandis qu’une IA qui analyse des images individuelles ne peut pas facilement le déchiffrer
  • Au lieu d’une police TTF traditionnelle, elle combine mouvement, vidéo, bruit et messages-leurres ; si l’on met la vidéo en pause ou que l’on capture l’écran, les points se fondent dans l’arrière-plan et le message n’apparaît pas
  • Claude Fable et GPT Sol 5.6 Ultra ont eu des difficultés jusqu’à ce qu’on leur indique par prompt la méthode exacte de déchiffrement, tandis que ChatGPT 5.5 Pro a généré un message inexistant après 19 minutes d’analyse
  • Un agent dédié exécutant du code en local peut analyser le mouvement des points ; des messages-leurres sont donc ajoutés à chaque vidéo, mais pour de véritables informations confidentielles, il faut utiliser le chiffrement ou un mot de passe
  • Des usages sont envisageables pour les CAPTCHA et les benchmarks de reconnaissance visuelle par l’IA, mais la lecture est difficile aussi pour les humains, et des modèles nativement vidéo pourraient le déchiffrer. Le code de génération vidéo doit être publié en open source

Des lettres créées par le mouvement

  • Ghost Font enregistre les messages non pas sous forme de lettres statiques, mais via le mouvement de points
    • Elle combine mouvement, vidéo, bruit et leurres pour partager des messages lisibles par les humains
    • Ce n’est pas un fichier de police TTF classique, mais une expérience visant à déterminer s’il est possible de transmettre visuellement du texte dans un format que l’IA ne comprend pas facilement
  • Même si ce n’est pas aussi net que du texte ordinaire, les humains peuvent identifier immédiatement les lettres en mouvement, tandis que les principaux modèles d’IA ne les déchiffrent pas facilement
  • Le playground proposé est un prototype destiné à tester le concept
    • Saisissez quelques mots et les lettres apparaissent grâce au mouvement des points
    • Vous pouvez prévisualiser en temps réel le message saisi ou le télécharger sous forme de vidéo pour le partager et le tester vous-même
    • Tout le traitement se fait en local ; les données ne sont ni envoyées ni partagées avec un serveur

Une structure illisible sur une image fixe

  • Toutes les lettres sont composées de points qui ressemblent exactement au fond, et le message n’apparaît que dans le mouvement des points au fil du temps
  • Si l’on met la vidéo en pause, les points statiques se mélangent entre eux ; il est donc difficile de déterminer, à partir d’une seule image, quel message est contenu
  • Capturer la page à l’écran ou extraire des images individuelles de la vidéo ne révèle aucune information de message lisible

De ZXX à Ghost Font

  • En 2013, le designer Sang Mun a publié ZXX, une police lisible par les humains mais difficile à lire pour les logiciels de reconnaissance optique de caractères (OCR)
    • Elle se composait de quatre polices, qui camouflaient les lettres avec du bruit, les barraient avec des lignes ou les dissimulaient sous de faux marquages
    • À l’époque, elle était considérée comme une police permettant d’échapper à la surveillance, mais les agents d’IA modernes peuvent facilement lire les lettres rendues avec ZXX
  • Lorsqu’une image ZXX a été fournie au mode Instant de ChatGPT 5.5, il a reconnu le mot et même certains petits détails avec un seul prompt
  • À l’inverse, une image unique de Ghost Font ne montre que des points statiques illisibles, ce qui rend difficile l’obtention du message par la même analyse d’image
    • ChatGPT 5.5 Pro a généré un message qui n’existait pas réellement après 19 minutes d’analyse

Analyse basée sur le code et messages-leurres

  • Le simple fait d’utiliser de la vidéo ne constitue pas une protection complète
    • Dans un environnement de modèle en ligne, le message peut ne pas être détecté dans les images individuelles
    • Un agent dédié disposant d’un environnement d’exécution de code en local peut analyser les mouvements des points et déchiffrer le vrai message
  • Ghost Font ajoute des messages-leurres à chaque vidéo générée afin de rendre l’analyse plus difficile
    • Si un agent qui cherche le message caché découvre d’abord le leurre, il peut le considérer comme le vrai message
    • Cette couche complique le déchiffrement même pour de puissants modèles de raisonnement comme Fable et GPT Sol 5.6 Ultra
  • Claude Fable et GPT Sol 5.6 Ultra pouvaient utiliser du code, mais ils avaient du mal à déchiffrer le message en mouvement tant qu’on ne leur indiquait pas précisément, par prompt, quelle technique rechercher

Limites comme outil de sécurité

  • Si vous devez réellement cacher un message, il faut utiliser non pas Ghost Font, mais le chiffrement ou une clé spécifique
    • Un message ouvrable uniquement avec un mot de passe connu des humains ne peut pas non plus être lu par une IA sans ce mot de passe
  • L’objectif de Ghost Font n’est pas une sécurité parfaite, mais de tester s’il est possible d’intégrer à un fichier partageable un message visuel visible par les humains mais difficilement lisible par l’IA
  • C’est aussi une tentative d’explorer les limites de la perception de l’IA tout en préservant des éléments propres à l’humain
    • Alors que l’IA est aussi utilisée pour la génération de polices, l’espoir est que les humains continuent de conserver une voix créative singulière

CAPTCHA et benchmarks IA possibles

  • Les lettres en mouvement pourraient être appliquées aux CAPTCHA
    • Alors que l’IA résout facilement de nombreux CAPTCHA, le mouvement dans une vidéo pourrait constituer une tâche relativement facile à lire pour les humains tout en rendant le déchiffrement plus difficile pour les bots automatisés
  • Une autre possibilité est de l’utiliser comme benchmark pour mesurer les progrès de la perception visuelle de l’IA
    • Les modèles multimodaux actuels reposent principalement sur l’image et, même lorsqu’ils reçoivent une vidéo, ils la découpent généralement en images pour analyser chacune d’elles
    • Si des modèles nativement vidéo apparaissent à l’avenir, on s’attend à ce qu’ils puissent traiter directement le mouvement et lire le texte de Ghost Font

Un écart qui se réduit entre humains et IA

  • Ghost Font est difficile à lire pour l’IA, mais aussi assez difficile à lire pour les humains
  • À mesure que les capacités de perception visuelle de l’IA progressent rapidement, l’écart de reconnaissance entre humains et IA continue de se réduire
  • La prochaine étape prévue est de publier le code de génération vidéo en tant que projet open source
    • Il sera étendu pour prendre en charge des tailles d’écran plus grandes et traiter aussi des chaînes plus longues

1 commentaires

 
GN⁺ 9 시간 전
Avis sur Hacker News
  • Ce type de CAPTCHA existe déjà et peut être contourné facilement. Il suffit d’imiter une moyenne temporelle en calculant la moyenne de 4 images consécutives environ pour faire ressortir les lettres, et même un grand modèle de langage basique peut alors les lire
    C’est une approche qui s’applique aussi à d’autres techniques de défense contre l’IA, donc elle risque de ne presque pas ralentir les scrapers

  • Il devrait suffire d’appliquer à Ghost Font des techniques classiques de compression vidéo, puis de reconstruire les contours des lettres à partir du signal compressé et de les analyser avec de la reconnaissance optique de caractères (OCR). Cela peut constituer une nouvelle technique de CAPTCHA, mais une fois l’affrontement engagé, ce ne sera probablement pas fondamentalement plus difficile que les méthodes existantes

    • Au final, il y aura sûrement quelque part une commande ffmpeg pour le faire
    • J’ai déjà obtenu le résultat suivant en appliquant simplement des filtres à deux captures d’écran
      https://fingswotidun.com/images/GhostFont_2_samples.jpg
      https://fingswotidun.com/images/GhostFont_b_2_samples.jpg
      Une IA pourrait utiliser des images successives au lieu d’appuyer maladroitement sur le bouton de capture d’écran, et recueillir assez d’échantillons, même dans une vidéo plus courte que le temps nécessaire à un humain pour lire, pour reconstituer nettement le texte
    • Cela pourrait remplacer les CAPTCHA existants, mais n’apporterait pas l’effet secondaire consistant à entraîner sur des images non vérifiées à partir des données soumises par les utilisateurs, ou à renforcer les labels de fragments d’images déjà existants
  • Au début, j’ai cru que “Written In Ghost Text” était la phrase à lire, et je n’ai compris que bien plus tard qu’il s’agissait d’un leurre. La vraie phrase était presque aussi difficile à lire qu’une image 3D Magic Eye, et sur mobile cela m’a même donné mal à la tête
    L’idée de recherche est intéressante, mais je me demande quand les modèles d’IA découvriront comment la décoder ; j’ai l’impression qu’une légère amélioration du prompt pourrait suffire

    • Pour moi, c’était exactement l’inverse. Le vrai texte était très facile à lire, mais “Written in Ghost Text” était si faible que je l’aurais complètement raté sans ce commentaire
    • Comme je ne parviens pas à voir les images Magic Eye, je ne vois pas non plus le texte d’assistance. Puisque l’IA peut le lire à partir de plusieurs échantillons, il est probable qu’à long terme elle finisse par mieux le lire que les humains
    • Vraiment ? C’est la seule phrase que je vois
    • Je n’arrive pas du tout à lire la phrase leurre
  • J’ai donné la vidéo enregistrée à GPT-5.6 et il a lu le texte sans problème. Il a estimé le mouvement de la vidéo via le flux optique et une carte de déplacement vertical, puis les a combinés en une carte de mouvement à fort contraste ; je ne lui ai donné aucune méthode particulière, je lui ai juste demandé ce qui était écrit

    • J’ai aussi essayé dans Fable avec le prompt “What does the message say?” et il l’a trouvé sans difficulté. Le raisonnement est intéressant : https://imgur.com/a/GToXs6W
    • Il n’a pas détecté la phrase leurre ; il a lu le texte que j’avais moi-même saisi. Il a successivement exploité les métadonnées de la vidéo et l’analyse des images, la détection de périodicité du stéréogramme, le floutage et la réduction, le calcul du déplacement entre images et de la corrélation croisée, la vérification avec OpenCV, l’optimisation du flux optique, l’estimation du déplacement vertical et l’amélioration de l’extraction du texte
    • Je me demande s’il y a un lien vers cette conversation
  • C’est astucieux, mais pas impossible à casser par algorithme. Il suffit de décaler l’index de l’une de deux images consécutives pour trouver la position où la différence est minimale, puis de soustraire les images alignées et d’appliquer une reconnaissance optique de caractères
    Cela fonctionne particulièrement bien quand le mouvement est linéaire ou dans une seule direction ; avec 20 lignes de code qui ne vérifient que le déplacement vertical, voici le résultat obtenu en soustrayant l’image 7 de l’image 1 : https://imgur.com/a/only-human-can-read-this-vfDe6ZA

    • Cette méthode est vulnérable aux faux positifs et reste globalement coûteuse en calcul. Ghost Font lui-même semble être une technique assez solide
    • Je serais curieux de voir le code
  • J’ai collé une capture d’écran du texte par défaut “GHOST FONT” dans ChatGPT 5.6 Sol en lui demandant de le lire ; après un long moment de traitement, il a répondu “WHAT HAPPENS IN VEGAS / STAYS IN VEGAS”

    • Le texte n’est pas une image fixe mais une vidéo, et chaque image est composée de points aléatoires ; la phrase visée n’est présente dans aucune image isolée
      Cela exploite le fait que les meilleurs modèles actuels traitent encore la vidéo image par image, et qu’il existe aussi dans chaque image une phrase leurre cachée destinée à leur faire croire qu’ils ont trouvé la réponse et à les faire s’arrêter. En analysant les corrélations entre images, on peut comprendre la technique, mais dans une image unique il n’y a que du bruit et un leurre
    • Ce qui permet de lire le texte, c’est le mouvement ; il est donc difficile d’attendre la bonne réponse à partir d’une capture d’écran remplie de bruit. Mais en y regardant de plus près, l’image fixe contient bien aussi “WRITTEN IN GHOST FONT”
  • Si c’est déjà difficile pour les humains, on pourra aussi entraîner l’IA à le lire si cela devient important. Du coup, je me demande quelle est sa valeur pratique

    • Un projet de recherche n’a pas forcément besoin d’être pratique. Le simple fait d’explorer cet espace et de partager ce qu’on y découvre a déjà de la valeur
  • À l’inverse, j’aimerais voir une police lisible uniquement par l’IA

  • La technique est solide, mais au final la solution définitive sera malheureusement sans doute l’attestation

  • Techniquement, ce n’est pas une police qui devrait être fixe, mais un effet vidéo. C’est un peu comme fermer un livre, prendre une photo, puis dire que l’appareil photo est incapable de lire cette police
    J’ai essayé d’envoyer à GPT 5.6 Sol (High) une image unique ainsi qu’une vidéo d’une seconde : il a mis 9 min 30 à décoder l’image comme “WRITTEN IN GHOST FONT”. La démo n’affiche pourtant que “GHOST FONT”, mais l’image extraite révélait effectivement une forme “Ghost Font”
    Pour la vidéo, au bout de 3 minutes il a compris qu’il s’agissait d’un effet défini par le mouvement et a demandé à lancer QuickTime, en précisant qu’“il n’existe pas de couche OCR statique lisible et que l’extraction de la forme des lettres est en cours à partir du champ de flux optique”. Au bout de 4 minutes, il avait obtenu une image de mouvement en forme de lettres, puis après 9 minutes d’analyse supplémentaires, il a renvoyé “GHOST FONT” au total après 13 min 36
    Donc ce n’est pas une police, ce n’est pas lisible par tout le monde, et ce n’est pas non plus illisible pour l’IA. On peut voir les images intermédiaires de traitement ici : https://imgur.com/a/SHlGu4O

    • “WRITTEN IN GHOST FONT” est une phrase leurre statique sans rapport avec le contenu saisi. On peut le vérifier avec une longue exposition de l’écran, par exemple sur smartphone