微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 PAdES 第 4 部分的情况下,带有文档锁定的签名无效

如何解决在 PAdES 第 4 部分的情况下,带有文档锁定的签名无效

我遇到了一个问题,我在 PAdES 第 4 部分的情况下设置了文档锁定功能。执行文档时间戳签名后签名无效。

文档锁定功能代码片段如下:

PdfSigFieldLock pdfSigFieldLock = new PdfSigFieldLock();
pdfSigFieldLock.SetDocumentPermissions(PdfSigFieldLock.LockPermissions.NO_CHANGES_ALLOWED);
string[] fieldToLock = new string[] { signingRequest.FieldName };
pdfSigFieldLock.SetFieldLock(PdfSigFieldLock.LockAction.ALL,fieldToLock);
pdfSigFieldLock.GetPdfObject().Remove(PdfName.Fields);
pdfSigner.SetFieldLockDict(pdfSigFieldLock);

文件附在此处: https://ascertia0-my.sharepoint.com/:f:/g/personal/muddassir_awan_ascertia_com/EpCcxOWGtLdIlR7MYO9LXf0BNtrUim3aCFdCUNbeRK8rIw?e=xAGnMU

问候, 穆达西尔·阿万

解决方法

这是 Adob​​e Acrobat 签名验证例程中的一个已知错误; Adobe PDF 架构师兼首席科学家 Leonard Rosenthol 承诺在未来版本中解决这个问题

请参阅 this comment 以了解 Apache PDFBox 问题 PDFBOX-3017:

Maruan Sahyoun 添加了评论 - 02/Nov/20 20:14

收到 Leonard Rosenthol 的更新:

想回复您,我们已经记录了一个关于此的错误,并将在未来版本中解决该问题。

感谢您提醒我们注意这一点。

进一步

我:据我所知 - 在签名后添加 LTV 应该是可能的,但目前被 Acrobat 错误标记是正确的吗?

伦纳德:正确

一分钟问题:您添加了一个扩展条目:

/Extensions<</ESIC<</BaseVersion/1.7/ExtensionLevel 5>>>>

虽然这确实可能是对使用 PAdES 语法的验证器的一个很好的提示,但它严格来说是无效的在您的 PDF 中声明自己为 PDF-1.6,请参阅this eSig DSS issue 中的讨论。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。