Lar*_*ars 5 java ssl smartcard
我们想在我们的应用程序中构建一个模块,允许用户使用智能卡或USB令牌签署pdf/word文档.我们的应用程序是用Java编写的,所以使用java的解决方案会很好但是如果用另一种语言更容易,我不介意使用它,只要它适用于Windows.
是否有任何库允许我从智能卡读取和写入证书.我想避免低水平并将所有这些字节流发送到卡.但如果这是这样做的唯一方法,我会很感激,如果somone可以给我一个很好的教程/示例的链接.
我在一些教程中也看到,人们正在将智能卡中的证书导入到他们的本地密钥库中.他们为什么这样做?我不能直接使用卡上的证书吗?
在此先感谢您的帮助.
智能卡上的证书通常通过 PKCS#11 API(跨平台方式)访问,在 Windows 上,可以通过 Windows 证书存储访问它们。正如评论中提到的,Java 本身就支持这两种方式,尽管 Java 提供程序中存在一些限制/错误。
然而,访问证书本身并不足以签署 PDF 或 Word 文档 - 这两种格式都将签名作为其不可或缺的一部分,您需要编写代码来签署这些格式的文档,或者使用现有的库。对于 PDF,它可以是 iText(注意许可证!)或我们的 SecureBlackbox。两者都支持 PKCS#11。对于 Office 文档,我不知道 SecureBlackbox 的替代品。我们的库支持 Java 提供的 PKCS11 和 Windows CertStore 接口以及我们自己的 JNI 模块。
关于“将证书导入密钥库”——这样做是为了枚举和搜索证书。这些密钥库是“虚拟的”,因为它们映射智能卡证书。此外,完成此类映射后,私钥仍保留在硬件设备上并且不会被复制(这在大多数情况下在技术上是不可能的)。因此,无论如何,需要私钥的加密操作都会在设备上执行。
| 归档时间: |
|
| 查看次数: |
1080 次 |
| 最近记录: |