DeepFake Check
ブログに戻る
DeepCheckAI Team 5 分で読めます

C2PA Multi-Asset Hashで複数の結合アセットを確認する方法

Multi-part fileとvalidatorの全出力を保存する

C2PA対応validatorで開く前に実際のfileを保存します。入手元、取得時刻、file名、size、validator名とversion、active manifest label、全出力を記録します。この表は本文の実務提案で、C2PA指定の報告形式ではありません。初回検証前に再exportしたりscreenshotへ置き換えたりしません。

c2pa.hash.multi-asset labelのassertionを探します。parts arrayの順序を保ち、各entryのlocation、hashAssertion、optionalを同じ行に置きます。仕様上、このassertionはhard bindingの扱いを変更しますが、それ自体はhard bindingではありません。Cloud data assertionには入れられず、互換性の評価が終わるまではcompressed manifestとの併用を避けることが推奨されています。構造を作ったsoftwareは推測せず、validatorの表示を記録します。

確認する質問は、このfileの各partが報告された位置とhashで結合されているかです。Caption、人物、場所、日付、描写された出来事が真実かは決定しません。

各locationと全byte範囲を確認する

C2PA 2.2はprimary partを含む全partをparts内のpart-hash-map objectで表すよう求めます。LocationはbyteOffsetとlength、またはbmffBoxを使います。bmffBoxではbox headerを除いたpayloadだけがpartです。Locatorをそのまま保存し、box pathを推測したbyte offsetへ置き換えません。

Partはfile内の順序で並び、連続し、重ならず、assetの全byteを覆う必要があります。Byte指定のentryにはpart番号、start、length、計算したend、次のstartを表にします。Gap、overlap、逆順、未被覆の末尾は構造上の問題です。Validatorが計算に必要な値を示さない場合はcoverageを未確認とし、全出力を保存します。

File copyごとに別の対象として扱います。それぞれを独立して検証し、一つのcopyの結果で別copyの未表示fieldを補いません。

各partのhash assertionをたどる

各hashAssertionはpartのhash assertionを指すhashed URIです。参照先はc2pa.hash.dataなどのstandard hard binding assertionで、labelには.partと該当するmultiple-instance identifierが追加されます。このsuffixはpart bindingをasset全体のstandard hard bindingから区別し、一つのmanifestに複数のpart assertionを置けるようにします。

Validatorが表示した場合だけ、URI、解決先assertion label、hash algorithm、結果を記録します。Asset全体のhard-binding結果は別行にします。全fileのpassは失敗または未報告のpart結果を置き換えず、一つのpartのpassも他partの状態を証明しません。

optional booleanがない場合のdefaultはfalseです。Optional partはtrusted signerを伴わないworkflowで削除されることがあり、残りのfileの完全性を検証する目的は維持できます。Fieldの有無と値を記録します。Optional指定と残りの検証結果がなければ、欠けたpartを問題なしと解釈しません。

Partに独自のC2PA Manifestがあり、そのpart内にself-containedでない場合、仕様はassetのManifest Storeへ保存してcomponentOf ingredientで参照することを推奨します。検査出力に実際に現れる場合だけ記録します。

完全性結果と出来事の判断を分ける

Passが示すのは、このvalidatorがこのfileで宣言されたpart配置と適用されたpart hashを整合的と判断したことだけです。Failureは正確なpart、locator、URI、codeまたはmessage、file copyに結び付けます。それだけで誰がいつ変更したか、描写された出来事が捏造かは分かりません。

保存したfileをDeepFakeCheckで分析する場合、確率的結果はC2PA表の外に置き、実際のcopyへ関連付けます。自動分析には本物を疑う誤検知と合成・変更mediaを見逃す見逃しがあります。確率的結果はC2PA validator結果と分けて記録します。

File、validator全出力、part範囲表、解決したhash参照、optional状態、別のasset全体結果、元の公開情報、reviewerの判断を保存します。

出典

  • C2PA, “C2PA Technical Specification, Multi-Asset Hash”: https://spec.c2pa.org/specifications/specifications/2.2/specs/C2PA_Specification.html#_multi_asset_hash

この画像、AIで作られたかも?

高精度のディープフェイク検出ツールで、画像を今すぐ分析しましょう。

画像を分析する