【发布时间】:2019-10-07 12:13:02
【问题描述】:
我有多个包含至少一个 PKI 签名的 PDF。
哪些步骤对于完全验证给定的签名对此 PDF 有效是必不可少的?
我目前收集了以下步骤:
//TODO Build and verify certificate chain (trust)
//TODO Check revocation list (...)
//TODO Check self-signage
//TODO Define trust anchors (set root CAs)
我需要用 Java 解决这个问题。
语言方面的帮助也将受到高度赞赏。
【问题讨论】:
-
“对完全验证至关重要”。还有更多...您需要 1. 找出已签名的字节。 2. 对它们进行散列并与散列进行比较 3. 检查 PDF 权限(如果有), 4. 检查自签名以来 PDF 发生的更改,查看它们是否被允许(基于更改的内容,以及是否允许。
-
您还必须知道要遵循哪种验证模型。例如。 Adobe Reader 目前使用的模型不需要大多数实体的存在证明(数字时间戳),而 ETSI 验证模型则需要更多。
-
您可能对eSignature DSS 感兴趣,它特别实现了相当完整的PAdES 签名创建和验证。主要缺失的部分是@Ryan 列表中的第 3 项和第 4 项。
-
谢谢大家的回复。目前假设,使用中的算法将仅与 PCKS#7 分离。我将看看 eSignature DSS,乍一看似乎是一个不错的工具