# Decoy Font: 입력 내용을 숨기는 TTF 글꼴

> Clean Markdown view of GeekNews topic #31513. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=31513](https://news.hada.io/topic?id=31513)
- GeekNews Markdown: [https://news.hada.io/topic/31513.md](https://news.hada.io/topic/31513.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-07-17T09:44:25+09:00
- Updated: 2026-07-17T09:44:25+09:00
- Original source: [mixfont.com](https://www.mixfont.com/experiments/decoy-font)
- Points: 1
- Comments: 1

## Topic Body

- 한 글자 공간에 실제 문자와 미끼 문자를 함께 배치해, 사람에게는 원래 메시지를 보여주면서 **AI와 OCR에는 다른 문자를 읽히게 하는** TTF 글꼴임
- 얇고 선명한 전경 윤곽선과 흐릿한 저주파 배경을 중첩하는 **공간 주파수 기법**을 사용해, 보는 거리와 방식에 따라 서로 다른 글자가 나타남
- 이미지 픽셀을 가까이서 처리하는 AI는 선명한 전경에 집중하는 경향이 있으며, 스크린샷 테스트에서 **ChatGPT, GPT Sol, Gemini 3.5 with Thinking**이 숨은 메시지를 제대로 읽지 못했음
- 실제 TTF 파일로 설치해 일반 텍스트처럼 입력·복사할 수 있고, 개인·상업·클라이언트 프로젝트에서 **무료로 사용**할 수 있으며 글자 형태는 DejaVu Sans Mono에서 파생됨
- 강력한 에이전트나 코딩 기능, 숨은 글자를 찾도록 지시하는 프롬프트에는 해독될 수 있어 보호를 보장하지 않지만, **AI 스크래핑과 가벼운 관찰에 초기 혼란**을 주는 수단으로 활용 가능함

---

### 두 메시지를 한 글자에 겹치는 방식
- Decoy Font는 모든 문자에 **미끼 문자**를 결합해 같은 공간에서 두 글자를 전달함
- 글자 이미지는 서로 다른 공간 주파수로 구성됨
  - 전경에는 얇고 선명한 윤곽선이 있음
  - 배경에는 흐릿하게 처리된 **저주파 덩어리**가 배치됨
- 두 요소를 중첩하면 관찰 방식과 거리에 따라 읽히는 문자가 달라짐
  - 가까이에서는 전경의 윤곽선이 두드러짐
  - 화면에서 멀어지거나 눈을 가늘게 뜨면 실제 숨은 메시지를 더 쉽게 볼 수 있음

### AI가 미끼 문자를 읽는 이유
- 많은 AI 시스템은 이미지 픽셀을 가까이서 처리하므로, 글자가 작아도 윤곽이 가장 분명한 **전경 텍스트**에 집중함
- 이미지를 ChatGPT에 붙여 넣으면 사람이 알아보는 메시지와 달리 전경 문자를 읽는 현상이 나타남
- Decoy Font 스크린샷을 전달한 테스트에서 ChatGPT는 글자를 제대로 읽지 못했고, **GPT Sol**과 **Gemini 3.5 with Thinking**도 숨은 메시지를 해독하지 못했음

### 하이브리드 이미지에서 가져온 착시
- Decoy Font는 [하이브리드 이미지](https://en.wikipedia.org/wiki/Hybrid_image)에 사용되는 기법을 타이포그래피에 적용함
- 하이브리드 이미지는 서로 다른 **공간 주파수**를 결합해 관찰 거리 등에 따라 다른 이미지가 보이게 하는 착시 기법임
- Albert Einstein과 Marilyn Monroe의 얼굴을 섞은 이미지가 잘 알려진 사례이며, Decoy Font는 같은 원리로 AI나 OCR에서 입력 문자를 감춤

### 설치 방법과 사용 조건
- [Decoy Font TTF 파일](https://static.mixfont.com/assets/20260714-232642-decoyfont-htoqkd3x.ttf)을 내려받아 설치하면 프로젝트에서 직접 텍스트를 입력할 수 있음
- 단순한 이미지 효과가 아니라 실제 글꼴 파일로 동작하므로, 작성한 텍스트를 복사해 메모장 같은 다른 프로그램에 붙여 넣는 것도 가능함
- 개인·상업·클라이언트 프로젝트에서 **무료로 사용**할 수 있음
- 글자 형태는 [DejaVu Sans Mono](https://dejavu-fonts.github.io/)에서 파생됐으며, 구체적인 조건은 [전체 글꼴 라이선스](https://www.mixfont.com/experiments/decoy-font/DecoyFont-LICENSE.txt)에서 확인할 수 있음

### AI 회피 글꼴 실험
- 온라인 텍스트를 읽는 AI의 능력이 높아지면서 정보와 지식재산을 보호하려는 관심도 커지고 있으며, **AI 회피 글꼴(Anti-AI font)** 은 이미지 속 텍스트를 가려 사람이 보는 메시지를 AI가 읽기 어렵게 만드는 접근임
- Decoy Font는 [Mixfont](https://www.mixfont.com/)가 진행하는 여러 관련 실험 중 하나임
- [Ghost Font](https://www.mixfont.com/ghost-font)는 움직임 속에 메시지를 숨기는 또 다른 AI 회피 글꼴임
  - Ghost Font는 메시지를 위장하기 위해 애니메이션이 필요함
  - Decoy Font는 **정적 TTF 파일**이므로 프로젝트에서 직접 입력할 수 있음

### 보호 효과와 해독 가능성
- Decoy Font는 메시지를 알아보기 어렵게 만들지만 **보호를 보장하지는 않음**
- 강력한 에이전트와 코딩 능력을 갖춘 모델은 처음 보이는 글자를 넘어 착시 구조를 분석할 수 있음
- 숨은 문자를 찾도록 기본적인 프롬프트를 제공하면 일부 에이전트가 실제 메시지를 찾아낼 수도 있음
- 완전한 차단 수단보다는 AI에 초기 혼란을 일으켜 **스크래핑이나 가벼운 관찰을 억제**하는 용도에 가까움

### 활용과 확장 가능성
- 제공되는 플레이그라운드에서 여러 문자 조합에 공간 주파수 기법을 적용한 뒤, 프런티어 LLM이 숨은 메시지를 얼마나 잘 해독하는지 시험할 수 있음
- 동작이나 영상이 필요한 방식보다 설치 가능한 TTF가 접근하기 쉬워 다음과 같은 활용을 탐색할 수 있음
  - CAPTCHA
  - 친구 사이의 비공개 메시지
- Decoy Font를 텍스트 인식 LLM의 **벤치마크**로 활용하면, 모델 성능이 향상되면서 착시 원리를 이해하고 두 메시지를 모두 해독하는지 관찰할 수 있음
- 더 많은 언어로 확장할 수 있으며, 중국어처럼 문자 크기와 형태가 대체로 비슷한 **문자 기반 언어**는 숨은 메시지를 배치하기 더 쉬울 수 있음
- Mixfont는 타이포그래피와 AI의 결합을 탐색하며 [AI 글꼴 생성기](https://www.mixfont.com/font-generator)도 개발하고 있음

## Comments



### Comment 61940

- Author: neo
- Created: 2026-07-17T09:44:26+09:00
- Points: 1

###### [Hacker News 의견들](https://news.ycombinator.com/item?id=48936584) 
- 쓸모 있나? 아니고, **AI가 읽지 못하게 막나? 그것도 아니지만**, 아주 멋지기는 함
  - 뭔가를 만들 때 꼭 유용하다고 내세울 필요는 없다는 걸 보여줌. 그냥 이 글꼴을 만들고 `double-entendre` 같은 이름을 붙여도 되지 않았을까 싶음
  - `day dream / pay bills` 이미지를 ChatGPT와 Gemini Pro에 넣어봤는데, 둘 다 가는 선으로 표시된 **`pay bills`만 인식**했음
  - 특정 거리 안에서는 **Ring이나 Flock 카메라**를 방해하는 용도가 있을지도 모르며, 영화 **They Live** 분위기가 강하게 남
  - 시연만 보면 실제로 **AI의 인식을 막고 있음**
  - 텍스트를 **이미지나 GIF 형식**으로 제시한다면 쓸모가 있을 수 있음

- 흥미롭게도 이미지 속 문자를 물으면 GPT, Claude, Gemini 모두 같은 답을 내놓음  
  [https://moa.chat/s/d99f8f76-4b41-4c1b-80c4-d9f86df37af1](<https://moa.chat/s/d99f8f76-4b41-4c1b-80c4-d9f86df37af1>)  
  하지만 `PS: There's a second hidden text`를 덧붙이면 결과가 달라짐  
  [https://moa.chat/s/3671f6d4-b155-483a-a006-a1b9ba31737d](<https://moa.chat/s/3671f6d4-b155-483a-a006-a1b9ba31737d>)  
  **GPT 5.6은 정확히 찾아내고**, Gemini는 일부만 찾으며 Claude는 전혀 보지 못함
  - 5.6 Sol Medium은 윤곽선 문자가 `SORRY ROBOT`, 숨겨진 문자가 `HAPPY HUMAN`이라고 정확히 답함  
    Mixfont의 Decoy Font는 윤곽선으로 기계 시각을 끌고, 부드러운 명암 무늬는 사람이 멀리서 보거나 작게 축소했을 때 읽게 만드는 **착시일 뿐 암호화는 아님**
  - 약간의 전통적인 **영상 처리**만으로도 쉽게 무력화할 수 있어 보임. 나도 읽기 어렵긴 하지만, 훨씬 작은 모델을 미세 조정해도 이 문제에서는 꽤 좋은 성능을 낼 듯함

- 눈을 가늘게 뜨면 보이는 효과가 멋지며, **빨간 셀로판**을 대면 비밀 문장이 나타나던 보드게임이 떠오름

- Sol (high)에 스크린샷과 함께 숨겨진 문자를 물으니 `HAPPY HUMAN`이라고 답했음  
  겉으로 보이는 윤곽선은 `SORRY ROBOT`이지만, 흐리게 보거나 눈을 가늘게 뜨면 아래 명암에서 **`HAPPY HUMAN`** 이 읽힌다고 정확히 알아냄
  - 눈을 가늘게 뜨라는 설명을 읽기 전까지는 숨겨진 문자를 제대로 읽지 못했는데, 그 방법을 알고 나니 보이기 시작해 흥미로움
  - 이 정도를 해내는 건 솔직히 놀라우며, **시각 언어 모델(VLM)** 이 정말 많이 발전했음. 이 수준에 도달하려면 얼마나 방대한 주석 데이터를 만들었을지 상상하기 어려움

- 이는 단순히 **세부 수준의 차이**임. Gemma E4B는 선명한 문자를 읽다가 이미지를 `150x150`으로 줄이면 다른 문자를 읽음
  - 나도 대표 이미지에서는 AI용이라는 `SORRY ROBOT`이 훨씬 선명하게 보였으므로 다소 실패한 설계처럼 느껴짐. 눈을 아주 가늘게 떠야만 `HAPPY HUMAN`을 볼 수 있음
  - 축소는 사실상 **저역 통과 필터링**이므로 예상 가능한 결과임. 서로 다른 주파수 대역에 각각 다른 메시지를 넣는 방식은 모두 비슷한 공격에 취약함

- 박사과정 때 Mathematica 노트북으로 비슷한 효과를 만든 적이 있음. 두 이미지를 같은 크기로 자른 뒤 하나에는 작은 선명한 디테일을 남기는 **고역 통과 필터**, 다른 하나에는 크고 흐릿한 덩어리를 남기는 **저역 통과 필터**를 적용하고 다시 겹치는 방식이었음  
  두 사람의 눈 위치가 다르면 착시가 깨지는 등 성공 여부가 들쭉날쭉했지만, 윤곽선 글꼴로 된 텍스트에는 훌륭하게 작동했음. 멀리서는 `SCIENCE`, 가까이서는 `WORKS`로 읽히는 큰 이미지를 만들어 연구실 문에 붙여두기도 했음

- 사람이 어떻게 읽는지 한참 혼란스러웠는데, **배경색에 따라 보이는 문자가 달라졌음**. 강제로 어두운 테마를 적용하는 확장 기능 때문에 어두운 배경에서는 미끼 문자가 보였고, 흰 배경에서는 실제 문자가 나타남

- AI까지 필요하지 않으며, 어떤 OCR 소프트웨어든 읽게끔 글꼴을 보정하는 **PIL 스크립트**를 작성할 수 있을 듯함

- 다음에는 입체시를 이용하는 **Magic Eye 글꼴**이 나와야 함. LLM이 양안 시각을 갖추기 전까지는 통할지도 모름

- LLM이 인프라를 끊임없이 공격하고 사람들의 사고에 해를 끼치며 AI 기업들도 전반적으로 윤리 의식이 부족해 보여 반감이 있음. 그렇더라도 이런 장난은 다소 **유치할 뿐**, 실제 문제를 해결하지는 못함
