使用 HTTPS 和 Tcpdf 签署 PDF?

Signing PDF with HTTPS and Tcpdf?

是否可以retrieve/parseTcpdf$_SERVER['SSL_CLIENT_CERT'] and sign a PDF using setSignature()的信息?

在我们的网络应用程序中,需要即时创建 pdf 并使用客户端证书对其进行签名。

提前致谢!

SSL_CLIENT_CERT 只有 public 密钥,因此您无法通过这种方式签署任何内容。

要使用 X.509 证书签署某些内容,您必须有权访问其私钥。这意味着只有证书的所有者才能使用可以访问私钥的软件签署任何内容。所以服务器不可能用用户的证书进行签名。使用 public 密钥,您将只能加密数据。

不幸的是,由于 Java 小程序今天基本上无法使用,您将很难让它在浏览器中工作。也许 PKI.js 会有所帮助,但我不知道它是否适用于硬件令牌 (PKCS#11)。

最近我的任务是想出类似问题的解决方案,我制作了一个桌面应用程序(仅适用于 Windows,使用 .NET SecureBlackbox library),它位于托盘中,定期轮询文件签名的服务器,获取它们,签名并 returns 签名到服务器。