1

我们如何检查我们在 PDF 上的数字签名是否符合“PAdES”标准?

最好的问候 Pearapon S。

泰国曼谷

4

1 回答 1

3

OP 使用第三方软件(手头的 iText 5.4.2)来创建 PAdES 签名,现在想要检查生成的签名是否确实满足 PAdES 规范。这里有一些想法:

“PAdES 签名”是什么意思?

首先,您必须定义“PAdES 签名”的含义:

  • 您是指即将发布的 PDF 2.0 规范中定义的术语吗:

    使用子过滤器ETSI.CAdES.detached的 PDF 签名称为PAdES 签名,它们遵循为与 ETSI EN 319 122 中定义的相应 CAdES 配置文件兼容而创建的两个 CMS 配置文件之一。

    (ISO 32000-2 FDIS 第 12.8.3.4 节 - PDF 中使用的 CAdES 签名)

  • 您的意思是更具体地说是遵循 ETSI EN 319 142-1 中规定的 PAdES 基线签名配置文件之一的签名吗?

    第 6 条定义了四个级别的 PAdES 基线签名,旨在促进互操作性并涵盖 PAdES 签名的生命周期,即:

    a) BB 级别提供了在生成签名时包含已签名和一些未签名属性的要求。

    b) BT 级别为现有签名的生成和包含可信令牌提供了要求,证明签名本身在特定日期和时间确实存在。

    c) B-LT 级别要求在签名文档中包含验证签名所需的所有材料。该级别旨在解决验证材料的长期可用性问题。

    d) B-LTA 级别对包含电子时间戳的要求提供了允许在签名生成后很长时间内对其进行验证的要求。该级别旨在解决验证材料的长期可用性和完整性。

    (ETSI EN 319 142-1 V1.1.1 第 6 节 - PAdES 基线签名)

  • 或者来自 ETSI EN 319 142-2 的附加 PAdES 签名配置文件之一是否也符合条件?

    本文档包含使用 PDF 签名的配置文件,如 ISO 32000-1 [1] 中所述,并基于 CMS 数字签名 [i.6],通过提供超出 ISO 限制的额外限制,实现 PDF 签名的更大互操作性32000-1 [1]。第一个配置文件与 ETSI EN 319 142-1 [4] 无关。

    本文档还包含第二组配置文件,这些配置文件扩展了 PAdES 第 1 部分 [5] 中的配置文件范围,同时保留了一些增强 PAdES 签名互操作性的功能。这些配置文件定义了三个级别的 PAdES 扩展签名,以解决增量要求,以长期保持签名的有效性,以某种方式始终解决低于其级别的所有要求。这些 PAdES 扩展签名提供了比 ETSI EN 319 142-1 [4] 中指定的 PAdES 基线签名更高程度的可选性。

    本文档还定义了用于使用嵌入在 PDF 文件中的 XAdES 签名的任意 XML 文档的第三个配置文件。

    (ETSI EN 319 142-2 V1.1.1 第 1 节 - 范围)

特别是您必须知道您是否还考虑额外的 PAdES 签名配置文件“用于 PDF 中的 CMS 数字签名”或“用于 XAdES 签名签署 PDF 中的 XML 内容”来自 ETSI EN 319 142-2,因为这两个配置文件非常不同与其余的很多。

我假设您不考虑这两个配置文件,因为前者或多或少是旧的 ISO 32000-1 CMS 签名,但大多数签名者无论如何都遵循一些限制,而后者是 XML 签名,它们完全是一种完全不同的动物。

所有其余配置文件的主要区别在于验证相关信息的数量和类型以及添加到文档中的时间戳,以使验证越来越少地依赖于必须在线检索的数据。

检查选项

  1. 手动:您使用 PDF 浏览器(如 iText RUPS 或 PDFBox PDF 调试器)、十六进制查看器、ASN.1 Dump 实用程序、上面列表中适用的基本规范以及基本规范中引用的附加规范,并检查所有标准。

    单个签名需要相当长的时间,但最终您可以了解有关测试签名的所有信息。如果你有使用这些工具和使用规范的经验,或者你真的有很多时间学习,我只推荐这个。

  2. 以编程方式:您采用通用 PDF 库(如果您采用不同于创建签名的库,结果的可信度可能会增加)、安全功能库(例如 BouncyCastle)、基本规范和附加规范,并开始实施一个程序来测试规范中的标准。

    这需要相当长的时间来开发,但随后可以重复使用,例如用于质量保证和回归预防。如果你有使用这些库和使用规范的经验,或者你真的有很多时间学习,我只推荐这个。

  3. 您使用为您评估签名的现有软件或服务,例如ETSI 签名一致性检查器( http://signatures-conformance-checker.etsi.org/pub/index.shtml ),这是一个免费的在线工具,可执行大量检查为了验证 ETSI 高级电子签名的一致性。

    这显然是最快的选择,但您通常无法确定测试执行的可靠性。因此,作为第一个意见是好的,但取决于有多少风险,我想要更多的安全性。

  4. 您可以聘请专家根据所需的配置文件分析和评估您签名的有效性。

    这可能很昂贵,但如果以后由于某些不合规行为而陷入困境,至少您可以求助于某人。

于 2017-08-04T13:58:14.463 回答