【发布时间】:2018-01-16 20:09:18
【问题描述】:
给定带有我没有私钥的证书的数字签名 PDF,是否可以更改文档,使用我的证书对其进行签名并将以前的签名保留为“历史”,即旧签名应该不验证文档的完整性,而是用户应该能够看到它曾经使用此其他证书签名?
【问题讨论】:
-
如果您打算删除旧签名(使用其他人的私钥创建),更改它,然后添加一个新签名(使用你自己的私钥),那么是的,这是可能的。如果您打算保留旧签名,并添加第二个(所谓的批准)签名(使用您自己的私钥),那么这取决于性质第一个签名(如果该签名“锁定”文档,则不可能)。但是,更改文档几乎总是会使原始签名无效。
-
如果我的解释更改文档几乎总是会使原始签名无效 不清楚。请阅读@mkl 撰写的Which operations are allowed on a digitally signed PDF?。
-
@mkl:我的cmets可以重新整理一下作为答案,但是既然原始资料是你的,我建议你这样做,这样你就可以获得声望分了。
-
原始签名 A 锁定了文档,因此我无法更改文档并继续让 A 签名验证文档的完整性。我想要的是某种历史记录,我可以指定文档曾经用签名 A 签名,但现在用我的签名 B 签名。我意识到在这种情况下,用户无法验证文档是在我更改之前与 A 签约。由于我无法找到有关此类功能的任何信息,因此很遗憾,我怀疑 PDF 根本不支持此功能。
-
至少我们的一个客户用来解决此问题的一种不太优雅的解决方法是将签名的 PDF 包装在 PDF 组合中,并添加带有附加信息的封面。 PDF 作品集就像一个 ZIP 文件,可以在 Adobe Reader(和其他一些 PDF 查看器)中打开。该 ZIP 文件可以包含所有类型的其他文档,包括签名保持不变的未更改签名 PDF。
标签: pdf cryptography certificate itext digital-certificate