安全研究人员 David Buchanan 于 2026 年 10 月 2 日报告,签名者可以生成这样一种内容凭证(Content Credentials):签名和可信时间戳都保持有效,却不覆盖文件的任何内容。[1]内容凭证是内容来源与真实性联盟(C2PA)制定的溯源格式。它为文件附加一份经过签名的记录,称为清单(manifest),对文件的来源作出声明。清单常常包含由独立时间戳机构签发的时间戳,用以表明签名在某一时刻已经存在。[1]
这种方法利用的是排除范围(exclusion range):签名者可以把某些字节区间排除在签名所覆盖的密码学哈希之外。Buchanan 只设置了一个排除范围,覆盖整个文件,这样声明签名覆盖的就只是空字符串的哈希。他说,自己在签名之后修改了图片,签名和时间戳仍然有效。[1]他的示例是一张彩票照片。他说,照片上是 2026 年 8 月 28 日 EuroMillions 彩票开奖的中奖号码,附带的可信时间戳却比开奖早了几个小时。他还称,他能找到的 C2PA 验证工具都没有提示任何异常。[1]
C2PA 规范 2.4 版规定,创建清单的软件必须把排除范围限制在清单存储区或资产元数据之内。规范还要求,如果容纳清单的排除范围内含有其他数据,验证器应拒绝该清单;任何额外的排除范围,验证器都应以信息类代码报告。[2]
Buchanan 写道,覆盖整个文件的排除范围很容易发现,较小的排除范围则较难判断。他补充说,排除范围不能简单地取消,因为某些文件格式含有校验和,这些校验和在签名之后必须更新。因此,他建议针对每种格式规定哪些字节可以排除,并要求验证工具强制执行这些限制。[1]
马里兰大学巴尔的摩县分校(UMBC)、Hacker Factor 和美国国家安全局的研究人员在 4 月发表的一项分析中就已指出,排除范围可用来做出无法察觉的改动。[3]
来源
核查或更正本页
- 更正
- 提交更正请求 · 在 GitHub 编辑源文件 · 更正政策
