zoukankan      html  css  js  c++  java
  • java异常

    背景

    工作中和其他第三方进行通讯的时候,通常需要对通讯中的重要信息进行加密,或者使用证书来保证安全,在使用bcprov-jdk16-146包提供的加解密方法时,报了
    Java.security.NoSuchProviderException: no such provider: BC
    这个错误,从错误来看是java security中没有找到BC的安全模式。

    解决方法

    有两种解决方法:
    1.直接修改jre环境下的security配置文件
    找到JAVA_HOME/jre/lib/security/java.security文件,在里面可以看到有几行是以“security.provider.”开头的,在它的最后序号之上加一行,如我的最后的序号是10,加入以下这行:
    security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider
    这样就可以了(前提是工程自己将bcprov-jdk16-146导入了依赖包使用)
    2.在代码中修改
    可以在使用BC方法前,在代码中手动将BC方法添加进环境信息内,例如:

    Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
    

    直接使用这行代码可以临时将BC方法添加进环境信息,使线程接下来的使用不会报错,比较适用于不倾向改动系统环境的情况。

    参考:

    https://blog.csdn.net/roy_70/article/details/70842322

  • 相关阅读:
    map初始化
    map
    sort排序
    455分发饼干
    392判断子序列
    vector遍历
    vector删除数据
    VC-进程间通信(InterProcess Communication,IPC)
    Oracle 11g 安装和登录(windows)
    控制台输出宽字符wchar_t的中文显示问题
  • 原文地址:https://www.cnblogs.com/sunylat/p/14439765.html
Copyright © 2011-2022 走看看