项目场景:
接入银联项目,使用到国密加签验签,
当前项目使用jdk7环境,银行方指定jar包bcprov-jdk15on-1.62
问题描述:
错误提示:java.lang.SecurityException: JCE cannot authenticate the provider BCjava.lang.SecurityException: JCE cannot authenticate the provider BC
原因分析:
应该是bcprov-jdk15on-1.62有使用jdk8特性,用jdk7时才会加载jar包时签名验证不通过解决方案:
方案一:升级至jdk8
方案二:jdk不变,bcprov-jdk15on-1.62包替换成 bcprov-jdk15to18-1.66
我这边采用方案二解决,公司是不会让随便升级的哭哭
总结:
关于jar包兼容性冲突问题,搜索引擎上30分钟无法解决问题,去官网!!
百度一下午,各种配置文件一顿爆改,啥用没有