java - PDFBox使用adbe.x509.rsa_sha1时在签名字典中指定cert

标签 java pdf pdfbox

当在 pdfbox 中使用 adbe.x509.rsa_sha1 作为子过滤器时,规范(32000-1:2008,第 468 页)要求设置“Cert”签名字典字段。 PDSignature 或 COSDictionary 中没有方法可以设置此“Cert”字段,该字段应包含“代表 x.509 证书链的字节字符串数组 (...)”。

有没有办法指定这个“证书”字段?或者目前还不可能?

最佳答案

正如 @TimanHausherr 提到的,目前无法直接在 PDFBox (2.0.4) 中设置证书值。仍然可以使用以下方法手动包含“证书”条目:

byte[] cert = ...;
PDSignature signature = new PDSignature();
COSString certCosString = new COSString(cert);
signature.getCOSObject().setItem("Cert", certCosString);

现在,当 PDFBox 使用“签名”签署文档时,将包含证书字段。

关于java - PDFBox使用adbe.x509.rsa_sha1时在签名字典中指定cert,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43354337/

相关文章:

java 。将多个单词字符串分成两个单词字符串(每个空格)

php - 如何通过修改错误处理来跳过带有 PHP 库 TCPDF 和 FPDI 的损坏文件?

java - COSStream 已关闭且无法读取。也许其随附的 PDDocument 已关闭?

java - PDFBox U+00A0 在此字体编码中不可用

java - 从 Servlet 中的 java 类获取属性(在 JSP 中看不到转发的请求)

java - 从java中的枚举列表中删除一个元素

java - Perl 如何与 ajax 表单交互

r - 显示未存储在 R shiny 应用程序内的 www 文件夹中的 PDF 文件

pdf - 了解 PDF 代码中的数字

PDF文件被另一个修订修改?