PDF/A-2
PDF/A-2 继承了 ETSI/PadES 标准的规定。(来源)
- PDF/A-2 是否必须使用 PAdES?或者是否也允许 PDF/A-2 中的其他签名格式?
PDF 2.0
ETSI 会将这些特定于欧洲的元素反馈给 ISO,以包含在 PDF 标准的下一个版本 ISO 32000-2 中。(来源)
在新的 PDF 2.0 标准中,PAdES 是强制性的吗?或者 PDF 2.0 是否与 PAdES 兼容,并且也允许其他签名格式?
PDF/A-2 是否必须使用 PAdES?或者是否也允许 PDF/A-2 中的其他签名格式?
PAdES 不是强制性的。特别是在 PDF/A-2 规范中甚至没有提到“PAdES”这个名称。只有一些要求与 PAdES 要求有相似之处,例如
计算文件摘要时,应在整个文件上计算,包括签名字典,但不包括 PDF 签名本身。然后,此范围由签名字典的 ByteRange 条目指示。
这也是 PAdES 签名引入的要求,在 ISO 32000-1 中这只是一个建议。但事实上,Adobe Reader 很久以前就提出了这一要求。
尽管 ISO 32000-1 还允许签名字典的 Contents 条目的值是 DER 编码的 PKCS#1 二进制数据对象,但不建议使用该格式。
这有效地建议使用基于 PKCS#7/CMS 签名容器的 PDF 签名。这也与 PAdES 平行,后者实际上更进一步并需要它。但是基于裸 PKCS#1 对象的 PDF 签名无论如何都不流行,即使在纯 PDF 世界中也不流行。
ISO 32000-1:2008 允许包含一个或多个 RFC 3281 属性证书以与签署者证书相关联。但是,符合规范的编写者不应包含它们,因为它们没有得到广泛支持,因此使用此属性会降低互操作性。
PAdES 第 2 部分(基本配置文件)中有类似的建议。在 PAdES 第 3 部分(PAdES-BES 和 PAdES-EPES 配置文件)中,甚至禁止使用属性证书。但是现在属性证书一般不再流行了。
因此,有相似之处,但仅此而已。
在新的 PDF 2.0 标准中,PAdES 是强制性的吗?或者 PDF 2.0 是否与 PAdES 兼容,并且也允许其他签名格式?
由于 PDF 2.0 尚未发布,严格来说这是猜测。
不过,在我能读到的最后一份草稿中,PAdES 签名已添加到现有格式中,并且只有 adbe.pkcs7.sha1 签名已被弃用。由于 SHA1(至少以该格式使用一次)已失去信任,因此无论如何都不应该使用这种格式,即使在当前的 PDF 中也是如此。
因此,PDF/A-2 和 ISO 32000-2 都不强制执行 PAdES 样式签名,adbe.pkcs7.detached 样式签名仍然是有效选项。但是,如果对互操作性和长期验证功能感兴趣,那么 PAdES 很可能是更好的选择。