AI 输出的内容溯源:C2PA、SynthID 以及你很快将面临的审计追踪
模型的输出曾经只是一个字符串。到 2026 年 8 月,它将变成一个带有监管链清单的签名制品(signed artifact),任何将其视为普通字符串的团队都将在截止日期的压力下进行补救式改造。
这种说法听起来可能有些戏剧化,直到你读到《欧盟人工智能法案》(EU AI Act)第 50 条。该条款将于 2026 年 8 月 2 日全面实施,要求生成式系统产生的任何合成内容都必须能被机器检测为 AI 生成。2026 年 3 月发布的《行为准则》(Code of Practice)明确指出,单一的标记技术是不够的——提供商必须将元数据嵌入(C2PA)与不可见水印结合起来,且输出内容必须在裁剪、压缩和截图等常见转换操作后依然存续。不合规的罚金高达 1,500 万欧元或全球营业额的 3%。这不仅仅是一个标签指南;这是一个签名制品的强制指令,它将落在每一个向欧盟市场发布生成式功能的团队头上。
工程上的影响在于,“模型返回的内容”的表面积扩大了。字符串现在被包裹在一个清单(manifest)中。清单由密钥签名。密钥链接到证书颁发机构。该制品携带 一个水印,理想情况下能经历 JPEG 压缩往复和截图而存续。下游系统——CMS 流水线、广告网络、招聘平台、社交平台——在接受该制品之前,会越来越多地读取该清单。如果你的生成路径没有发出清单,你不仅是不合规,你还在生产那些下游验证者可能会静默降权、标记或拒绝的内容。
输出是签名制品,而不是字符串
像对待二进制文件的代码签名一样对待 C2PA。C2PA 规范将清单描述为嵌入在资产内部的数字签名记录,记录了来源、生产工具、模型版本以及自那时起应用的编辑链。签名使用与支持 TLS 相同的 X.509 证书体系,推荐算法包括 ES256 (ECDSA P-256)、EdDSA (Ed25519) 或 PS256 (RSASSA-PSS)。对于生成式 AI,声明生成器(claim generator)就是模型服务本身:Adobe Firefly、Microsoft Copilot 和 Google Gemini 都会在生成时嵌入 C2PA 清单,证明资产是由 AI 生成的并指明模型版本。
一旦你采用了这种思维模型,架构决策就会变得清晰。你需要为每个模型和每次部署准备一个签名身份。你需要一个密钥库——HSM 或云端 KMS——具备轮转、基于角色的访问控制和审计日志。你需要一个清单模式(manifest schema),捕获下游系统关注的字段:模型版本、提示词指纹(出于隐私考虑使用哈希值,而非提示词本身)、如果资产来自 Agent 工作流则记录工具调用谱系,以及任何被编辑或合成的源资产的溯源链。你需要一个哈希步骤,将清单与资产字节绑定,使得任何单像素的修改都会破坏签名。
团队容易掉入 的陷阱是将清单视为营销层面的事后补充——在流水线末端发出点东西,好让法律团队能交差。但清单的价值在于加密绑定,而这种绑定只有在你生成的那一刻签名才有效,而不是在发布的那一刻。签名过晚意味着你是在为一个无法证明来自你模型的字符串做担保。
为什么仅靠元数据是脆弱的契约
嵌入式 C2PA 清单有一个已知的失效模式,任何从业者在测试一个下午后都会发现:社交平台会抹除它们。Instagram、X 和 WhatsApp 会对上传的内容进行重新编码并丢弃元数据。LinkedIn 和 TikTok 已经开始保留它,但这种差距是真实存在的,且扩张速度超过了执法速度。平台出于正当理由抹除元数据——文件大小优化、EXIF 隐私、针对设备的转码——副作用是,你精心签名的资产在到达消费者端时变成了“裸体”。
这就是为什么监管草案坚持采用多层方法。C2PA 2.0 引入了软绑定(soft bindings):一种嵌入在信号本身的不可见水印,它在重新编码后依然存续,并作为查询清单仓库的键(lookup key)。SynthID 是这一理念最显眼的实现——Google 的系统为 Imagen、Veo、Lyria 和 Gemini 生成的图像、音频、视频和文本嵌入不可见水印,截至 2026 年初,已有超过 100 亿个制品被添加了水印。当嵌入的 C2PA 清单被抹除时,软绑定仍然可以被检测、哈希,并用于从远程存储中检索完整的溯源记录。
你真正需要的架构包含三个层级。首先,一个嵌入式 C2PA 清单,为任何接收到原始文件的验证者提供字节级 精确的加密签名记录。其次,信号中的水印,它在重新编码后依然存续并作为恢复密钥。第三,一个远程清单存储(一个可验证的 URL,通常是内容寻址的),当嵌入式清单消失但水印存续时,下游系统可以查询它。缺少任何一层,你的流水线就是脆弱的。现在就开始构建这三层的团队在 8 月份会显得很有先见之明。
水印并非万能,而军备竞赛是真实存在的
如果 SynthID 级的水印能对任意修改都具有鲁棒性,那确实很方便。但事实并非如此。最近的研究表明,文本变体 SynthID-Text 会因改写(paraphrasing)、复制粘贴编辑和回译(back-translation)而明显失效——而这些正是别有用心者为了“洗白”生成内容而采取的操作。图像和视频水印在应对压缩和裁剪方面表现较好,但也有其自身的攻击面:基于扩散模型的微调可以在保留视觉保真度的同时擦除水印,而且目前还没有一个大家公认的标准对抗性基准。
由此产生两个运营层面的推论。首先,你的检测阈值不是“存在水印”或“不存在水印”——而是随着转换而衰减的置信度得分。如果一个工作流将检测视为二元结果,就会产生误报(水印被冲淡,看起来像未签名)和漏报(合法的编辑碰巧破坏了信号)。应将验证器构建为一个具有明确阈值并与下游策略决策挂钩的概率分类器,而不是一个非黑即白的预言机。
其次,水印的作用是抵御随意剥离和意外损耗,而不是对抗拥有研究级工具的对手。如果你的威胁模型包括坚定的攻击者——如内容洗白、选举级别的虚假信息、欺诈——那么水印只是众多信号之一,审计线索(清单 + 签名身份 + 远程注册表)比水印本身具有更高的法律效力。水印起到威慑作用,而清单则提供证明。不要让“我们有 SynthID”成为“我们能通过审计”的代名词。
审计线索才是真正的产品
溯源流水线通常被当作合规负担卖给工程团队,但更诚实的说法是,它们产生的审计线索是你的下游系统所需要的,无论监管机构还是你的客户是否先提出要求。处理 AI 生成求职信的招聘平台想要知道哪个模型生成了什么。拒绝未签名合成内容的广告网络希望在投放前验证清单。使用生成系统起草客户往来信函的银行希望在收到投诉后,能够准确证明是哪个提示词、模型版本和工具调用生成了有争议的句子。
最后一种情况是工程师们最容易低估的。当“我们不跟踪那个”不再被接受时,法律层面上的压力会比人们预期的更早到来,而且是在招聘、贷款、医疗通信、内容审核申诉等领域——在这些领域,无法回应传票的代价极高。一个包含模型版本、提示词指纹、工具调用谱系和签名时间戳的清单不仅是一个合规产物;它是“我们可以重现决策”与“我们不得不和解”之间的区别。
审计级清单的要求比合规级清单更高。合规只需要“这是由我们通过 AI 生成的”。审计则需要“这个确切的产物是在这个时间由这个模型版本,使用这个提示词指纹、这个工具调用序列和这组源资产生成的,并由你可以验证其证书链的这个密钥签署”。请构建审计级版本。合规版本只是它的一个严格子集,而且当生产环境第一次出现问题时,你终究会需要审计级版本。
后期补救比从第一天就开始部署要难得多
每一个在没有溯源机制的情况下发布生成式功能并计划以后再添加的团队,都低估了其中的成本。原因如下:
- 身份扩张(Identity sprawl)。 一旦有五个服务产生生成内容,每个服务都需要一个签名身份、一个证书、一个轮换策略和一个密钥管理方案。为一个新服务添加签名是一个冲刺任务;但为五个遗留服务添加签名则需要一个季度,而且你追溯提供的密钥无法对已经发布的产物进行签名。
- 架构漂移(Schema drift)。 清单字段会自发增长——模型版本、部署区域、检索来源、评估链——在已经发布的多个服务之间稳定架构是一项协同迁移工作。预先定义架构的团队只需付出一次成本。
- 水印嵌入是在生成阶段进行的。 你无法在事后以能有效证明来源的方式为资产添加水印——水印必须在生成过程中编织进去。如果你现在的模型推理栈不支持它,后期补救可能意味着更换推理层或模型本身,随着模型集成的增多,成本会变得更高。
- 验证便捷性(Verification ergonomics)。 下游消费者想要一个简单的 SDK 调用:“这个产物 是我们的吗?它的清单里写了什么?”当有预先规划时,在三层结构(嵌入式清单、水印、远程存储)之上构建该 SDK 是很直接的;但如果是强行拼凑到已完成的流水线上,则会非常痛苦。
- 存储和 CDN 路径。 JPG 和 PNG 上的清单存储大小可能与资产本身相当。你的 CDN、图像代理和数字资产管理系统(DAM)都需要学会通过转码保留清单,而在大多数图像流水线中,“保留元数据”并不是默认选项。
现在就开始构建溯源基础设施的团队会将其视为像身份验证一样的基础服务:每个生成路径都会使用它,具有明确的所有权、明确的合约和明确的弃用机制。而那些选择等待的团队,将不得不在监管期限的压力下,利用手头仅有的遗留流水线来凑合完成。
一个务实的构建顺序
如果你从今天开始,依赖图大致如下。第一,建立密钥管理方案——HSM 或云 KMS,具备轮转、审计日志,且每个模型部署至少拥有一个签名身份。第二,针对审计场景(而不仅仅是合规场景)定义清单 (manifest) 架构,并记录哪些下游消费者将读取哪些字段。第三,将 C2PA 清单生成集成到你的推理层 (serving layer),使每个输出在生成时即被签名,并将资产哈希绑定到签名中。第四,添加水印——Google 模型使用 SynthID,其他供应商使用等效方案——并将检测视为具有明确阈值的概率信号。第五,建立一个采用内容寻址 URL 方案的远程清单存储,以便在嵌入式清单被剥离时,下游验证器可以恢复溯源信息。第六,改造你的 DAM、CDN 和 CMS 流水线,以便在转码过程中保留清单,并在无法嵌入的地方使用侧车清单 (sidecar manifests)。第七,编写下游服务将调用的验证器 SDK。
除非你在几个月前就已经开始,否则你无法在 2026 年 8 月之前完成这七项工作,而这正是重点所在。那些表现良好的团队,是将监管视为对已启动工作的推动力量。那些手忙脚乱的团队,是将溯源视为一个在发布阶段才解决的打标签问题,而此时模型已经产生了一个未签名的字符串。输出是一个已签名的产物。为此进行构建,否则以后只能在更严苛的限制下推倒重来。
- https://c2pa.org/
- https://contentauthenticity.org/how-it-works
- https://spec.c2pa.org/specifications/specifications/2.3/specs/C2PA_Specification.html
- https://deepmind.google/models/synthid/
- https://deepmind.google/blog/watermarking-ai-generated-text-and-video-with-synthid/
- https://blog.google/innovation-and-ai/products/google-synthid-ai-content-detector/
- https://digital-strategy.ec.europa.eu/en/policies/code-practice-ai-generated-content
- https://www.twobirds.com/en/insights/2026/taking-the-eu-ai-act-to-practice-understanding-the-draft-transparency-code-of-practice
- https://arxiv.org/html/2510.09263v1
- https://arxiv.org/abs/2508.20228
- https://worldprivacyforum.org/posts/privacy-identity-and-trust-in-c2pa/
- https://www.aiipprotection.org/news/c2pa-watermarks-social-media-metadata-stripping.php
- https://nvlpubs.nist.gov/nistpubs/ai/NIST.AI.100-4.pdf
