阅读约 6 分钟
将 C2PA Content Credentials 锚定到独立时间戳
C2PA 描述媒体的来源;Label 309 则把资产本身或其清单锚定到 Cardano 上一个独立的公共时间戳。下面讲清这两层如何配合。

C2PA 与 Label 309 各自解决同一问题的一半,二者配合时效果最好。C2PA 描述媒体的来源,以及它经历过哪些处理。Label 309 则把这份媒体的哈希——或它的 C2PA 清单的哈希——锚定到 Cardano 上一个没有任何单一方能掌控的公共时间戳。把两者并排放在一起:C2PA 承载来源故事,而 Label 309 证明这个故事的某一具体版本在何时已经存在。
如果你只记住一件事:Content Credential 解释内容是什么,而一条 Label 309 记录把它钉在一个时间点上,任何人都能对照 Cardano 区块链来核验,无需信任发布者、平台,也无需信任 CardanoWall。
C2PA 是做什么的?
C2PA 是面向数字媒体的来源溯源标准,由内容来源与真实性联盟(Coalition for Content Provenance and Authenticity)维护。很多人看到的,是它面向用户的名称「Content Credentials」:一种检视文件来源的方式,而不必单凭图像、视频或音频本身去猜测。
它让创作者、平台、工具和发布者都能为内容附上一份经过「签名」的来源数据。这份数据不止是一个时间戳——它是一组结构化的断言,涵盖内容的创建、编辑、原料(构成某项资产的输入素材)以及所涉及的工具,全部绑定到内容上,并由制作它的一方签名。
这一点之所以重要,是因为现代内容在被任何人看到之前,往往要流经众多工具。一个文件可能被采集、编辑、导出、压缩、缩放、加字幕、再生成、再转发。C2PA 正是为描述这条链路而设计的。
Label 309 为 Content Credential 补上了什么?
Label 309 补上的是一个独立的时间见证,它不依赖文件元数据是否得以保留。
一条 Label 309 记录可以承诺以下任意内容:
- 媒体文件的哈希
- C2PA 清单的哈希
- 一份分离式清单或一个清单库
- 一份项目文件夹清单
- 一次覆盖多个资产或清单的 Merkle 根
- 一个打包了源文件与来源数据的封存包
链上记录无需理解任何一条 C2PA 断言。它只承诺真正重要的那些字节——或那份清单。日后,任何持有该资产或清单的人都可以重新计算哈希,确认在该笔 Cardano 交易的区块时间,被承诺的正是相同的字节。验证方只需要交易元数据、(可选的)内容字节,以及一个公共的 Cardano 浏览器。签发方的服务器不在信任链路之中。
独立时间戳为什么有用?
来源元数据可能被质疑;而公共账本上的时间戳更难被反驳。
这些场景都很具体。一家发布机构可能需要证明某份特定的 Content Credential 在某条下架请求到达之前就已存在。一家新闻编辑室可能需要证明一张经过编辑的照片及其来源清单在发表之前就已归档。一家 AI 公司可能需要证明某一批生成的产出在某一轮生产结束时就已存在。
C2PA 数据陈述的是内容对自身的声明。Label 309 记录陈述的则是这份确切的资产或清单在「何时」被承诺到公共账本上。这是两种不同的主张,在争议中两者都可能起作用。
元数据被剥离了会怎样?
正常分发过程中元数据经常丢失,而时间锚定能在这种丢失中存活下来。
社交平台、即时通讯工具、内容管理流水线、图像优化器和文件转换器都会剥离、改写或分离元数据。即便 C2PA 数据可以随文件内嵌传播,或存放在一份伴随清单里,现实中的分发依然杂乱且有损。
Label 309 锚定并不会神奇地让元数据留在每一份流通的副本之中。它保留下来的,是对该资产、清单或批次的一份公共「承诺」。只要你保留了原始文件、分离式清单或一份稳定的导出件,日后你就能按顺序证明:
- 这就是那份资产或清单
- 这就是它的哈希
- 这个哈希与 Label 309 记录相符
- 该记录在那笔 Cardano 交易时间之前就已存在
即便网上流通的副本已丢失原始元数据的一切痕迹,这条链条依然成立。
应该锚定资产还是清单?
只要事关重要,就两者都锚定——它们回答的是不同的问题。
资产哈希证明某个具体文件曾经存在。C2PA 清单哈希证明某个具体的来源数据包曾经存在。对于一项重要资产,你可以发布单独一条 Label 309 记录,同时承诺这两者,外加若干可选项:
asset文件的哈希- C2PA 清单的哈希
- 一个可选的记录级签名(作者署名始终可选,绝不强制)
- 一个可选的封存源文件包
- 一个可选的指向该资产或清单的
ar://或ipfs://URI,前提是它是公开的
对于高吞吐量的工作流,你不会把每个文件都放上链。你会把许多资产哈希和清单哈希批量汇入单独一个 Merkle 根,并锚定它——一条记录、一笔交易、任意数量的叶子。(关于这如何扩展,参见一条记录证明上千个文件。)
这对 AI 生成的媒体怎么用?
AI 媒体需要规模化的来源溯源,而 Merkle 批处理正是契合的形态。
一个团队一天可能生成成千上万张图像、产品图、视频、配音、译文、预览或广告变体。把每个产出都塞进它自己的区块链交易是错误的形态——既慢又贵,毫无收益。正确的做法是:
- 生成这些资产
- 在合适之处附上或创建与 C2PA 兼容的来源数据
- 对每个资产和每份清单计算哈希
- 在整批之上构建一棵 Merkle 树
- 为这个根发布一条 Label 309 记录
- 把叶子列表和包含证明保存在你自己的系统里
日后你可以用一份小巧的包含证明,而非整棵树,来证明某个特定的 AI 产出——连同它的来源清单——属于某个带时间戳的批次。这正是规模化的 AI 内容来源溯源背后的日常模式。
这对发布机构有什么帮助?
发布机构可以在争议到来「之前」就把证据布置就位,而不是事后补救。
新闻编辑室、代理机构、品牌或市场平台都可以在发布前为重要媒体打时间戳。如果该资产日后被复制、篡改、错误归属、剥离元数据,或被指为伪造,发布机构手里已经握有一条更有力的时间线可供指认:
- 新闻编辑室在发表前锚定一张照片及其 C2PA 清单
- 代理机构锚定交付给客户的最终活动资产
- 市场平台锚定卖家媒体及其声明
- 品牌在发布前锚定官方产品图
- 平台锚定每日一批生成的缩略图或预览图
这份证明并不告诉观众该相信什么。它给调查者提供了一个稳定、带时间戳的对象,用来与有争议的副本作比对。
这对创作者有什么帮助?
创作者获得的证明,能比任何单一平台都活得更久。
艺术家可以锚定源文件、最终导出件、提示词、项目文件和 Content Credentials。摄影师可以锚定原始文件和编辑后的导出件。设计师可以锚定一份客户交付包。AI 创作者可以锚定产出和生成记录,而完全不必发布源文件。
当作品较为敏感时,源素材可以被「封存」:其密文进入存储,内容加密密钥被封装到你自己的身份或选定的接收方,因此只有持有密钥的人才能打开它。而链上记录依然能证明时间与完整性。
这不是一套版权登记系统。它是一层时间与完整性的保障,可以支撑一个更宽泛的权利论证,但并不声称由它来一锤定音。
为什么不干脆把哈希放上链,跳过 C2PA?
因为链上的哈希能证明字节曾经存在,却对这些字节是如何产生的只字不提。
一个孤零零的链上哈希无法告诉你是谁拍下了这张照片、用了哪个工具编辑、由哪个 AI 模型生成、用到了哪些原料,或遵循了什么策略。C2PA 正是为这一层更丰富的来源溯源而生。Label 309 则是为 Cardano 上持久、与签发方无关的证明承诺而生。最有力的工作流让每一层各司其职、发挥所长——这正是存在性证明对比 C2PA通篇要说的事。
它不能证明什么?
时间锚定是一项很窄的主张,把它的边界讲精确是值得的。
它不能证明照片里的场景是真实的。它不能证明创作者对每一项原料都拥有合法权利。它不能证明每一条 C2PA 断言都为真。它无法阻止任何人复制该资产、剥离其元数据,或制作出具有误导性的衍生作品。它也不能替代平台审核、新闻编辑室核实、权利管理或法律程序——一份证明在争议中是否有用,取决于司法辖区与具体事实,而且它不能替代律师的意见。
它能证明的,是某项特定的资产、清单或批次承诺在某个公共时间点之前就已存在。这比「这是真实的」更窄,但它是一项有用且可核验的主张。关于完整的边界,参见证明无法证明什么。
一句话总结
C2PA 承载来源故事;Label 309 把这个故事锚定到时间上。
对于重要的媒体,把资产哈希和 C2PA 清单哈希一并锚定。对于高吞吐量的媒体,把它们批量汇入一个 Merkle 根之下。对于敏感的源文件,为你自己或为可信的接收方封存这个包。最终得到的不是一枚神奇的真实性徽章——而是一个可验证、独立的时间锚定,覆盖这份媒体及其周边的来源数据。
延伸阅读
- C2PA / Content Credentials——来源溯源标准:c2pa.org、C2PA 技术规范,以及 contentcredentials.org。
- 存在性证明对比 C2PA——两层对比的详细展开。
- 规模化的 AI 内容来源溯源——对生成媒体做 Merkle 批处理。
- 证明无法证明什么——时间戳的边界。
- Label 309 是一项开放标准,主页在 label309.org,开源 SDK 与 CLI 在 github.com/cardanowall。