gpt4 book ai didi

java - 如何解决 java.security.NoSuchProviderException

转载 作者:行者123 更新时间:2023-11-30 08:36:22 24 4
gpt4 key购买 nike

我已经在我的机器上成功安装了加密库,所以安装后我在 jre\lib\security\java.security 中看到了这些行:

security.provider.11=ru.CryptoPro.JCP.JCP
security.provider.12=ru.CryptoPro.Crypto.CryptoProvider
security.provider.13=ru.CryptoPro.reprov.RevCheck
security.provider.14=ru.CryptoPro.ssl.Provider
security.provider.15=ru.CryptoPro.JCSP.JCSP

这些行自动出现在 java.security 文件中。此外,当我导入所需的模块时,我没有收到任何错误:

import ru.CryptoPro.JCP.*;
import ru.CryptoPro.JCP.KeyStore.*;
import ru.CryptoPro.JCP.params.JCPProtectionParameter;
import ru.CryptoPro.JCSP.JCSP;

完全没问题。然而,当我在我的代码中添加一个小命令时:

KeyStore ks = KeyStore.getInstance("REGISTRY", JCSP.PROVIDER_NAME);

我得到一长串错误:

java.security.NoSuchProviderException: no such provider: JCSP at  
sun.security.jca.GetInstance.getService(Unknown Source) at
sun.security.jca.GetInstance.getInstance(Unknown Source) at
java.security.Security.getImpl(Unknown Source) at
java.security.KeyStore.getInstance(Unknown Source) at
com.test.examples.Test.doGet(Test.java:40) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:622) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at
... list goes on

这些错误消息的可能原因是什么?

最佳答案

我在使用不同的安全提供程序 (ERACOM) 时遇到了类似的问题,并通过显式提供程序注册解决了这个问题:

Security.addProvider(new ERACOMProvider());

尝试以相同的方式注册您的提供者,只需创建实例并使用 java.security.Security#addProvider 方法注册它。希望对您有所帮助。

关于java - 如何解决 java.security.NoSuchProviderException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37816864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com