我对iText中的LTV感到困惑。我已经阅读了论文,讨论但有一点仍然不清楚。 LTV和文档时间戳之间有什么联系?或者更准确地说,如何在不使用时间戳的情况下启用pdf LTV? 有一点我肯定知道,要创建一个支持LTV的文档,我不需要时间戳。我尝试在acrobat中使用数字证书签署文档,打开时说文档已启用LTV,我没有使用任何时间戳。
答案 0 :(得分:10)
我最后一次看到Adobe并没有在技术上公开定义“启用LTV”的意思。
Adobe的PDF传播者Leonard Rosenthol在今年1月的iText邮件列表中给出了这个定义:
启用LTV意味着验证文件所需的所有信息(减去根证书)都包含在。
中
已被澄清为
PDF已正确签名并包含所有必要的证书,每个证书的有效CRL或OSCP响应[根证书除外]
但是作为
他引用了一位Adobe工程师的话来指出“每个证书的有效CRL或OSCP响应”还包括CRL和OCSP上的签名,而不仅仅是签名证书。
当所有宣传品都嵌入签名而不是DSS时,可以启用LTV(我只修复了一个没有正确处理此案例的错误)。在这种情况下,可能没有DSS。但是,这是非常不寻常的,因为CRL和OCSP上的签名不包含Adobe扩展的嵌入式转换信息。然而,这是一个遥远的可能性。
另一方面,使用iText添加LTV信息是尝试将此类信息添加到缺少所需信息的签名文档中。
缺少Adobe的具体技术定义,但这基本上是一次尽力而为的尝试,而不是人们可以明确声称已经做过的事情。特别证明,添加这些信息的DSS部分规范的解释是不一致的。
也许布鲁诺可以报告当前的努力状况。
LTV与文档时间戳之间的联系是什么?
文档时间戳和LTV信息最初是在相同的PAdES规范部分ETSI TS 102 778-4中定义的,并且它们之间已经定义了一些乒乓:
因此,有时假设每次添加DSS时,都必须添加文档时间戳。这反过来可能会引起一些鸡蛋问题,因为时间戳也与某些证书有关,可能需要额外的DSS信息。
伦纳德也在1月份回复了关于“支持LTV的DSS”的主题
不需要时间戳(常规或文档级别)。
因此,回到你的问题,
或者更准确地说,如何在不使用时间戳的情况下启用pdf LTV?
添加所有涉及的证书的验证信息,但根证书除外,还包括验证信息中使用的证书。无论何时加盖时间戳,都要添加时间戳的验证信息。