java.security.NoSuchProviderException: no such provider: BC 问题
在使用SHA256生成签名的时候,报错java.security.NoSuchProviderException: no such provider: BC,这个问题之前我是遇到过的,解决方法是在jre/lib/security目录下,使用vim打开“java.security”配置上security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider
当时配置好后,问题是解决的,但是这次生成签名的时候,我是自己写的main函数进行测试的,是没问题的。当我写好接口前台调用的时候,使用SHA256生成签名的地方就报错了,还是这个no such provider: BC的错误。当时很纳闷,因为我在main函数中是没问题的。

解决方法:
在当前计算签名的类中加入静态块
static{
try{
Security.addProvider(new BouncyCastleProvider());
}catch(Exception e){
e.printStackTrace();
}
}
如:

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)