JAVA智能卡客户端身份验证-慢速”;“初始化密钥库”;

JAVA智能卡客户端身份验证-慢速”;“初始化密钥库”;,java,performance,smartcard,pcsc,Java,Performance,Smartcard,Pcsc,我正在开发一个需要通过智能卡进行客户端身份验证的应用程序 客户端使用智能卡执行相互SSL身份验证 存在一个效率问题:客户端身份验证速度慢。在向web服务发送任何internet流量之前,会有大约6秒的延迟 这是日志: 2013-05-20 16:54:38,986 DEBUG (HttpConnection.java:692) - Open connection to ***** keyStore is : NONE keyStore type is : pkcs11 keyStore prov

我正在开发一个需要通过智能卡进行客户端身份验证的应用程序

客户端使用智能卡执行相互SSL身份验证

存在一个效率问题:客户端身份验证速度慢。在向web服务发送任何internet流量之前,会有大约6秒的延迟

这是日志:

2013-05-20 16:54:38,986 DEBUG (HttpConnection.java:692) - Open connection to *****
keyStore is : NONE
keyStore type is : pkcs11
keyStore provider is : SunPKCS11-SmartCard
init keystore

==== HERE IS A DELAY OF ABOUT 6 SECONDS!!!!

init keymanager of type SunX509
客户端正在Linux中运行

我正在尝试各种变通方法和解决方案来避免这么晚,但我认为这是由于智能卡的内部初始化,我无法避免

你觉得怎么样?我能以某种方式避免这么晚吗


谢谢

通常您受到智能卡和PKCS#11库(以及可能的底层)的限制。您可以尝试查看卡和读卡器是否配置为使用可用的最大速度。此外,您可以测试是否有任何方法可以缓存卡上的信息,或限制从智能卡检索的数据量

通常,您正在等待读取卡目录数据(例如ISO 7816-15兼容结构)。解析数据后(在现代CPU上需要很短的时间),证书通常从卡上下载。这一部分可能会占用大部分时间,因此,如果有任何方法可以在CPU上缓存数据,或者只下载所需的证书,那么您可能会获得大量时间


但是,这取决于所使用的库,如果以及如何做到这一点,那么就我所知,通过PKCS#11提供程序配置这一点是不可能的。问问你的卖主

你是对的!智能卡供应商已经发布了一个新的Linux共享库,现在访问时间约为3秒。谢谢你的回答!很高兴能帮上忙:)