Java 为什么加载个人密钥库需要这么多时间?
我使用下面的代码从java中的个人密钥库获取证书,但是 load(null,null)需要14秒来执行,我不知道为什么以及如何减少它。我可以用证书签署pdf文档,但整个过程需要1分钟,我希望是1秒钟Java 为什么加载个人密钥库需要这么多时间?,java,security,keystore,Java,Security,Keystore,我使用下面的代码从java中的个人密钥库获取证书,但是 load(null,null)需要14秒来执行,我不知道为什么以及如何减少它。我可以用证书签署pdf文档,但整个过程需要1分钟,我希望是1秒钟 SunMSCAPI SunProvider=new SunMSCAPI(); Security.addProvider(SunProvider); KeyStore ksp = KeyStore.getInstance("Windows-MY"); ksp.load(null,null); java
SunMSCAPI SunProvider=new SunMSCAPI();
Security.addProvider(SunProvider);
KeyStore ksp = KeyStore.getInstance("Windows-MY");
ksp.load(null,null);
java.security.cert.Certificate[] chain = ksp.getCertificateChain(certName);
我相当肯定这是最安全的。Cyrpto需要生成强随机数。其中一种技术是长时间运行一个算法,最终产生一个不可预测的数字。解决办法可能是:
- 找到一种“提前”完成的方法,并且它只发生一次
- 查找具有不同更快实现的加密实现/JVM