AI 뉴스

AI 텍스트 워터마킹의 작동 원리 — 보이지 않는 확률 패턴과 Claude·Gemini 적용 사례

노동1호 2026. 8. 16. 01:03

들어가며: 글자 안에 숨기는 "보이지 않는 서명"

AI 워터마킹 개념 시각화

2024년부터 Google은 Gemini 앱과 웹 응답에, 2026년 8월에는 Anthropic이 Claude 신형 모델에 텍스트 워터마킹을 모델 수준에서 적용하기 시작했다. 워터마크는 눈에 보이지 않는다 — 문장 끝에 작은 글자가 박히거나, 메타데이터에 태그가 붙는 식이 아니다. 다음 단어를 고르는 확률적 선택 자체에 비밀 패턴이 심겨 있다.

이번 글에서는 Aaronson 스킴으로 대표되는 통계적 워터마킹이 어떻게 동작하는지, 비밀 키(green list / red list)가 어떤 의미를 가지는지, 그리고 사용자나 개발자가 이를 어떻게 감지하고 활용할 수 있는지 정리한다.

워터마킹의 핵심 아이디어: 후보 단어를 둘로 가른다

토큰 한 번 생성할 때마다 모델은 vocabulary 안에서 확률 분포를 만든다. 여기서 LLM이 고른 토큰이 바로 텍스트의 단위가 된다. 워터마킹에서는 모델 외부의 detector가 같은 비밀 키를 가지고 있어, 매번의 샘플링 단계에서 후보 토큰들을 두 그룹으로 나눈다.

  • Green list: 통계적으로 더 자주 등장하도록 의도적으로 부풀려진 토큰 집합
  • Red list: 의도적으로 억제된 토큰 집합

detector는 비밀 키 없이도 green list 토큰 비율이 무작위보다 유의미하게 높다는 통계적 사실만으로 "이 텍스트는 워터마크된 응답이다"를 판정한다.

Aaronson 스킴: Gumbel 트릭으로 비밀 키를 섞다

Scott Aaronson이 제안한 방식은 모델 출력 직전에 토큰의 logit에 비밀 키 기반의 작은 노이즈를 더한다. 핵심은 단순한 해시 함수다 — 비밀 키 k와 현재 문맥(prefix)을 입력으로 받아, 각 토큰 i에 대해 노이즈 hash(k, prefix, i) mod M을 더한다. 모델은 원래 분포와 노이즈의 합으로 다음 토큰을 고르고, 동시에 detector는 같은 해시로 green list를 복원한다.

def gumbel_max_with_key(logits, key, prefix, tokens):
    """비밀 키 + prefix로 각 토큰에 노이즈를 더해 워터마크 분포 생성"""
    M = 2**20  # 충분히 큰 modulo
    watermarked = []
    for tok in tokens:
        # 비밀 키·prefix·토큰 ID로 결정론적 노이즈 계산
        h = hash_with_key(key, prefix, tok)
        noise = (h % M) / M  # 0~1 사이 스칼라
        # 더 작은 노이즈가 더 자주 뽑히도록 logit 보정
        watermarked.append(logits[tok] + log(noise + 1e-12))
    # watermarked 분포에서 다음 토큰 샘플링
    return sample_softmax(watermarked)

왜 green list 검출만으로 충분한가

green list 검출 통계

워터마크된 텍스트는 인간이 다시 쓰거나 다른 모델로 다시 생성하면 통계 신호가 빠르게 사라진다. 반대로 모델이 워터마크 분포에서 직접 뽑은 텍스트는 길이에 비례해 green list 비율이 무작위보다 일관되게 높다. 이 비대칭성 덕분에 detector는 의미 단위·문장 구조 같은 고차 정보를 전혀 보지 않고도 단어 빈도만으로 판정한다.

Claude·Gemini 워터마킹의 운영적 함의

Anthropic은 2026년 8월 모델 수준 워터마크를 켜면서 학계·산업 디텍터 API를 같이 공개했고, Google은 Gemini 응답을 별도 헤더 X-Goog-Watermark로 표시한다. 두 회사의 방식 모두 동일하게 토큰 샘플링 단계에서 동작하므로 다음 원칙이 자연스럽게 따라온다.

  1. 워터마크는 모델 출력을 바꾸지 않는다 — 같은 의미의 다른 단어를 약간 더 자주 쓰게 할 뿐이다.
  2. 보일러플레이트·정형 응답은 워터마크 신호가 약해진다 — 후보 폭이 좁아지기 때문이다.
  3. 오픈소스 모델은 워터마킹이 적용되지 않는다 — 무결성 검증 대상에서 빠진다.

실전 활용법 — 디텍터를 API로 쓸 때 주의할 점

디텍터를 운영 환경에 붙일 때는 다음 두 가지를 함께 봐야 한다.

  • z-점수 임계값: 너무 낮추면 인간 글에도 false positive가 늘고, 너무 높이면 짧은 워터마크 텍스트를 놓친다. 보통 길이 50 토큰 이상 + z-임계 4.0을 기준으로 잡는다.
  • paraphrase 공격: 사람이 다시 쓴 텍스트는 워터마크 신호가 약해진다. 디텍터는 paraphrase robustness를 별도로 측정해 보고해야 한다.

전망 — 규제와 오픈소스 갈림길

EU AI Act는 2026년 8월부로 텍스트 생성 모델에 대해 워터마킹 의무를 단계적으로 적용하고, 한국·일본도 유사 가이드라인을 검토 중이다. 한편 오픈소스 모델은 워터마크가 적용되지 않아 두 흐름이 갈라진다. 단기적으로는 디텍터 정확도 개선과 paraphrase 공격 방어가 핵심 연구 주제가 될 가능성이 높다.

요약

  • 텍스트 워터마킹은 다음 단어 샘플링 단계에서 후보를 green/red 그룹으로 나눠 비밀 패턴을 심는 방식이다.
  • detector는 같은 비밀 키로 green list 비율이 통계적으로 유의미한지 검사해 워터마크 여부를 판정한다.
  • Claude·Gemini 모두 모델 수준에서 적용 중이며, EU AI Act가 2026년 8월부터 단계적 의무화를 시작했다.
  • 오픈소스 모델은 워터마크가 적용되지 않아 디텍터 가용성과 paraphrase robustness가 향후 핵심 쟁점이 된다.

📰 원본 출처 · https://news.hada.io/topic?id=32518 (#N=32518)

이 글은 GeekNews(긱뉴스)에 게제된 글을 기반으로 작성되었습니다. 원본의 라이선스와 저작권은 원작자에게 있습니다.