首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加LTV签名后,某些pdf文件被损坏。

添加LTV签名后,某些pdf文件被损坏。
EN

Stack Overflow用户
提问于 2021-05-21 14:02:36
回答 1查看 156关注 0票数 0

我试图在数字签名的文档中添加LTV。在一些文件中,它工作得很好,但是在一些文件中,它不起作用。我随信附上所有文件以供参考。

我的LTV添加代码链接给出了下面的https://github.com/akr/pdftimestamp

成功输入和输出文件链接如下 inputFile:- com/EYn2S0SqxPBJi1f6qDPGBG0BPUj1uLkqj5aoerJOnIGlYg?e=1fqoZP outputFile:- JeTjnUB4-8ya7lcWyxhhgtvy1OkHQ?e=CYnX1r

输入和输出文件链接为失败的 inputFile:- com/Ecw0TtX8YzlPjZJT6OGJarYBx1yFBm2h1PvOSKPaKK1fuA?e=EC7Xsr com/Ecw0TtX8YzlPjZJT6OGJarYBx1yFBm2h1PvOSKPaKK1fuA?e=EC7Xsr com/ETf9smc-pkFPggRMXi1I1WsBJ6OZOzOj9lmvXPD25tgWiw?e=j24Ipe

请帮助我,为什么在某些文件中的签名被破坏使用相同的代码。

EN

回答 1

Stack Overflow用户

发布于 2021-05-21 16:55:30

原因是,源PDF和相应的第一次修订您的签名和扩展文件是坏的!

源PDF只有一个修订版,其交叉参考表如下所示:

代码语言:javascript
复制
xref
0 118
0000000000 65535 f
0000000018 00000 n
...
0000304213 00000 n
119 64
0000304499 00000 n
...
0000316209 00000 n
185 5
0000316253 00000 n
...
0000316837 00000 n
192 1
0000316969 00000 n
194 8
0000317581 00000 n
...
0000342232 00000 n

( PDF的签署和扩展版本具有类似的第一修订版交叉参考表。)

如您所见,它由多个部分组成,并且有空白(例如,对象118没有条目)。

这是无效的:

对于从未增量更新的文件,交叉引用部分只应包含一个分段,其对象编号从0开始。

(ISO 32000-1和ISO 32000-2,在这两种情况下,第7.5.4节“交叉参考表”)

通常情况下,当遇到使PDF无效的小问题时,Acrobat通常是相当松懈的。

通常情况下,除了在签署修订后使用集成签名和增量更新对文档进行验证时,除外,在这种情况下,Acrobat经常认为此类问题可疑,并且无法验证签名,即使在签名修订后没有增量更新的情况下验证相同的PDF时它也不会抱怨。

根据其信息字典,您的示例PDF已由Aspose.Pdf for Java 16.10.0生成。事实上,众所周知,Aspose组件创建了这样的第一个无效的交叉参考表,请参阅这个答案和Aspose免费支持论坛上的PDF/A-1转换创建无效的XRef表线程。

iText 7还在其早期的7.0.x版本中生成了类似的破碎交叉引用表,参见这个答案

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

https://stackoverflow.com/questions/67638405

复制
相关文章

相似问题

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