带有 TSA 时间戳的数字签名在 TSA 响应 PDF 框中添加链中的证书给出错误“space 不足以写入签名”

Digital Signature With TSA Timestamping adding certificates in chain in TSA response PDF Box giving error “not enough space to write signature”

我已经通过 TSA 创建了带有时间戳的数字签名。在此我添加了证书以在 TSA 响应中构建链以构建链这工作正常并且还创建了签名,但是在使用 PDF 框 API for Java 将此签名嵌入 pdf 时它给出错误而不是 够space写签名。 PDF 框中是否有任何配置可以处理签名大小?

如有任何帮助,我们将不胜感激。

我假设您使用的是 CreateEmbeddedTimeStamp.java 示例中的嵌入式时间戳,因此您使用的是现有签名的 space。那个是固定的,所以你需要让它足够大:

signatureOptions.setPreferredSignatureSize(...);

使用高于默认值 (0x2500) 的数字。 SignatureOptions 对象可以在 document.addSignature() 调用中传递。