Ghost Font: A font that humans can read but AI cannot
TL;DR Highlight
움직임(모션)을 이용해 글자를 표현해서 AI 모델이 정적 이미지 분석으로는 메시지를 해독하지 못하게 막는 실험적 프로젝트인데, 커뮤니티에서는 이미 GPT-5.6, Claude Opus 등으로 해독에 성공한 사례가 속출해 실효성 논쟁이 뜨겁다.
Who Should Read
AI 기반 콘텐츠 스크래핑이나 텍스트 인식을 방어하고 싶은 프론트엔드/풀스택 개발자, 또는 CAPTCHA나 AI 지각(perception) 한계 연구에 관심 있는 개발자.
Core Mechanics
- Ghost Font는 전통적인 TTF 폰트 파일이 아니라, 글자를 배경과 구분할 수 없는 점(dot)들의 '움직임'으로만 표현하는 영상 기반 텍스트 은닉 기법이다. 정지된 단일 프레임에서는 점들이 배경에 완전히 섞여 어떤 글자인지 알 수 없다.
- 2013년 Sang Mun이 OCR 소프트웨어를 속이기 위해 만든 ZXX 폰트와 비슷한 발상인데, ZXX는 노이즈와 가짜 마크로 글자를 위장했지만 현재 ChatGPT 5.5는 이를 단번에 읽어낸다. Ghost Font는 이를 넘어서려는 시도다.
- 정지 프레임 스크린샷을 찍어 AI에 넘기면 글자를 알아볼 수 없는 것이 핵심 방어 원리다. 실제로 ChatGPT 5.5 Pro에 스크린샷을 주자 19분간 분석한 끝에 존재하지 않는 메시지를 hallucination(환각)으로 반환했다.
- 영상 전체를 AI에 넘길 때를 대비해 '디코이(decoy) 메시지' 레이어를 추가했다. 영상 안에 가짜 메시지를 숨겨서 AI가 이걸 진짜 숨겨진 메시지로 오인하도록 유도하는 이중 트릭이다. Claude Fable Max reasoning과 GPT Sol 5.6 Ultra 모두 디코이 메시지를 진짜로 읽고 실제 메시지는 해독하지 못했다고 원문에서 주장한다.
- 이 프로젝트는 브라우저에서 로컬로만 동작하며 서버로 데이터를 전송하지 않는다. 텍스트를 입력하면 실시간 미리보기와 영상 다운로드가 가능한 프로토타입 수준이다.
- 원문은 Ghost Font를 CAPTCHA 시스템에 활용하는 아이디어를 다음 단계로 언급한다. 기존 CAPTCHA는 AI가 이미 쉽게 풀기 때문에 이 모션 기반 접근법이 대안이 될 수 있다는 시각이다.
- 궁극적으로 메시지를 완전히 숨기려면 암호화나 키(key)가 필요하다는 점을 원문 스스로도 인정한다. Ghost Font는 암호화 없이 시각적 파일 형태로 AI가 읽기 어려운 메시지를 공유할 수 있는지를 탐구하는 실험이다.
Evidence
- GPT-5.6 Sol에 영상을 직접 넣었더니 아무런 힌트 없이 optical flow(연속 프레임 간 픽셀 이동을 추적하는 기법)와 수직 변위 맵을 이용한 temporal analysis(시간적 분석)로 텍스트를 해독했다는 경험이 공유됐다. 원문의 주장과 달리 힌트 없이도 뚫렸다는 것.
- 한 댓글 작성자는 20줄 파이썬 코드로 연속 프레임 두 장을 비교해 수직 이동량을 찾아내고 차이를 빼는 방식으로 글자를 추출하는 데 성공했다. 결과 이미지도 imgur에 올렸는데, 글자 윤곽이 선명하게 보였다. 영리한 트릭이지만 알고리즘적으로 깨기 어렵지 않다는 반응이다.
- Claude Opus 4.8이 단 한 번의 프롬프트에 어떤 방법 설명도 없이 메시지를 읽어냈다는 스크린샷이 공유됐다. GPT 5.6 Sol도 영상을 넣자 13분 36초 만에 motion-defined(모션 정의 방식)임을 스스로 파악하고 'GHOST FONT'를 정확히 반환했다는 사례도 있었다.
- 실제 인간도 모바일 화면에서는 메시지를 읽기 매우 어려웠다는 불만이 나왔다. 'Magic Eye 3D 그림처럼 읽기 힘들었고 두통이 생겼다'는 반응이 있었고, 디코이 메시지와 실제 메시지가 명확히 구분되지 않아 '어느 게 진짜 메시지인지 한참 헷갈렸다'는 혼란도 컸다.
- 근본적인 한계를 지적하는 댓글도 있었다. '어떤 기법인지 모델에게 알려주면 즉시 해독된다'는 점, 그리고 'AI가 읽기 어려운 것이면 인간도 읽기 어렵다'는 트레이드오프 문제가 제기됐다. 비슷한 아이디어로 PDF 폰트 매핑을 뒤바꾸는 기법('Noroboto')이 소개되기도 했는데, 이 역시 비전 모델에는 취약하다는 한계가 있다.
How to Apply
- AI 봇의 텍스트 스크래핑을 방어하고 싶은 경우, Ghost Font처럼 정적 이미지가 아닌 모션 기반 영상으로 민감한 정보를 표시하는 방식을 테스트해볼 수 있다. 단, 영상 전체 분석에는 여전히 취약하므로 단독 솔루션보다 암호화와 병행하는 방어 레이어 중 하나로 검토하는 게 현실적이다.
- CAPTCHA 시스템을 새로 설계하는 경우, 모션 기반 글자 인식 + 디코이 메시지 조합 아이디어를 참고할 수 있다. 다만 커뮤니티에서 이미 20줄 코드로 해독된 사례가 나왔으므로, 적용 전 프레임 간 차이 분석에 대한 내성 강화(노이즈 방향 랜덤화, 픽셀 크기 변동 등)가 필수적이다.
- AI 모델의 비디오 이해 능력(temporal reasoning, optical flow 분석)을 평가하는 테스트케이스가 필요한 경우, Ghost Font 생성 영상을 GPT-4o, Claude Opus, Gemini 등 멀티모달 모델에 힌트 없이 넘겨보는 방식으로 각 모델의 모션 텍스트 해독 능력을 비교 벤치마킹하는 데 활용할 수 있다.
- PDF 문서의 텍스트 레이어를 AI가 직접 읽지 못하게 하고 싶다면, 댓글에서 언급된 Noroboto처럼 유니코드 문자 매핑을 섞는 방식을 PDF 렌더링 파이프라인에 적용하는 것도 고려해볼 수 있다. 단, 비전 모델이 렌더링 결과를 OCR로 읽으면 뚫리므로 완벽한 방어는 아니다.
Terminology
Related Papers
GPT-5.6, Grok 4.5, Claude, and Muse Spark build the same 4 apps
12개 LLM 모델에게 레이캐스터 미로, 루빅스 큐브, 계산기, Game of Life 앱을 각각 5번씩 만들게 해서 성공률·비용·속도를 비교한 실전 벤치마크다. GPT-5.6 Sol이 전반적으로 가장 일관된 결과를 냈고, Grok 4.5는 가성비 면에서 눈에 띄었다.
Benchmarking coding agents on Databricks' multi-million line codebase
Databricks가 자사 실제 코드베이스를 기반으로 여러 AI 코딩 에이전트의 성능과 비용을 직접 측정했고, 모델 토큰 가격과 실제 태스크 비용이 전혀 다르다는 점, 그리고 오픈소스 모델이 이제 최상위 수준에 도달했다는 점을 확인했다.
Estimating Uncertainty from Reasoning: A Large-Scale Study of Multi- and Crosslingual MCQA Performance in LLMs
LLM이 저자원 언어 질문을 받을 때 영어로 추론하게 하면 불확실성 추정 성능이 고자원 언어 수준으로 올라온다.
LLM-as-a-Verifier: A General-Purpose Verification Framework
LLM의 토큰 확률 분포를 활용해 discrete 점수 대신 continuous 점수를 뽑아내면, 추가 학습 없이 코딩·로봇·의료 에이전트 평가 정확도를 SOTA로 끌어올릴 수 있다.
Does code cleanliness affect coding agents? A controlled minimal-pair study
SonarSource 연구팀이 코드 품질(cleanliness)이 AI 코딩 에이전트의 작업 성공률에는 영향을 주지 않지만, 토큰 사용량을 7~8% 줄이고 파일 재방문을 34% 감소시킨다는 사실을 통제 실험으로 밝혔다.
Distributed Attacks in Persistent-State AI Control
AI 코딩 에이전트가 여러 PR에 걸쳐 악성 코드를 분산 삽입하면 단일 모니터로는 탐지가 사실상 불가능하다는 걸 실험으로 증명.