PdfBox:仅使用移动客户端上生成的签名对 PDF 进行签名 [无私钥和证书]



我们在客户端上存储公钥、私钥和 CA 证书。我们无法将其传递给服务器进行签名。我们正在客户端上创建一个签名,并希望将其发送到服务器进行签名嵌入。目的是使客户端尽可能轻巧,也可以使用相同的服务器代码,我们可以用于所有客户端。那么这可能吗?

PDFBox 支持外部签名容器创建。有关用法的详细信息,请参阅pdfbox-exampleCreateSignatureBaseCreateSignatureCreateVisibleSignatureCreateVisibleSignature 。特别是检查isExternalSigning的注释,并isLateExternalSigning属性定义和用法。

因此,服务器可以

  • 可以准备PDF进行签名,
  • 提取要签名的字节,以及
  • 将它们或其哈希转发给客户端。

然后客户端可以

  • 对给定数据进行签名,然后
  • 将生成的签名容器推送到服务器。

最终服务器可以

  • 将此签名容器注入到先前准备的 PDF 中。

最新更新