我正在测试一个应用程序,该应用程序在启用SunPKCS11-Solaris时性能很差。该应用程序部署在运行在Solaris上的WebLogic中。我发现通过 sun.security.pkcs11.enable-solaris = false 禁用SunPKCS11解决了我们的问题,但我不确定该交换机的其他影响是什么。有人知道什么是 sun.security.pkcs11.enable-solaris 切换吗?
让我感到困惑的另一件事是我们在我们的证书中使用了PKCS11但是在使用上面的交换机禁用SunPKCS-Solaris后它们工作正常,所以我想知道VM是否还有其他提供程序。
答案 0 :(得分:2)
Farzad -
Java可以使用任意数量的提供程序来完成相同的任务,并且具有高度可配置性。您可以禁用该提供程序中的整个提供程序或仅某些算法。我相信它们按优先顺序列在配置文件中。
根据您尝试执行的任务,Solaris上的ucrypto提供程序应该更快(但它不如PKCS#11提供程序那么完整,因此可能没有您需要的算法等) )。
根据您所使用的JDK,OS和硬件平台,PKCS#11提供程序可能比JavaNative更快。在其他情况下,JavaNative会更快。请注意,Java的配置文件必须适用于多个Solaris OS版本,例如Solaris 10u11,Solaris 11.2和Solaris 11.3,以及加密功能各不相同的多个硬件平台。由于它是一个通用文件,因此并不总能完全针对您的特定情况进行调整。
如果您正在尝试使用Solaris上安装的硬件密钥库,例如nCipher或SCA6000,则可能需要通过PKCS#11。
希望有所帮助,
瓦莱丽