4 pontos por GN⁺ 9 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Ghost Font é um experimento de comunicação visual que cria letras com o movimento de pontos iguais aos do fundo, permitindo que pessoas reconheçam a mensagem no vídeo, mas dificultando a decodificação por IAs que analisam frames individuais
  • Em vez de uma fonte TTF tradicional, combina movimento, vídeo, ruído e mensagens-isca; se o vídeo for pausado ou a tela for capturada, os pontos se misturam ao fundo e a mensagem não aparece
  • Claude Fable e GPT Sol 5.6 Ultra tiveram dificuldade até receberem, no prompt, a técnica exata de decodificação; o ChatGPT 5.5 Pro, após 19 minutos de análise, gerou uma mensagem inexistente
  • Agentes dedicados que executam código localmente conseguem analisar o movimento dos pontos, por isso cada vídeo adiciona uma mensagem-isca, mas informações realmente confidenciais devem usar criptografia ou senha
  • Há potencial de uso em CAPTCHA e benchmarks de reconhecimento visual por IA, mas também é difícil de ler para humanos e pode ser decodificado quando surgirem modelos nativos de vídeo. O código de geração de vídeo deve ser publicado como open source

Letras criadas por movimento

  • Ghost Font registra a mensagem não como formas estáticas de letras, mas como o movimento de pontos
    • Combina movimento, vídeo, ruído e iscas para compartilhar uma mensagem legível por humanos
    • Não é um arquivo de fonte TTF comum; é um experimento que investiga se é possível transmitir texto visualmente em um formato que a IA não compreenda facilmente
  • Embora não seja tão nítido quanto texto comum, pessoas conseguem identificar imediatamente as letras em movimento, enquanto os principais modelos de IA não as decodificam com facilidade
  • O playground oferecido é um protótipo para testar o conceito
    • Ao digitar algumas palavras, as letras aparecem pelo movimento dos pontos
    • É possível pré-visualizar a mensagem digitada em tempo real ou baixar o vídeo para compartilhar e testar diretamente
    • Todo o processamento ocorre localmente, e os dados não são enviados nem compartilhados com servidores

Uma estrutura que não pode ser lida em tela parada

  • Todas as letras são formadas por pontos que parecem idênticos ao fundo, e a mensagem aparece apenas no movimento ao longo do tempo desses pontos
  • Ao pausar o vídeo, os pontos estáticos se misturam entre si, tornando difícil descobrir, a partir de um único frame, qual mensagem está contida ali
  • Capturar a tela da página ou extrair imagens individuais do vídeo também não revela informações de mensagem legíveis

Do ZXX ao Ghost Font

  • Em 2013, o designer Sang Mun lançou a fonte ZXX, criada para ser legível por humanos, mas difícil de ler por softwares de reconhecimento óptico de caracteres (OCR)
    • Ela era composta por quatro fontes, que disfarçavam letras como ruído, as riscavam com linhas ou as escondiam sob marcações falsas
    • Na época, foi avaliada como uma fonte capaz de evitar vigilância, mas agentes modernos de IA conseguem ler facilmente letras renderizadas em ZXX
  • Ao inserir uma imagem em ZXX no modo Instant do ChatGPT 5.5, ele reconheceu palavras e até alguns pequenos detalhes com apenas um prompt
  • Em contraste, uma tela única do Ghost Font mostra apenas pontos estáticos ilegíveis, dificultando obter a mensagem com o mesmo tipo de análise de imagem
    • O ChatGPT 5.5 Pro, após 19 minutos de análise, gerou uma mensagem que na verdade não existia

Análise baseada em código e mensagens-isca

  • O simples fato de usar vídeo não é uma defesa completa
    • Ambientes de modelos online podem não conseguir encontrar a mensagem em frames individuais
    • Um agente dedicado com ambiente de execução local de código pode analisar o movimento dos pontos e decodificar a mensagem real
  • O Ghost Font adiciona mensagens-isca a todos os vídeos gerados para dificultar a análise
    • Se um agente que procura mensagens ocultas encontrar a isca primeiro, pode julgá-la como a mensagem real
    • Por causa dessa camada, até modelos de raciocínio fortes como Fable e GPT Sol 5.6 Ultra tiveram dificuldade para decodificar
  • Claude Fable e GPT Sol 5.6 Ultra podiam usar código, mas tiveram dificuldade para decodificar a mensagem em movimento até receberem, via prompt, exatamente qual técnica deveriam procurar

Limites como mecanismo de segurança

  • Se for realmente necessário ocultar uma mensagem, deve-se usar criptografia ou uma chave específica, não o Ghost Font
    • Uma mensagem que só pode ser aberta com uma senha conhecida por humanos também não pode ser lida por IA sem a senha
  • O objetivo do Ghost Font não é oferecer segurança completa, mas testar se é possível colocar, em um arquivo compartilhável, uma mensagem visual que humanos consigam ver e que IAs não leiam facilmente
  • Também é uma tentativa de explorar os limites da percepção da IA e, ao mesmo tempo, preservar elementos próprios dos humanos
    • Enquanto a IA também é usada para geração de fontes, a expectativa é que humanos continuem mantendo uma voz criativa singular

Possibilidades para CAPTCHA e benchmarks de IA

  • Letras em movimento têm potencial de aplicação em CAPTCHA
    • Em um cenário em que a IA resolve muitos CAPTCHAs com facilidade, o movimento em vídeo pode se tornar uma tarefa relativamente fácil para humanos e mais difícil de decodificar para bots automatizados
  • Outra possibilidade é usá-las como benchmark para medir o avanço da percepção visual da IA
    • Os modelos multimodais atuais são principalmente baseados em imagens e, mesmo quando recebem vídeos, geralmente os dividem em frames e analisam cada imagem
    • Com o surgimento futuro de modelos nativos de vídeo, espera-se que eles processem o movimento diretamente e consigam ler o texto do Ghost Font

A lacuna cada vez menor entre humanos e IA

  • O Ghost Font é difícil de ler para IA, mas também é consideravelmente difícil de ler para humanos
  • À medida que a capacidade de percepção visual da IA melhora rapidamente, a lacuna de reconhecimento entre humanos e IA continua diminuindo
  • Como próximo passo, o plano é publicar o código de geração de vídeo como um projeto open source
    • Ele será expandido para oferecer suporte a tamanhos de tela maiores e também processar strings mais longas

1 comentários

 
GN⁺ 9 시간 전
Opiniões do Hacker News
  • Esse tipo de CAPTCHA já existe e pode ser facilmente contornado. Se você imitar a média ao longo do tempo e calcular a média de umas 4 frames consecutivas, os caracteres se destacam, e até um modelo de linguagem de larga escala básico consegue ler
    É uma abordagem que também se aplica a várias outras técnicas de defesa contra IA, então há grande chance de que quase não atrase scrapers

  • Parece que daria para aplicar técnicas comuns de compressão de vídeo ao Ghost Font, depois reconstruir o contorno das letras a partir do sinal comprimido e analisar com reconhecimento óptico de caracteres (OCR). Pode até ser uma nova técnica de CAPTCHA, mas quando começar a disputa entre ataque e defesa, não deve ser fundamentalmente mais difícil do que os métodos existentes

    • No fim, deve existir algum comando do ffmpeg para lidar com isso em algum lugar
    • Só aplicando filtros a duas capturas de tela já deu para obter o seguinte resultado
      https://fingswotidun.com/images/GhostFont_2_samples.jpg
      https://fingswotidun.com/images/GhostFont_b_2_samples.jpg
      Uma IA, em vez de apertar o botão de screenshot de forma desajeitada, pode usar frames consecutivos e reunir amostras suficientes mesmo em um vídeo mais curto do que o tempo que uma pessoa leva para ler, reconstruindo o texto com nitidez
    • Pode substituir CAPTCHAs existentes, mas não oferece o efeito colateral de treinar imagens não verificadas com dados enviados pelo usuário ou reforçar rótulos de pedaços de imagens já existentes
  • No começo, achei que “Written In Ghost Text” era a frase que precisava ser lida, e só muito depois percebi que era um texto-isca. A frase real era tão difícil de ler quanto uma imagem 3D do Magic Eye, e no celular chegou a me dar dor de cabeça
    A ideia de pesquisa é interessante, mas fico curioso sobre quando os modelos de IA vão descobrir como decifrar isso; parece que talvez bastasse um pequeno ajuste no prompt

    • Para mim foi exatamente o contrário. O texto real era muito fácil de ler, mas “Written in Ghost Text” era tão apagado que eu teria deixado passar completamente se não fosse este comentário
    • Como eu não consigo ver imagens do Magic Eye, também não consigo ver o texto auxiliar. Como a IA pode ler isso com várias amostras, no longo prazo há uma grande chance de que a IA leia melhor do que as pessoas
    • Sério? Essa é a única frase que eu consigo ver
    • Eu não consigo ler o texto-isca de jeito nenhum
  • Dei o vídeo gravado ao GPT-5.6 e ele leu o texto sem problema. Ele estimou o movimento no vídeo com fluxo óptico e um mapa de deslocamento vertical, depois compôs isso em um mapa de movimento de alto contraste, e eu só perguntei o que estava escrito, sem instruir nenhum método específico

    • Também coloquei no Fable com o prompt “What does the message say?” e ele descobriu sem dificuldade. O processo de raciocínio também é interessante: https://imgur.com/a/GToXs6W
    • Ele não detectou o texto-isca; leu o texto que eu mesmo tinha inserido. Passou por metadados do vídeo e análise de frames, detecção do período do estereograma, desfoque e redução de escala, cálculo do deslocamento entre frames e correlação cruzada, verificação com OpenCV, otimização do fluxo óptico, estimativa do deslocamento vertical e melhoria da extração do texto, nessa ordem
    • Fico curioso se existe um link para essa conversa
  • É esperto, mas não é impossível de quebrar com algoritmo. Basta deslocar o índice de um dos dois frames consecutivos até encontrar a posição em que a diferença é mínima, depois subtrair os frames alinhados e aplicar OCR
    Funciona especialmente bem quando o movimento é linear ou em uma só direção, e com 20 linhas de código que verificam apenas deslocamento vertical, o resultado de subtrair o frame 7 do frame 1 foi o seguinte: https://imgur.com/a/only-human-can-read-this-vfDe6ZA

    • Esse método é vulnerável a falsos positivos e, no geral, também tem custo computacional alto. O Ghost Font em si parece uma técnica bem sólida
    • Fico curioso se você poderia compartilhar o código
  • Colei uma captura de tela do texto padrão “GHOST FONT” no ChatGPT 5.6 Sol e pedi para ele ler, e depois de processar por um tempo ele respondeu “WHAT HAPPENS IN VEGAS / STAYS IN VEGAS”

    • O texto não é uma imagem estática, mas um vídeo, e cada frame é composto de pontos aleatórios, então uma única frame não contém a frase pretendida
      Isso explora o fato de que os modelos topo de linha da geração atual processam vídeo frame a frame, e em cada frame também há um texto-isca oculto que faz o modelo achar que encontrou a resposta e parar. Se analisar a correlação entre frames, é possível descobrir a técnica, mas em uma frame isolada só há ruído e isca
    • O que faz o texto ser lido é o movimento, então é difícil esperar a resposta desejada de uma captura de tela com apenas ruído. Mas, olhando de novo, na imagem estática também está escrito “WRITTEN IN GHOST FONT”
  • Se até para pessoas é difícil de ler, então, se isso se tornar importante, a IA também poderá ser treinada para ler. Nesse caso, fico em dúvida sobre qual seria a utilidade prática

    • Um projeto de pesquisa não precisa necessariamente ser prático. Só o fato de explorar essa área e compartilhar o que foi descoberto já tem valor
  • Pelo contrário, eu gostaria de ver também uma fonte que só IA consegue ler

  • A técnica é sólida, mas no fim acho que a solução final infelizmente vai ser atestado (attestation)

  • Tecnicamente, isso não é uma fonte que precisa estar parada, mas um efeito de vídeo. É parecido com fechar o livro, tirar uma foto e dizer que a câmera não consegue ler aquela fonte
    Coloquei uma frame única e um vídeo de 1 segundo no GPT 5.6 Sol (High), e a frame foi decifrada em 9 minutos e 30 segundos como “WRITTEN IN GHOST FONT”. Na demo, só aparece “GHOST FONT”, mas na imagem extraída a forma “Ghost Font” realmente apareceu
    No vídeo, depois de 3 minutos ele percebeu que era um efeito definido por movimento e pediu para executar o QuickTime, afirmando que “não existe uma camada estática de OCR legível e estou extraindo a forma das letras do campo de fluxo óptico”. Em 4 minutos ele obteve uma imagem de movimento com formato de letras e, após mais 9 minutos de análise, retornou “GHOST FONT” após um total de 13 minutos e 36 segundos
    Portanto, isso não é uma fonte, não é algo que todas as pessoas conseguem ler e também não é algo que a IA não consiga ler. As imagens intermediárias do processamento podem ser vistas em https://imgur.com/a/SHlGu4O

    • “WRITTEN IN GHOST FONT” é um texto-isca estático sem relação com o conteúdo digitado. Dá para confirmar isso com uma longa exposição da tela usando um smartphone, por exemplo)