使用Java 9+的智能卡提供程序中的可用插槽

问题描述 投票:4回答:1

在Java 8中,我们可以做这样的事情:

PKCS11 p11 = PKCS11.getInstance("/usr/local/lib/libsiecap11.so", "C_GetFunctionList", null, false); 
long[] slots = p11.C_GetSlotList(true); 

但是在Java 9中不推荐使用PKCS11,现在我找不到任何替代方法。

java smartcard java-9
1个回答
2
投票

从Java-9 Javadoc

Java应用程序可以使用现有的JCA和JCE API进行访问通过PKCS#11提供程序提供SunPKCS11令牌。

供参考:我比较了Java-8 doc和Java-9 doc,在PKCS#11方面似乎并没有太大区别

编辑:

[我在JDK 1.8上运行了Op的代码,当我更改为JDK 11时,我能够执行它,因为缺少某些Libs,所以出现了以下错误。

缺少Libs:

 sun.security.pkcs11.wrapper.PKCS11;
 sun.security.pkcs11.wrapper.PKCS11Exception;

我请求您在github上打开一个事件,以解决此问题。

© www.soinside.com 2019 - 2024. All rights reserved.