这就是我正在尝试做的事情。我有一个带有一些证书的硬件令牌,我正在编写一个 Java 应用程序来尝试访问这些证书。我在 Windows 32 位机器上使用了 jre6 中的 SunPKCS11 库。这是我如何访问证书的一个小示例:
String configName = "pkcs.cnf"
String PIN = "123456";
Provider p = new sun.security.pkcs11.SunPKCS11(configName);
Security.addProvider(p);
KeyStore keyStore = KeyStore.getInstance("PKCS11");
char[] pin = PIN.toCharArray();
keyStore.load(null, pin);
它效果很好,我能够获得证书和一切。现在我正在尝试在 64 位机器上执行相同的操作。但是我尝试使用 64 位 jre6 库,但缺少 SunPKCS11 jar 文件(located in {java.home}/lib/ext
。因此,我无法创建 SunPKCS11 对象。我问你的问题是,我现在该怎么办?如何使用 64 位 java 库访问令牌上的证书?有人为这样的任务编写了 64 位包装器吗?
PKCS11 支持未实现,因为无法测试该库(无论如何)。
不过,这种情况在 Java 8 中发生了变化。自 J8b49 起,包含了 64 位版本。
看:https://bugs.java.com/bugdatabase/view_bug?bug_id=6880559
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)