お断り: 本記事のニュース整理パートは 2026 年 5 月 19 日付の OpenAI 発表に関する複数の二次報道(PetaPixelResultsense ほか、報道公開は 5/20)に依拠しています(OpenAI 公式の発表ページは執筆時点でアクセス制限のため直接参照できず)。やってみた本編は 2026 年 5 月 27 日に ChatGPT で画像を生成し、c2patool v0.26.59 と openai.com/verify で実機検証した結果に基づきます。本記事に誤りや古くなった箇所を見つけられた場合は、記事末尾のフィードバック枠よりお知らせいただけると助かります。

はじめに

前回の記事では、Google が 5 月 19 日に発表した Gemini アプリの C2PA 検証統合を、Gemini で生成した画像を c2patool で読みながら確認しました。同じ 5 月 19 日、OpenAI 側も動いていて、C2PA Conforming Generator となり、ChatGPT・Codex・OpenAI API で生成する画像に C2PA Content Credentials と Google DeepMind の SynthID 透かしを両方乗せ、同時に openai.com/verify という公開検証ツールを preview で公開しています。

本記事では Gemini 記事と同じ流れで、ChatGPT で画像を生成 → ダウンロード → c2patool で Manifest を読む → openai.com/verify で検証、までを実機で押さえます。

2 日間で起きたこと

日付発表元内容公式発表
2026-05-19GoogleGemini アプリに C2PA Content Credentials 検証統合。Search・Chrome へも順次blog.google
2026-05-19OpenAIC2PA Conforming Generator になり、ChatGPT / Codex / API の画像に C2PA + SynthID。openai.com/verify を preview 公開openai.com

Google と OpenAI という競合 2 社が同日に SynthID という同じ技術で協調発表しているのが特徴的です。

OpenAI が今回統合したもの

観点内容
対象プロダクトChatGPT 画像生成、Codex、OpenAI API
C2PA 側OpenAI が C2PA Conforming Generator として正式登録。生成画像に Content Credentials を埋め込む
SynthID 側Google DeepMind の SynthID 透かしを画像にも追加
Verify ツールopenai.com/verify で画像をアップロードして「OpenAI 製か」を判定(preview)

C2PA は detailed context を運ぶがファイル添付なので剥がされ得る、SynthID は情報量は少ないがスクリーンショットや再エンコードに耐える、という非対称性を二層化でカバーする設計になっています。

やってみた: ChatGPT 画像の Content Credentials を確認

ChatGPT に「机の上に置き時計がある画像を生成して」と頼みます。

ChatGPT で「机の上に置き時計がある画像を生成して」と依頼したチャット画面

生成された画像をダウンロードします。

ChatGPT が生成した、机の上に置き時計が置かれた画像

これを c2patool で読みます。

c2patool sites/hp/public/assets/images/blog/openai-c2pa-verify/chatgpt-generated.png | jq '{
  active_manifest,
  validation_state,
  generator: .manifests[].claim_generator_info[0],
  signature: .manifests[].signature_info | {alg, issuer, time, cert_serial_number},
  assertions: [.manifests[].assertions[].label],
  actions: [.manifests[].assertions[] | select(.label=="c2pa.actions.v2") | .data.actions[] | {action, digitalSourceType, softwareAgent}]
}'
{
  "active_manifest": "urn:c2pa:9bf6372a-a0ac-4526-baf2-edd55bebd492",
  "validation_state": "Valid",
  "generator": {
    "name": "OpenAI Media Service API",
    "org.contentauth.c2pa_rs": "0.79.2",
    "specVersion": "2.2.0"
  },
  "signature": {
    "alg": "Es256",
    "issuer": "OpenAI OpCo, LLC",
    "time": "2026-05-27T13:17:56.317169+00:00",
    "cert_serial_number": "471440979205905794604524502504016020624908622401"
  },
  "assertions": [
    "c2pa.actions.v2",
    "c2pa.certificate-status"
  ],
  "actions": [
    {
      "action": "c2pa.created",
      "digitalSourceType": "http://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMedia",
      "softwareAgent": { "name": "gpt-image", "version": "2.0" }
    },
    { "action": "c2pa.converted",          "digitalSourceType": null, "softwareAgent": null },
    { "action": "c2pa.watermarked.unbound","digitalSourceType": null, "softwareAgent": null }
  ]
}

claim_generator.nameOpenAI Media Service API、署名 issuer は OpenAI OpCo, LLC、生成モデルは softwareAgentgpt-image v2.0 と明示。action 列は c2pa.createdtrainedAlgorithmicMedia)→ c2pa.convertedc2pa.watermarked.unbound の 3 段で、SynthID 透かしの適用は C2PA 標準アクションコード c2pa.watermarked.unbound で宣言されています。前回の Gemini 親 Manifest は c2pa.edited + description で SynthID を書いていたので、OpenAI の方が仕様準拠の書き方です。

validation_state がデフォルトで Valid 止まりなのは Gemini 記事のコラム で扱ったとおり、c2patool が組み込み Trust List を持たないからです。公式 C2PA Trust List を渡せば Trusted まで上がります。

次に同じ画像を openai.com/verify に投げます。

openai.com/verify に ChatGPT 生成画像をアップロードした検証結果画面

応答はこうでした。

OpenAI ツールで生成されました

このコンテンツは OpenAI のツールを使用して生成されました。以下のシグナルは、この結果を裏付ける証拠です。

✓ SynthID を検出しました — OpenAI 由来の SynthID ウォーターマークが検出されました。

✓ コンテンツ認証情報が検出されました — OpenAI に由来する信頼できる C2PA マニフェストが見つかりました。

SynthID 検出と C2PA Manifest 検出の 2 つのシグナルが独立に並びます。Verify ツールは「どちらか一方でも検出されれば OpenAI 製と判定」する OR ロジックなので、C2PA が剥がれても SynthID が残れば、SynthID が落ちても C2PA が残れば、どちらでも判定が成立します。これが OpenAI が二層化した狙いです。

まとめ

ChatGPT で画像を生成すると、OpenAI OpCo, LLC が ES256 で署名した C2PA Manifest が PNG に埋め込まれ、c2patool でも openai.com/verify でも問題なく読み取れることを確認しました。Manifest 内には SynthID 透かしの適用が c2pa.watermarked.unbound で宣言されており、Verify ツールでも C2PA / SynthID の 2 シグナルが独立に検出されます。

C2PA 専門で受託開発・実装コンサル・技術顧問を承っています。Manifest 設計や署名インフラの構築でお困りでしたら サービス案内 からお気軽にご相談ください。

参考リンク