使用用户的签名在服务器文档上签名PDF

这是我想要做的:

  1. 用户创build文档(html)
  2. 编辑 – >在服务器上保存PDF
  3. 询问用户是否要签署文件
    • (是)这里是问题
    • (不)没问题
  4. ???? (不重要)

所以现在我面对的问题是如何做到这一点(是)在第3步。如果签名是在服务器上没有问题,我有一些HTML-> PHP-> PDF类可以签署数字签名,但签名必须在服务器上作为一个文件。 问题是,我怎样才能直接在服务器上。 用户select是,签名被读取(从他的计算机上的他的读者)并且发送到服务器并且完成签名。 在这里,我相信我不能没有像Java这样的东西。 在我看来,PHP和JavaScript当然不足以实现这个动作。

有没有人遇到过这样的问题? 也许一些准备使用图书馆?

PS不太确定标签是否正确,但不知道要放哪个。

如果带有私钥的证书在客户端上,则需要客户端模块进行签名。 JavaScript将是不够的,因为它将无法访问客户端上的密钥。 虽然您可以尝试从JavaScript调用CAPICOM ,但这是部分的(不支持PKCS#11),Windows特定的和过时的解决scheme。 更好的select是用Java编写的浏览器小程序将执行签名(见下文)。

我们的SecureBlackbox产品有一个分布式签名附件,完全符合您的描述(目前支持PHP,Java,ASP.NET和编译模块)。 你可以看到这个scheme是如何工作的:

在这里输入图像描述

在我们的产品中,我们提供了预先构build的浏览器模块–Java Applet,ActiveX控件和Flash小程序,但在大多数情况下,Java小程序已经足够,因为它可以访问Windows上的PKCS#11存储和Windows证书存储。 对于不支持Java小程序的浏览器,SecureBlackbox允许通过Java Web Start使用小程序作为外部“应用程序”。

您可能需要重新创build这个完整的scheme,但是计算服务器上的哈希并将其传递给客户端进行签名,然后将签名embedded到文档中是一个很大的窍门。

将完整的文档传输到客户端可能会更容易,并且有一个Java applet将使用我们的SecureBlackbox的iText或Java版本签署该文档,然后将文档上传回服务器。