如何从智能卡添加电子签名到PDF文件?

时间:2012-06-12 14:24:55

标签: pdf pdf-generation itext smartcard cac

我有一个需要实现PDF文件电子签名的Java EE应用程序。用户需要能够单击基于数据库中的数据生成PDF文件的链接,并在其浏览器中查看PDF。然后,该用户需要能够使用存储在其智能卡上的私钥(其插入他们正在使用的PC上的智能卡读卡器)来“签署”该文档。用户使用的是Windows 7和JRE 1.6

我希望将iText用于PDF生成,但目前还不清楚我会在客户端使用什么解决方案从智能卡中提取信息,然后将这些信息用于签署PDF并显示PDF已签名(显示用户的签名或更新文档以表明其已签名)。

以前是否有人这样做并有解决方案?

2 个答案:

答案 0 :(得分:1)

  1. 无法像您一样从智能卡中读取证书 需要私钥。
  2. 您不应该(并且通常不能)从智能卡读取私钥 (这就是使用智能卡的原因)
  3. 要访问智能卡,您需要连接其中一个本机卡 API就像普通的PC / SC,PKCS#11或CSP。
  4. 要从浏览器执行此操作,您需要ActiveX或Applet。
  5. 从头开始构建非常雄心勃勃
  6. 一些重要信息是: - 什么读者 - 什么是智能卡 - 什么浏览器 - 什么操作系统 选择或开发解决方案

    我们有一个使用applet技术构建的商业产品,完全您所要求的内容(获取PDF,智能卡界面,签署哈希,以PDF支持的任何形式插入签名,发布签名的PDF)。如果您有兴趣,我会提供联系方式。

答案 1 :(得分:0)

使用PDF Studio。我的CAC阅读器config.cfg文件有问题,但在删除“slot = 1”行后,它就像一个冠军。我的文件现在看起来像这样:

name = SunPKCS11
library = /usr/lib64/libcackey.so

如需进一步信息,请访问: https://www.qoppa.com/pdfstudio/