1、记一次错误
1、题目出现的场景
1、 通过java代码调用第三方接口,出现这个ssl认证,握手失败。我的jdk版本是1.8_131版本出现的- 错误提示: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
复制代码 2、我通过curl命令在服务器上调用是可以的,能完整的返回数据。以及浏览器访问都可以能拿到返回的数据。
2、常见的题目
1、利用AES加解密
- java.security.InvalidKeyException: Illegal key size or default parameters
复制代码- java.lang.SecurityException: JCE cannot authenticate the provider BC
复制代码 2、安全性机制导致的访问https会报错
- Received fatal alert: handshake_failure; nested exception is javax.net.ssl.SSLHandshakeException:
- Received fatal alert: handshake_failure,accessUrl
复制代码 这是由于某些国家的进口管制限定,JDK默认的加解密有一定的限定。
3、解决思路:
好比默认不允许 256 位密钥的 AES 加解密,解决方法就下载官方JCE无限定强度加密战略文件,覆盖即可。
官网提供的下载版本:
JDK6的下载地址
JDK7的下载地址
JDK8的下载地址
4、覆盖JCE
1、在上数网站下载对应的版本jce文件
2、进入JDK安装目录下的(改成自己的安装目录)
E:\Program Files\Java\jdk1.8.0_131\jre\lib\security
5、题目解决
如上述题目解决不掉,可以看一下这个毗连
参考毗连
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |