모델이 분석하는 대상
카메라는 렌즈를 통해 들어오는 빛을 센서에 기록합니다. 이 과정에서 특유의 노이즈, 가장자리로 갈수록 선명도가 떨어지는 특정 패턴, 센서 그리드와 그 뒤에 이어지는 디모자이싱에서 기인한 인접 픽셀 간의 특정 관계가 남게 됩니다.
디퓨전 모델은 무작위 필드에서 노이즈를 반복적으로 제거하여 일관된 형태가 나타날 때까지 이미지를 구축합니다. 이 과정 역시 고유한 시그니처를 남기며, 그 성격이 다릅니다. 결과적으로 시각적으로는 완벽해 보이면서도 통계적으로는 구별될 수 있습니다.
이것이 메타데이터가 손실되더라도 스크린샷에서 탐지 기능이 작동하는 이유입니다. 시그니처가 헤더가 아닌 픽셀 값 자체에 존재하기 때문에, 픽셀을 복사하는 것은 증거를 복사하는 것과 같습니다.
4단계 과정
- 1 파일 읽기 브라우저 내에서 디코딩되며 절대 업로드되지 않음
- 2 프레임 점수 산정 384픽셀 정사각형 크기의 비전 트랜스포머
- 3 타일 점수 산정 겹치는 영역에 동일한 모델 적용
- 4 크리덴셜 읽기 존재하는 경우 C2PA 및 생성기 마커
1단계: 디코딩
파일이 페이지를 통해 디스크에서 읽혀지고 원시 픽셀로 디코딩됩니다. HEIC, AVIF, TIFF 등의 형식은 브라우저 자체의 디코더로 처리됩니다. 서버에 적용되는 정책 때문이 아니라 작업이 수행되는 위치의 특성상 어떠한 데이터도 전송되지 않습니다.
2단계: 전체 프레임 점수 산정
이미지의 크기가 384픽셀 정사각형으로 조절된 후 비전 트랜스포머를 통과합니다. 모델은 해당 프레임이 합성 이미지일 원시 확률을 반환합니다. 이 숫자는 모델에 따라 표기가 표류하지 않고 게시된 밴드와 일관되게 매핑되도록 보정됩니다.
크기 조절 과정에서 세부 정보가 손실되며, 이는 정확도가 떨어지는 첫 번째 원인입니다. 또한 이는 피할 수 없는 과정이기도 합니다. 모델의 입력 크기가 고정되어 있으므로 4000픽셀 크기의 사진은 이에 맞춰 축소되어야 합니다.
3단계: 타일링 패스
프레임이 겹치는 영역으로 분할되며 각 영역은 동일한 모델에 의해 개별적으로 점수가 산정됩니다. 이것이 완전한 생성 이미지와 무언가가 추가된 실제 사진을 구분하는 기준이며, 단일 숫자로는 대체할 수 없는 단계입니다.
이를 평균 내면 21이 됩니다. 타일 뷰는 평균화 과정에서 소실되는 정보를 유지합니다.
타일은 의미 있는 분석을 위해 충분한 픽셀을 필요로 하며, 이것이 짧은 쪽 기준 대략 576픽셀 미만의 이미지에 전체 프레임 점수만 부여하는 이유입니다. 작은 크롭 영역에는 개별적으로 점수를 매기기에 충분한 세부 정보가 없습니다.
4단계: 파일 자체의 기록
픽셀과 별개로, 파일에 Content Credentials가 있는지, 그리고 일부 도구가 남긴 생성기 마커가 있는지 확인합니다. 이 경로는 통계적이 아니라 암호학적 방식을 따릅니다. 즉, 추정하는 것이 아니라 유효한 서명을 신뢰 목록과 대조하여 확인합니다.
결과가 결합되는 방식
두 경로는 서로 다른 가중치를 가지므로 단순 평균화되지 않습니다. 카메라 촬영임을 선언하는 유효한 크리덴셜은 보통 수준의 픽셀 점수보다 우선합니다. AI 생성을 선언하는 크리덴셜은 그 자체로 결론을 확정합니다.
| 증거 | 유형 | 가중치 |
|---|---|---|
| AI 생성을 선언하는 유효한 크리덴셜 | 암호학적 | 결정적 |
| 카메라 촬영을 선언하는 유효한 크리덴셜 | 암호학적 | 매우 강력함 |
| 파일 내 생성기 마커 | 선언적 | 강력하지만 제거 가능함 |
| 전체 프레임 픽셀 점수 | 통계적 | 보통 |
| 영역 타일 점수 | 통계적 | 보통이며 더 구체적임 |
| 크리덴셜 없음 | 없음 | 어느 쪽으로도 정보 없음 |
마지막 행은 사람들이 가장 오해하는 부분입니다. 크리덴셜이 없다고 해서 그것이 부정적인 신호는 아닙니다. 지금까지 만들어진 압도적인 다수의 이미지에는 크리덴셜이 포함되어 있지 않으며, 거의 모든 플랫폼이 업로드 시 이를 제거합니다.
브라우저에서 실행되는 이유
모델의 크기는 약 40MB이며 사용자의 기기에서 WebAssembly를 통해 실행됩니다. 이는 이해할 가치가 있는 세 가지 결과를 가져오는 신중한 아키텍처적 선택입니다.
- 어떤 이미지도 업로드되지 않으므로, 누군가의 이미지를 보유하는 서버가 존재하지 않으며 문서화해야 할 데이터 처리 관계도 발생하지 않습니다.
- 검사 제공 비용이 발생하지 않으므로, 사용량 측정계 없이도 무료로 도구를 제공할 수 있습니다.
- 첫 번째 검사는 더 느립니다. 모델이 실행되기 전에 한 번 다운로드되기 때문입니다. 이후의 검사는 캐시된 복사본을 재사용합니다.
파이프라인이 의도적으로 수행하지 않는 작업
최신 플랫폼을 거친 이미지에서는 더 이상 작동하지 않기 때문에, 구형 포렌식 도구에 나타나는 몇 가지 기술은 제외되었습니다.
- 오차 수준 분석(Error level analysis). 대중적이고 널리 오해되며, 두 번 이상 다시 저장된 이미지에서는 신뢰할 수 없습니다.
- 복사-이동 탐지(Copy-move detection). 프레임 내부의 복제된 영역을 찾아내어 구식 복제 작업은 잡아내지만 생성 이미지는 잡아내지 못합니다.
- 메타데이터 기반 판정. EXIF는 거의 모든 곳에서 업로드 시 제거되므로, 이에 의존하는 검사는 정확히 사용자가 확인해야 하는 이미지에서 실패합니다.
- 얼굴 전용 분석. 한 가지 협소한 조작 유형에는 유용하지만 그 외의 모든 것에는 대응하지 못합니다.