首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Itext 7(Java):如何检查启用ltv的文档

Itext 7(Java):如何检查启用ltv的文档
EN

Stack Overflow用户
提问于 2022-02-15 09:33:41
回答 1查看 108关注 0票数 1

我正在通过创建一个验证tool.How来验证一个PDF文档,我能检查这个文档是否启用了LTV吗?另外,如果它的ltv启用了,如何从文档本身获取embeddedOCSPResponse / embeddedCRLresponse。

EN

回答 1

Stack Overflow用户

发布于 2022-02-15 10:53:44

如何检查文档是否启用LTV?

Acrobat显示一个有效的签名是"LTV启用的“,如果在验证签名期间,PDF中嵌入的验证相关信息就足够了,并且不需要下载额外的数据。(对于一些背景,请阅读有关Adobe启用的配置文件的堆栈溢出的其他答案,例如this one。)

但是,验证过程的需求取决于Acrobat安装本身的配置及其运行时环境。因此,您一般不能说某些PDF签名是“启用LTV的”,最多可以在Acrobat的某些特定配置上这样说。

尽管如此,这仍然很困难,因为Acrobat中的验证算法没有被指定。从概念上讲,它们是基于已知的标准,但一方面,这些标准确实使实现者有些松懈,另一方面,Acrobat中也有一些怪癖甚至超出了这一点。

您可以做的是实现一个尽力而为的验证功能,在这个特性中,您还可以检查是否需要外部数据来进行验证,这超出了所讨论的PDF中包含的内容。

如果它的ltv启用了,如何从文档本身获取embeddedOCSPResponse / embeddedCRLresponse。

看看this question中的代码。它展示了如何提取嵌入在签名Adobe吊销数据属性中的CRLs,即将pkcs7.getCRLs()用于从AcroFields.verifySignature检索到的用于所述签名的PdfPKCS7 pkcs7。类似地,您可以使用pkcs7.getOcsp()从该属性检索OCSP响应。不幸的是,这里只保存了最后一个这样的响应,为了获得所有这些响应,您必须稍微修改一下PdfPKCS7

然后看看this answer中关于这个问题的代码。它展示了如何从PDF的DSS字典中检索验证相关信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71124061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档