签署表格提交(PDF)与数字签名

时间:2013-02-01 00:17:13

标签: web-services digital-signature digital-certificate client-certificates

TL; DR

  • 有在线表格
  • 提交PDF时生成
  • 问题:如何使用浏览器中的客户端证书对PDF进行数字签名?

背景

在欧盟和美国(以及我的国家),有法律规定数字签名(由政府和政府批准的CA颁发的客户证书)具有法律约束力。

目前,我有一个网络表单 - 相当于纸质表单 - 用户提交个人信息。我使用该数据生成PDF,他们通过邮件下载,打印,签名并邮寄给我们。至少可以说不是最佳的。

我的大多数目标用户已经拥有这些客户端证书(网上银行和税务),因此我希望能够使用这些证书的用户签署PDF,从而使其合法招标并节省他们到邮局的旅行

问题

如何使用客户端证书对PDF进行签名,考虑到必须使用私钥完成,并且客户端仅将公钥发送到服务器。 显然这必须在客户端完成,但不是Javascript,因为它无法访问证书(Java,Flash,ActiveX do)。 我已经找到了一堆专有解决方案,但不是免费软件/开源。

webapp是用PHP(Symfony2)和Javascript编写的,在使用nginx和php-fpm的Ubuntu服务器上运行。

关于如何在不重新发明轮子的情况下解决这个问题的任何建议?有没有人知道这样做的免费/开放图书馆/小程序?


一些链接:

Digitally sign a PDF on the server (2011年,asp.net,一个答案解释基本流程)

Web application to sign PDF documents with digital certificates released by CAs (2011年,类似问题)

0 个答案:

没有答案