C2PA認証情報の失効:失効した署名証明書を確認する方法
ファイルとvalidatorの全出力を保存する
C2PA対応validatorで開く前に、確認対象のファイルをそのまま保存します。取得元、取得時刻、ファイル名、validator名と版を記録し、informational codeとfailure codeを含む全出力を残します。この記録方法は本文が提案する運用手順であり、C2PAが要求する書式ではありません。
問いを限定します。このvalidatorが署名者証明書とtrust chain内のCA証明書について、どの失効状態を確認したかを調べます。証明書の状態はclaim signature検証の一部です。撮影時刻、caption、描写された出来事、AI生成の有無を証明するものではありません。
CA証明書と署名者証明書を分ける
C2PA 2.2は、署名者証明書とtrust chainを構成する全CA証明書の失効状態を確認するようvalidatorに求めます。CA証明書ではAuthority Information Access extensionを参照し、AIAがOCSP利用可能と示す場合はC2PA Manifest内の関連OCSP responseを使用するよう説明しています。
信頼できるtime-stampがあればその時点、なければ現在時点でCA証明書が失効していた場合、claim signatureはsigningCredential.untrustedで拒否されます。対象の証明書、時間基準、正確な状態を分けて記録します。CA chainの失敗と署名者証明書の結果を一つのbadgeにまとめません。
署名者証明書は別の手順です。証明書が失効状態をサポートしない場合、または発行者が照会方法を提供しない場合、C2PA仕様ではnot revokedとして扱います。Responderが直近にgoodを確認した場合とは異なるため、validatorが示した理由を残します。
OCSP証拠と時間基準を追跡する
Claim generatorはCOSE_Sign1構造のrVals headerにOCSP responseをstaplingできます。後続のclaim generatorは、同じC2PA Manifest Store内の別manifestにcertificate status assertionを追加できます。Responseが複数ある場合、validatorは一つがvalidationを通過するまで試し、その後は残りを無視します。
Manifest Store内のOCSP responseでは、RFC 6960に従うresponseの受理、authorized responder、証明書状態、時刻条件を確認します。C2PAはremoveFromCRLをgoodと同様に扱います。以前のcertificate holdが解除されたことを示すためです。条件を満たす非失効結果はsigningCredential.ocsp.notRevoked、署名時の失効はsigningCredential.ocsp.revokedとなり、claimは拒否されます。両方を「OCSP確認済み」と省略しません。
Manifest Storeに利用できる情報がない場合、online validatorはOCSP responderへ照会できます。この照会は検証中のasset identityを外部に明かす可能性があるため任意です。照会を省略するとsigningCredential.ocsp.skipped、応答を受け取れないとsigningCredential.ocsp.inaccessibleが出ます。どちらもinformational codeであり、確認済みの失効ではありません。
認証情報の信頼、検出、出来事を分ける
skipped、inaccessible、未表示の詳細を「失効」と扱うと誤警報になります。一方、manifestの存在だけを記録してuntrustedやocsp.revokedを捨てると、実際のtrust問題を見逃します。Unknown、informational、success、failureと判断の時間基準を分けて保存します。
保存したファイルを別途DeepFakeCheckのメディアrisk確認へ送る場合、確率的な結果は別欄に置きます。自動検出は本物のmediaを疑わしいとする場合も、合成・変更mediaを見逃す場合もあります。C2PA OCSP codeの発行、証明書chainの検証、失敗したsignatureの修復は行いません。
現実の主張は、元の公開ページ、ファイルを示したアカウントや組織、主張された日時と場所、出来事に関する独立資料で確認します。最後にファイル識別子、validatorと版、証明書の役割、OCSPの出所、時間基準、正確な状態code、未解決項目、別の検出結果と対応を残します。
出典
- C2PA, “C2PA Technical Specification — Validate the Credential Revocation Information”: https://spec.c2pa.org/specifications/specifications/2.2/specs/C2PA_Specification.html#_validate_the_credential_revocation_information