当前位置: 首页 > 知识库问答 >
问题:

iText加密数字签名PDF

年烈
2023-03-14

我使用PdfWriter setEncryption对PDF文档进行了加密/解密。一切正常,解密也正常。

当我为数字签名的PDF文档做同样的事情时,我的数字信息与消息一起损坏(SigDict/Contents非法数据)

是否可以在不影响数字签名信息的情况下加密PDF?

共有1个答案

山阳辉
2023-03-14

加密涉及重写完整的流。如果您的PDF经过数字签名,这将破坏数字签名,因此不可能(一般情况下,不限于iText)加密经过数字签名的PDF(除非破坏签名是可以接受的)。

您需要在签名前或签名时对文档进行加密。不要在签名后加密PDF。

 类似资料:
  • 我这里需要帮助,有人能帮我吗?

  • 使用itext v5对文档进行数字签名时。5.11 PDF/A-2b文档被破坏——这意味着它们不再作为PDF/A文档有效。违反以下规则:https://github.com/veraPDF/veraPDF-validation-profiles/wiki/PDFA-Parts-2-and-3-rules#rule-643-1 在上面的链接中,它指定摘要无效,因此我也给你一个代码段,在使用iText

  • 我正在尝试向现有的数字签名pdf(认证签名)中添加一个空签名字段。 我有一个工作流,其中许多用户将签署该文档(批准签名),该文档创建时带有“n”个空签名字段,每个用户一个,我们的应用程序首先应用一个不可见的认证签名,然后每个用户可以在各自的字段中签署该文档,但由于工作流中意外的更改,其他用户可能希望签名,因此,我们希望添加相应的空签名字段,然后应用签名。 我试图将空字段(带有单元格事件的表)添加到

  • web应用安全的黄金法则是,永远不要相信来自不可信来源的数据。有时通过不可信的媒介来传递数据会非常方便。密码签名后的值可以通过不受信任的途径传递,这样是安全的,因为任何篡改都会检测的到。 Django提供了用于签名的底层API,以及用于设置和读取被签名cookie的上层API,它们是web应用中最常使用的签名工具之一。 你可能会发现,签名对于以下事情非常有用: 生成用于“重置我的账户”的URL,并

  • 我正在用C#开发一个执行数字签名验证的webserver,以确保pdf文件没有被修改。我使用了iText和iTextSharp。 和我的C#验证码: 在VerifySignature(name)行中;抛出NullReferenceException! 有趣的是,如果我使用C#代码执行签名,我就可以在java中验证它,因为我添加了这些指令:BouncyCastleProvider provider=

  • 在我的应用程序中,我可以选择签署pdf文件。pdf签名有两个选项,一个是创建新签名,另一个是我需要签署空签名字段。我做了创建新签名字段的部分,它工作正常,现在我在签名空签名字段时遇到了问题。这是我的密码 这段代码添加了一个新的签名,我需要做什么更改来签名空签名字段名“GoodSignature”