AI コンテンツを識別できる API は?16 種を 10 法規制で検証
目次
現在、6 つの法域と米国 4 州では、AI 生成メディアのファイル内に機械可読な識別情報を埋め込むことが義務付けられている。そこで、個別に価格が設定されたモデルバリアントを 1 SKU として、16 の API SKU で画像、動画、音声を生成し、返ってきたデータをバイト単位で調べた。C2PA manifest が入っていたのは 7 種、中国の暗黙ラベルは 4 種で、両方を含むものはゼロだった。動画と音声の SKU には何も入っていなかった。さらに、識別情報付きのファイルを一般的な画像処理に通したところ、試した 2 つの画像ライブラリでは、再エンコード、リサイズ、クロップのいずれでも最初の 1 回で C2PA manifest が消えた。本稿では、どこに不足があり、それを埋めるのにどれだけコストがかかるかを測定する。
TL;DR
- 画像 SKU 11 種のうち 7 種が C2PA を埋め込む。対象は OpenAI と ByteDance で、4 種は中国の暗黙ラベルを埋め込む。対象は Alibaba である。両方を埋め込むものはゼロ。
- 動画 SKU と音声 SKU 4 種は、識別情報をまったく含まないファイルを返した。EU と California の規則は、どちらも音声と動画を対象にしている。
- OpenAI の署名は公式 C2PA trust list で検証できる。ByteDance の署名は有効だが、チェーン先のルートがリストにないため信頼済みとは判定されない。
- どの変換でも C2PA manifest は残らなかった。中国のラベルは ImageMagick の PNG 間処理では残るが、Pillow では残らない。どちらもフォーマットを変えると消える。
ファイル内への埋め込みを実際に義務付ける規則は?
AI 関連法の多さから受ける印象に比べると、該当する規則はかなり少ない。大半の AI コンテンツ法が求めるのは、人間が見て分かるラベルか、合成メディアによって被害が生じた場合の削除対応である。以下の規則はファイル内部のデータまで対象にしており、API 利用者は生成時点で対応する必要がある。ここで示すのは条文をエンジニアリングの観点から読んだ結果であり、法的な分析ではない。法務面を確認するなら、欧州委員会による第 50 条のガイドラインと IAPP の世界 AI 法トラッカーから始めるとよい。
| 法制度 | ファイルに含める必要があるもの | 施行日 |
|---|---|---|
| EU AI Act 第 50 条 2 項 | 「機械可読形式」での識別情報。手法は指定されておらず、行動規範も技術中立 | 2026-08-02 |
| 中国のラベル表示措置 + GB 45438-2025 | 所定の項目で構成される metadata 内の暗黙ラベル。項目は製作者コード、コンテンツ ID、署名。これに加えて可視ラベルも必要。独自 schema を定める唯一の法制度で、すでに執行も始まっている | 2025-09-01 |
| India、IT Rules G.S.R. 120(E)](https://www.meity.gov.in/static/uploads/2026/02/550681ab908f8afb135b0ad42816a1c9.pdf) | 可視ラベルに加えて、「一意な識別子を含む、永続的な metadata またはその他の適切な技術的来歴証明の仕組み」 | 2026-02-20 |
| Vietnam、AI Law 第 11 条 2 項 | 音声、画像、動画に「機械可読形式」の識別情報。手法は未定義 | 2026-03-01 |
| Kazakhstan、AI Law 第 21 条 2 項 | 機械可読な識別情報に加えて、人物または事象を模したコンテンツには可視警告 | 2026-01-18 |
| South Korea、AI Framework Act 第 31 条 | 人間が認識できる形式または機械可読形式。事業者が選択でき、猶予期間は 2027 年まで | 2026-01-22 |
| US:California、続いて Connecticut、Utah、Washington | ファイルに保持される「潜在的開示情報」。provider、system 名と version、time と date、一意な識別子を含む。California では無料の公開検出ツールも必要。月間 user 数が 100 万を超える provider が対象 | 2026-08-02 から 2027 |
それ以外の地域では、人間が見て分かるラベルだけを求めるか、何も求めていない。米国では 30 を超える州が選挙 deepfake に免責表示を義務付けているが、連邦法には一般的な識別情報の義務がない。UK、Japan、Australia、Singapore にもない。注意点は 2 つある。Norway は AI Act が EEA Agreement にまだ組み込まれていないため、第 50 条の対象ではない。また、Italy の 2025 年 AI 法には、広く報じられた内容とは異なり、識別情報の義務がない。
エンジニアリング上、ここから 3 つの事実が分かる。各法制度の仕様には互換性がない。EU はフォーマットを指定せず、中国は独自 schema を定め、India と Vietnam は方式を指定せずに来歴証明を要求している。欧米の多くの vendor が採用する C2PA は、拘束力のある法律ではほとんど名指しされていない。C2PA を明記しているのは Connecticut と Washington だけで、国レベルの法制度には 1 つもない。さらに 5 つの議会は、耐久性も義務に含めている。表現は「改ざん、削除、切り離しが困難」であることを求める Connecticut、「削除または改ざんが困難」とする Washington、「永続的な metadata」とする India、「改ざんを検出可能」とする Utah の選挙広告法、「永続的、または容易に削除できない」とする Coloradoである。後述の変換テストでは、現在利用できる技術がこれらの要件をどこまで満たせるかを測る。
C2PA の識別情報はファイル内でどんな形をしているか?
画像自体には見えない、署名済み JSON のブロックがファイルに追加される。C2PA は Coalition for Content Provenance and Authenticity が策定した仕様であり、その技術仕様では「manifest」を定義している。これは、誰が asset を作り、どのように作ったかを記録し、改ざんの有無を検出できるよう暗号署名したものだ。PNG では pixel データと並ぶ独自 chunk に格納される。生成画像の 1 つについて chunk を順番に確認すると、格納位置と容量は次のとおりだった。
IHDR 13 bytes image header
caBX 21,767 bytes C2PA manifest store <- the mark
IDAT 2,115,575 bytes the actual pixels
IEND 0 bytes
2 MB の画像で約 22 KB、比率はおよそ 1% だった。pixel は一切変わらない。画像上には何も描画されないため、どの viewer でも見た目は同じで、「Content Credentials」badge が表示されるのは対応 software が manifest を検出した場合だけである。
OpenAI の画像から verifier が読み取る manifest は次のようになっている。主要な field だけを残した。
{
"claim_generator_info": [{ "name": "OpenAI Media Service API" }],
"signature_info": {
"issuer": "OpenAI OpCo, LLC",
"time": "2026-08-22T13:47:29Z"
},
"assertions": [{
"label": "c2pa.actions.v2",
"data": { "actions": [{
"action": "c2pa.created",
"when": "2026-08-22T00:00:00Z",
"softwareAgent": { "name": "gpt-image", "version": "pre-2.0" },
"digitalSourceType": ".../digitalsourcetype/trainedAlgorithmicMedia"
}]}
}]
}
役割を担うのは 3 つの要素だ。action は asset が編集されたのではなく、新規作成されたことを示す。digitalSourceType: trainedAlgorithmicMedia は「生成 model によって作られた」ことを表す IPTC の語彙であり、機械可読な形で実際に「AI」と示す field である。software agent には model 名が入る。signature は全体を certificate に結び付けるため、verifier は claim が改変されていないか、誰がその内容を保証しているかを確認できる。
中国の暗黙ラベルは、ラベル表示措置とともに公開された強制国家規格 GB 45438-2025で定義されている。署名機関を使わずに同じ問題を解く仕組みで、JSON の plain text chunk として格納される。
{ "Label": "1",
"ContentProducer": "001191330106MA2CFLDG4R10001",
"ProduceID": "U-9TlH0PCIQomj9MzIc5VUuQ",
"ReservedCode1": "K-LBkc9peJ0Gox..." }
Label: 1 は AI 生成を意味する。ContentProducer は provider の登録企業コード、ProduceID は vendor が付与したコンテンツ番号、ReservedCode は署名値である。目的は同じだが、信頼モデルは異なる。C2PA では certificate authority が claim を保証する。中国のラベルは登録企業を示し、検証は必要とする側に委ねる。
API は実際に何を埋め込むのか?
画像 SKU 11 種のうち 7 種が C2PA を埋め込み、4 種が中国の暗黙ラベルを埋め込んでいた。対応は vendor ごとに完全に分かれている。
| SKU | Format | C2PA | 中国の暗黙ラベル | 作成 timestamp |
|---|---|---|---|---|
| gpt-image-1、1-mini、1.5、2 | PNG | あり | なし | 日付のみ、00:00:00Z |
| seedream-4.0、4.5、5.0 | JPEG | あり | なし | 秒単位で正確 |
| qwen-image-2.0、2.0-pro | PNG | なし | あり | なし |
| wan2.7-image、2.7-pro | PNG | なし | あり | なし |
| seedance-1.5-pro(動画) | MP4 | なし | なし | — |
| tts-1、qwen3-tts、google-tts-standard、chirp3-hd | MP3 / WAV | なし | なし | — |
C2PA を採用する両陣営とも、前述した c2pa.created と trainedAlgorithmicMedia をまったく同じ形で記録している。中国式ラベルを採用する 2 vendor も、同じ GB 45438 構造を出力していた。1 点だけ追加があり、ファイルの再配布者を示す 2 つ目の field ペアが含まれる。yes/no の列より重要な点が 3 つある。
署名に対する信頼度は同じではない。 検証は 2 段階で行う。まず manifest を読み、次に署名 certificate のチェーンが C2PA trust list 上のルートに到達するかを確認する。標準状態の verifier は何も信頼しないため、正常なファイルも含めてすべて signingCredential.untrusted と報告する。大規模に検証するなら、最初に公式リストを読み込む必要がある。公式リストを使うと、OpenAI の画像は trusted と判定される。発行 CA がリスト上の 17 組織の 1 つだからだ。ByteDance の画像は trusted にならない。manifest は email 向けの certificate 種別である GlobalSign S/MIME intermediate 配下で署名されており、そのルートがリストにない。C2PA 仕様上、ByteDance の manifest は valid である。署名検証に成功し、署名後に画像も変更されていない。しかし trusted ではないため、仕様準拠の verifier は claim の作成者を保証しない。
OpenAI の timestamp には時刻がない。 OpenAI の manifest はすべて 2026-08-22T00:00:00Z、つまり生成日の午前 0 時だった。ByteDance は実際の秒まで記録していた。時刻の粒度を落とすのは privacy 上の妥当な判断だが、California の潜在的開示情報では「time and date」が要求される。日付だけで足りるかは counsel に確認すべきだ。
音声と動画には何も入っていない。 AI Act と California はどちらも合成音声と動画を対象にしている。これは format の制約ではない。C2PA 仕様は MP4、WAV、MP3 への格納をサポートしている。生成した MP4 には標準的な QuickTime container field しかなく、音声ファイル 4 種には codec header しかなかった。画像を base64 で受け取っても URL で受け取っても識別情報は同じだった。配信経路で来歴情報が追加または削除されることもない。
識別情報は通常の処理後も残るか?
C2PA manifest は一度も残らなかった。中国のラベルは、画像処理ツールが text chunk を保持する場合に限って残る。この違いは、同じ 5 種類の処理を Python の Pillow と ImageMagick の両方で実行した結果から分かった。対象は、OpenAI の C2PA 画像、ByteDance の C2PA 画像、Alibaba の中国式ラベル画像の 3 ファイルである。
| 変換 | C2PA(OpenAI) | C2PA(ByteDance) | 中国式ラベル(Alibaba) |
|---|---|---|---|
| byte copy | 残る | 残る | 残る |
| PNG に再エンコード | 消える | 消える | tool による |
| 50% にリサイズ | 消える | 消える | tool による |
| 10% クロップ | 消える | 消える | tool による |
| JPEG q90 に変換 | 消える | 消える | 消える |
| WebP q85 に変換 | 消える | 消える | 消える |
Pillow では全処理で全識別情報が失われ、15 件中 0 件だった。ImageMagick で残ったのは 15 件中 3 件で、いずれも PNG 間の処理を行った中国式ラベルだった。仕組みは画質に依存しない。可逆な PNG への再エンコードでも、非可逆な JPEG と同様に C2PA manifest は消える。
この差の原因は単純だ。中国のラベルは通常の PNG text chunk である。tEXt は key-value 文字列を格納する標準の領域なので、text chunk を copy する tool なら特別な対応なしで引き継がれる。ImageMagick は default で引き継ぐ。Pillow では明示的な指定が必要になる。C2PA manifest は一般的な画像処理 tool が認識しない独自 chunk に入るため、metadata の保持を指定しても削除される。ImageMagick では単純なリサイズでも消え、全 chunk を明示的に含める flag を指定しても消えた。どちらの識別情報も format をまたぐと失われる。PNG text chunk には、JPEG や WebP での格納先がないからだ。
したがって、実務上のルールは「metadata は壊れやすい」より具体的になる。変換が必要なら同じ format 内にとどめ、text chunk を保持する library を使えば、中国のラベルは残せる。通常の tool で C2PA を保持する方法はない。サポートされている対応は、変換後に再署名することだ。ただし、これにより claim は変わる。新しい manifest では model vendor ではなく自分の pipeline が signer となり、自分の certificate が trust list に登録されるまでは untrusted と判定される。
この結果を先ほどの 5 つの法令表現と照らし合わせる。thumbnailer、CDN 変換、EXIF を削除する privacy 処理、user の screenshot は、いずれも識別情報を消す。これらの法律が想定する技術だけでは、求められる耐久性を実現できない。変換後も残る layer は、pixel に埋め込む不可視 watermark である。最も広く導入されている Google の SynthID には公開 detector がなく、確認 portal も waitlist 制なので、第三者は埋め込まれているか検証できない。ファイルから検証できるのは metadata layer である。2 つの library と 3 種類の識別情報を試した結果、変換後に残った組み合わせは 1 つだけだった。ImageMagick と中国式ラベルの組み合わせである。
どうせ消えるなら、識別情報を付ける意味はあるか?
ある。重要な platform は、識別情報がまだ存在する唯一のタイミング、つまり upload 時に読み取るからだ。thumbnailer を通すと消える manifest でも、元ファイルを platform に渡す時点では読み取られる。platform が投稿に付けたラベルは、metadata が消えた後も残る。
| Platform | upload 時に読み取るもの | 処理 |
|---|---|---|
| TikTok | 2024 年 5 月以降、C2PA Content Credentials | 外部で作成された AI コンテンツを自動ラベル付けする。TikTok 内のコンテンツにも独自の credentials を付与し、download 後もコンテンツに残る |
| YouTube | C2PA metadata と creator の自己申告 | 「C2PA metadata を含むコンテンツ」を自動でラベル付けする。開示を継続的に怠った creator には、強制ラベル、削除、Partner Program からの停止措置がある |
| Meta | C2PA と IPTC の指標に加えて、classifier と自己申告 | 「AI info」ラベルを付ける |
| C2PA manifest のみ。独自 detector はない | Content Credentials badge を表示する | |
| X | authenticity policy に来歴情報の読取処理に関する記載なし | classifier と report に基づいて対応する |
この点を踏まえると、エンジニアリング上の結論は変わる。metadata layer はファイルの永続的な属性ではない。元データを受け取る相手に対して、一度だけ送れる signal である。付けておけば、TikTok と YouTube はそれを、PNG 内ではなく自社 database に残るラベルへ変換する。付けなければ、platform の classifier に推測を任せることになる。制約は 2 つある。各 platform は、配信し直すファイルにも manifest を保持するかを公開しておらず、今回は検証していない。また、X は来歴情報を読み取ること自体を文書化していない。
届いたファイルに識別情報がない場合はどうするか?
自分で追加する必要がある。実際の論点は、どの layer に、どこで追加できるかだ。今回は metadata の経路を測定した。識別情報のない Alibaba の画像に独自の C2PA manifest を署名して追加すると、59 ms かかり、ファイルサイズは約 8% 増えた。1.18 MB から 1.28 MB への増加である。新しい manifest では trainedAlgorithmicMedia を指定した c2pa.created を宣言し、上流 model 名を記録した。ファイル内に元からあった中国式ラベルとも共存できた。vendor が両方を提供していなくても、1 つのファイルに両方式を入れることは可能だ。ただし注意点が 2 つある。自己署名した manifest は ByteDance と同じ理由で untrusted と判定される。また、署名済みファイルを再エンコードすると、vendor の manifest と同様に新しい識別情報もすぐ消えた。
| 対応 | 解決できること | コスト | 脆弱性 |
|---|---|---|---|
| 生成後に offline で C2PA manifest に署名 | EU の機械可読な識別義務。provider、version、time、識別子を入れれば California の潜在的開示情報にも対応 | 59 ms、容量 +8%、認定 issuer の certificate が別途必要 | 再エンコードで消える |
| API 経路の配信時に manifest を挿入 | 上記と同じ内容を一律に適用 | 同じ処理を前段に移す | 同じ |
| 可視ラベルを pixel に焼き込む | California の画面表示オプション。法令上は「manifest」disclosure と呼ばれるが、C2PA manifest とは無関係。中国の明示ラベルにも対応 | composite 処理 1 回 | すべての変換後も残るが、画像は変わる |
| コンテンツ hash を key とした生成 log を保持 | compliance の証拠。中国の 6 か月保存義務 | storage。ファイル単位の処理は不要 | ファイルから独立 |
| 不可視 watermark | 変換後も残る layer | open-source encoder は存在するが、相互運用可能な標準がないため、第三者は検証できない | — |
offline での署名と API 経路内での署名は、同じ byte 列に対する同じ処理である。違いは、署名が誰を主体として示すかだ。gateway で署名すると、ファイルの来歴を証明する主体は gateway になる。application で署名すると、自分がその主体となり、独自の certificate と key 管理が必要になる。自社 product が AI で生成したことを開示する義務があるなら、その義務を負う場所で証明するのが自然だ。
ファイルを変更せずに実施でき、見落とされやすい対策が生成 log である。中国では、API のように可視ラベルを付けずにコンテンツを渡す provider に対し、誰に提供したかを少なくとも 6 か月保存するよう義務付けている。生成 log は、ファイルが pipeline を通過した後に compliance を証明する手段にもなる。request ID、model、timestamp をすでに記録している場合でも、通常不足するのは配信した byte 列の hash である。hash があれば、metadata が失われた後でも log entry とファイルを対応付けられる。
FAQ
中国の画像 model は出力に識別情報を入れるか?
入れるが、C2PA ではない。Alibaba の qwen-image と wan2.7 の SKU は、GB 45438-2025で定義された暗黙ラベルを埋め込む。provider の登録企業コード、コンテンツ ID、署名値を含む metadata field である。ByteDance の seedream SKU は逆で、C2PA を埋め込むが中国式ラベルはない。画像 SKU 11 種のうち、両方を埋め込むものはなかった。
pipeline で画像をリサイズしても C2PA は残るか?
一般的な画像処理 tool では残らない。Pillow または ImageMagick でリサイズすると、C2PA manifest は削除される。manifest は独自 chunk に格納されており、すべての chunk を保持するよう指定しても、Pillow と ImageMagick はどちらも破棄する。対応方法は変換後のファイルを再署名することだけで、その場合は自分の pipeline が signer になる。中国のラベルは通常の PNG text chunk なので、ImageMagick は default で保持し、Pillow でも明示的に copy すれば保持できる。ただし、JPEG または WebP への変換では、どちらも失われる。
識別情報のない API 出力は、自社の compliance 上の問題になるか?
識別情報のないファイルが自社の責任になるかは、該当する法制度上で provider と deployer のどちらに当たるかによるため、counsel に確認すべきだ。今回の測定で事実として確認できた点は明確である。これらの API で音声または動画を生成する場合、あるいは EU 向け画像を Alibaba の SKU で生成する場合、そのファイルには欧州の verifier が認識できる情報が何も入っていない。識別情報の追加は利用者側で行う必要がある。
2026-08-22 に Synthorai gateway 経由で測定した。画像 SKU 11 種はそれぞれ 2 回生成し、base64 と URL の両方で取得した。動画 SKU は 1 種、text-to-speech SKU は 4 種を使用した。全ファイルについて、C2PA manifest、IPTC と XMP field、GB 45438 の label chunk を検査した。C2PA 署名は公式 trust list を読み込んで検証し、公開 Content Credentials verifier が使用する暫定リストとも照合した。残存テストでは、各方式の識別情報付きファイルを 1 つずつ使用し、Pillow と ImageMagick の両方で 5 種類の処理を実行した。処理は PNG 再エンコード、リサイズ、クロップ、JPEG 変換、WebP 変換で、各 library の metadata 保持オプションも使用した。修復処理の数値は、識別情報のない画像に独自 manifest で署名し、変換前後に再検査した結果である。法規制の各行は引用した条文をエンジニアリングの観点から読んだものであり、法的助言ではない。vendor は予告なく識別情報の挙動を変更するため、各行を前提にする前に再測定すること。
同シリーズ:画像生成のコスト、Qwen-Image 3.0 の実測結果、動画生成の料金、voice agent のコスト。