AI 圖片 metadata:證據到底寫在哪裡

Metadata 不是單一位置,而是好幾層,分清楚是哪一層才知道一項發現值多少。一個圖片或影片檔可能同時帶有簽章過的 C2PA manifest、描述性的 EXIF 與 XMP 欄位、存放生成參數的 PNG 文字區塊,以及 MP4/MOV 容器層的紀錄。它們記錄的內容不同、被竄改的難度不同,在傳播過程中消失的速度也不同。以下依照解析器實際讀取的順序逐層說明。

直接答案:先看簽章來源,再看描述性欄位

先讀 C2PA manifest,因為那是唯一能用密碼學驗證完整性的一層。接著看 EXIF 與 XMP,平台名稱和 AI 標籤常出現在這裡,但任何人都能改寫。PNG 文字區塊是 Stable Diffusion 生態存放提示詞與工作流的地方,影片則由容器欄位擔任同樣角色。簽章之下的每一層都只是線索,不是證明。

各層對應的實際樣本

Adobe Firefly JPEG簽章層:有效的 C2PA manifest 宣告 digitalSourceType = trainedAlgorithmicMedia,因憑證不在信任清單而顯示為 valid 而非 trusted。
ComfyUI / Stable Diffusion XL PNGPNG 文字層:prompt 與 workflow 區塊保留了節點圖與生成參數,全部未經簽章。
Google Veo MP4容器層:憑證與工具欄位存放在 ISO base media 的 box 結構中,而非圖片的 marker segment。

可檢查的來源線索

EXIF相機時代的標準。Software、Artist、UserComment 有時帶有工具名稱或 AIGC 的 JSON 標籤;相機欄位整批缺失本身也算是弱線索。
XMPAdobe 主導的 XML metadata。CreatorTool、Credit、DigitalSourceType 是原始檔還在時最可能標示生成工具的欄位。
C2PA簽章層,序列化為 JUMBF 後依格式嵌入:JPEG 的 APP11 段、PNG 的專屬 chunk、MP4 的 box。
PNG 文字區塊tEXt、iTXt、zTXt 接受任意的鍵值字串,所以提示詞、seed、sampler 與完整 workflow JSON 都寫在這裡,而不是 EXIF。
MP4 / MOV 容器ftyp brand、box tree、udta/meta/ilst、encoder、tool、software 欄位,以及 AIGC 字串與碼流中的 SEI marker。

為什麼生成參數不寫在 EXIF 裡?

EXIF 是為相機設計的:光圈、快門、ISO、鏡頭,欄位都是固定的。一段多行提示詞或一份序列化的節點圖,在那個結構裡根本沒有位置可放,所以 Stable Diffusion 生態改用 PNG 文字區塊,因為它接受任意鍵值字串。這是這個領域最常見的誤解——搜尋「ComfyUI EXIF」或「PNG info」的人,要找的幾乎都是文字區塊而不是相機標籤。實務上的影響很直接:只解析 EXIF 的工具,在一個其實塞滿可讀證據的檔案上會顯示為空。

每一層消失的速度不一樣

各層的脆弱程度不同,知道順序才能正確解讀「查不到」這個結果:

  • 聊天軟體:PNG 文字區塊最先消失,XMP 大部分欄位與 EXIF 的 GPS 資訊也跟著不見。
  • 社群平台轉碼:EXIF、C2PA manifest、XMP CreatorTool 與所有生成參數通常一次清空。
  • 截圖與錄影:原始檔完全不留,只剩下截圖工具自己寫入的 metadata。
  • 重新匯出或另存新檔:溯源欄位被丟棄,新軟體還可能覆蓋上無關的 EXIF。

不用把檔案交出去也能讀 metadata

Metadata 檢查本質上是對你手上既有的位元組做唯讀操作,技術上沒有任何理由需要上傳。AICheck365 以編譯成 WebAssembly 的 Rust 在本機解析 EXIF、XMP、C2PA、PNG chunk 與 MP4 box,工作文件和私人照片都留在自己的裝置上。這也代表結果不需要往返伺服器就會出現,而大型影片的處理上限取決於你的硬體,而不是上傳限制。

逐層讀取一個檔案

  1. 從原始檔開始 — 使用工具匯出或平台下載當下的檔案,因為之後的每一份副本都會少掉幾層。
  2. 先檢查簽章層 — 確認有沒有 C2PA manifest,讀出它的簽章狀態、信任狀態與宣告的 digitalSourceType。
  3. 再讀 EXIF 與 XMP — 查看 Software、CreatorTool、Credit、DigitalSourceType 與 UserComment 是否留有工具名稱或 AI 標籤,並記得這些沒有簽章。
  4. 打開 PNG 文字區塊 — PNG 檔要讀 tEXt/iTXt/zTXt,看提示詞、seed、sampler、CFG、模型與 workflow JSON。
  5. 影片則走容器 — 讀 ftyp、box tree 與 udta/meta/ilst 的 encoder 與 tool 欄位,再看碼流裡有沒有 SEI marker。

檢測邊界

想一次讀完所有層就用完整檢測;已經知道要看哪一層時,直接開對應的工具。

常見問題

AI 工具的 metadata 到底寫在哪裡?

看工具和格式。簽章過的來源紀錄放在 C2PA manifest,描述性的工具名稱在 EXIF 與 XMP,生成參數和工作流在 PNG 文字區塊,影片層級的資訊則在 MP4 或 MOV 容器裡。

為什麼 EXIF 裡找不到 AI 資訊?

因為大多數生成參數本來就不寫在那裡。EXIF 存的是相機導向的標籤,提示詞、seed 與 workflow 寫進 PNG 文字區塊,需要另外解析才讀得到。

AI metadata 可以偽造嗎?

除了有效的 C2PA 簽章之外,每一層都能被編輯或複製到別的檔案。這正是簽章狀態與信任狀態要和描述性欄位分開呈現的原因。

線上讀 metadata 安全嗎?

在這裡檔案不會離開你的裝置:解析在瀏覽器內執行,不需要上傳,也不會留存任何內容。

資料來源與驗證紀錄