DeepFake Check
返回博客
DeepCheckAI Team 5 分钟阅读

C2PA Manifest Assertion 规则:如何核查 Standard 与 Update Manifest

先保存文件并确认 manifest 类型

用兼容 C2PA 的验证器打开前,先保存未经编辑的实际资产。记录来源 URL 或本地路径、取得时间、文件编号、验证器名称与版本、manifest label 和完整输出。这张记录表是本文提出的复核方法,不是 C2PA 规定的报告格式。

把问题限定为:这个 manifest 是否包含该类型必需的 assertion,同时没有出现该类型禁止的 assertion。C2PA 2.2 对 standard manifest 与 update manifest 规定了不同的结构规则。应抄录验证器报告的类型,不要根据文件名或画面内容猜测。工具没有显示类型时,标记为“未报告”,并保留完整输出供另一款有明确版本的验证器复核。

结构核查与每项 assertion 的内容验证要分开。结构上允许出现的 assertion 仍可能需要单独验证。结构失败也不能说明谁创建或修改了资产、为什么修改,更不能证明画面事件真实或虚假。

核对 standard manifest 的 assertion 数量

Standard manifest 必须恰好包含一个内容 hard binding。本节列出的可选项是 c2pa.hash.data、c2pa.hash.boxes、c2pa.hash.collection.data、已弃用的 c2pa.hash.bmff.v2 或 c2pa.hash.bmff.v3。解释 hash 结果前,先记录实际 label 与数量。没有 hard binding 时返回 claim.hardBindings.missing;超过一个时返回 assertion.multipleHardBindings。

接着统计 relationship 为 parentOf 的 c2pa.ingredient assertion。Standard manifest 可以有零个或一个,超过一个时以 manifest.multipleParents 拒绝。不要把所有 ingredient 都算作 parent;每个 relationship 单独占一行,只统计 parentOf。

Standard manifest 还要求 c2pa.created 或 c2pa.opened action 恰好出现在一个 actions assertion 中。记录包含合格 action 的 assertion。若验证器只展示总徽标,可以保存该显示,但不能补写工具没有给出的 assertion 级结果。

建议表格记录 manifest label、报告类型、assertion label、relationship 或 action、观察数量、要求数量、验证器 code 与未决问题。依据完整输出填写,不要只看最终通过或失败的截图。

对 update manifest 使用另一组规则

Update manifest 必须恰好包含一个 relationship 为 parentOf 的 ingredient assertion。缺少 parent、出现多个 parent 或 relationship 不是 parentOf 时,返回 manifest.update.wrongParents。同时保留实际 relationship 与数量,明确是哪种条件被观察到。

Update manifest 不得包含 c2pa.hash.data、c2pa.hash.boxes、c2pa.hash.collection.data、已弃用的 c2pa.hash.bmff.v2、c2pa.hash.bmff.v3 或 thumbnail assertion,也不得包含 c2pa.hash.multi-asset。出现任一禁用项时使用 manifest.update.invalid。这个 code 对应多种规则,因此还要准确记录触发问题的 label。

如果 update manifest 含一个或多个 c2pa.actions 或 c2pa.actions.v2 assertion,其中每个 action 值都必须属于 Update Manifests 章节支持的值。原样保存验证器显示的 action 和返回 code。不要把未知值替换成常见 action,也不要编造工具未展示的 allow-list 判断。

这些规则回答的是 manifest 类型与 assertion 组合是否符合规范。它们不能替代 signature、credential、assertion hash、asset binding 或 ingredient validation,后续结果应分栏记录。

把技术结果与现实真伪分开

最终记录应包含准确文件、manifest 类型、assertion 清单、数量、relationship、action、准确 code、验证器版本、完整输出与下一项核查动作。下一位复核者应能重做同一份清单,不必猜测检查了哪个 manifest 或副本。

如果还用 DeepFakeCheck 分析保存的资产,应把概率性风险信号放在 C2PA 结构表之外。自动检测可能误报真实媒体,也可能漏报合成或修改媒体。DeepFakeCheck 不判断 manifest 类型,也不签发本文列出的 C2PA 结构 code。

Assertion 组合通过,只支持“该 manifest 在本次验证器运行中满足这些类型结构规则”这一有限结论。失败则指出需要调查的具体结构。配文、人物、日期、地点与现实事件仍需核对原始发布者和独立证据。

来源

  • C2PA《C2PA Technical Specification, Validate the correct assertions for the type of manifest》:https://spec.c2pa.org/specifications/specifications/2.2/specs/C2PA_Specification.html#_validate_the_correct_assertions_for_the_type_of_manifest

需要检查可疑文件?

打开对应的检测工具,并结合来源和上下文理解风险结果。

打开检测工具