Microsoft Paint and Photos Invisible Watermarking Analysis
Microsoft Paint and Photos는 이미지 생성 프로세스가 장치에서 로컬로 발생하더라도 출처를 보장하기 위해 AI 생성 이미지의 픽셀에 서버에서 발급된 GUID를 삽입합니다. 이 메커니즘은 원격 중재 서버를 통해 최종 이미지를 특정 프롬프트 및 사용자 계정과 연결함으로써, 추적 목적으로 생성 프로세스의 "로컬" 특성을 효과적으로 우회합니다.
Remote Moderation and GUID Issuance
사용자의 로컬 생성 인식과는 반대로, 프로세스는 완전히 오프라인이 아닙니다. Copilot+ PC에서 로컬 Stable Diffusion 모델이 실행되기 전에, 애플리케이션은 사용자의 프롬프트와 스타일을 Microsoft 중재 서버(/v1/paint-cocreator/moderate-prompt)로 전송합니다.
서버는 다음을 포함하는 JSON 응답을 반환합니다:
- 로컬 모델이 사용할 revised prompt.
- promptGenerationId (GUID).
- watermarkId (GUID).
이 watermarkId는 이후 이미지 픽셀과 메타데이터에 삽입되는 핵심 식별자입니다.
The Invisible Watermarking Mechanism
Microsoft는 GUID를 삽입하기 위해 전용 라이브러리인 Watermarker.dll을 사용합니다. 이 프로세스는 선택된 이미지 블록 전체의 RGB 픽셀에 작고 양자화된 변화를 가하는 콘텐츠 적응형 블록 도메인 워터마크(아마도 SVD 스타일)입니다.
Technical Implementation
- Payload Construction: 16바이트 GUID는 접두사(
0x4c), GUID, 그리고 바이트 합 체크섬으로 구성된 18바이트 메시지로 래핑됩니다. - Embedding Process: 인코더는 이미지 크기를 8픽셀 경계로 반올림하고, 페이로드의 각 비트가 중복성을 위해 최소 세 번 배치되도록 144개의 카운터를 사용합니다.
- Pixel Modification: 시스템은 식별자를 보이지 않게 삽입하기 위해 상당한 수의 픽셀(예: 512x512 이미지에서 262,144개 중 193,376개)을 수정합니다.
- Failure Handling: Microsoft Paint에서
WmkWriteWatermark함수가 실패하면, 전체 이미지 생성 프로세스가 오류로 처리되어 사용자에게 이미지가 반환되지 않습니다.
C2PA Metadata and Soft Binding
픽셀 수준의 워터마킹을 넘어, Microsoft는 저장된 파일에 C2PA (Coalition for Content Provenance and Authenticity) Content Credentials를 첨부합니다. 이는 이중 레이어 출처 시스템을 생성합니다:
- File-Level Manifest: 서명된 C2PA 매니페스트가 파일에 삽입됩니다(예: PNG의 경우
caBX청크). - Pixel-Level Watermark:
watermarkId는Watermarker.dll을 통해 픽셀에 직접 삽입됩니다.
이 "soft binding"은 파일 수준의 메타데이터가 제거되더라도 이미지를 해당 출처 기록과 매칭할 수 있게 합니다. 이 메타데이터를 보존하기 위해, Paint는 AI 생성 이미지 저장을 C2PA 호환 가능한 형식인 PNG, JPEG, GIF, 그리고 .paint로 제한합니다. BMP와 같은 클래식 형식은 매니페스트를 삽입할 수 없기 때문에 AI 출력물에 대해 비활성화됩니다.
Comparison: Cloud vs. Local Paths
Microsoft는 하드웨어 및 사용된 기능에 따라 두 가지 별도의 생성 경로를 채택합니다:
| Path | Process | Watermarking Location |
| :--- | :--- | \n| Cloud (Image Creator) | Prompt $\rightarrow$ Cloud Generation $\rightarrow$ Cloud Watermarking $\rightarrow$ Finished Image returned to Paint | Server-side |
| Local (Cocreator) | Prompt $\rightarrow$ Remote Moderation $\rightarrow$ Local NPU Generation $
ightarrow$ Local Watermarker.dll $\rightarrow$ Online Signing | Client-side |
Community Insights and Privacy Implications
기술적 분석과 커뮤니티 논의는 몇 가지 중요한 개인정보 보호 및 투명성 문제를 제기합니다:
"The GUID is the giveaway that it's not about protecting artists, it's about being able to prove provenance later. nobody embeds a unique id in a local file for the user's benefit."
커뮤니티에서 제기된 주요 포인트는 다음과 같습니다:
- False Sense of Control: Paint 설정의 가시적 워터마크 토글은 Copilot 로고만 제어합니다. 보이지 않는 GUID 워터마크는 비활성화할 수 없습니다.
- Account Linking: GUID는 사용자의 세션 인증 및 AI 크레딧 차감 후 서버에서 발급되는 것이므로, 워터마크는 특정 Microsoft 계정 및 프롬프트와 연결될 수 있습니다.
- Comparison to Printer Tracking: 사용자들이 이를 프린터의 "yellow dots" (프린터 추적 도트)와 비교합니다. 하드웨어에서 사용자가 비활성화할 수 없는 식별 마크를 생성하는 방식입니다.
- Regulatory Drivers: 일부 관찰자들은 이것이 AI 생성 콘텐츠가 기계 판독 가능해야 한다는 EU AI Act (Article 50)의 투명성 요구 사항과 일치할 가능성이 높다고 언급합니다.
Conclusion
Microsoft가 C2PA 메타데이터 사용과 원격 콘텐츠 필터링을 공개하고는 있지만, 고유하고 서버에서 발급된 GUID가 로컬로 생성된 이미지의 픽셀에 삽입된다는 사실을을 사용자에게 명시적으로 알하지 못합니다. 이 메커니즘은 "로컬 생성"이 중재 및 식별을 위해 Microsoft의 클라우드 인프라에 tethered(연결되어) 있음을 보장합니다.
Sources
관련
- Dispatch
- Dispatch
- 프로젝트
- Dispatch
- Dispatch