[Java] 绕过证书验证调 HTTPS 接口时报 “SSLHandshakeException: DHPublicKey does not comply to algorithm constraints”的解决办法 您所在的位置:网站首页 java接口开发token验证 [Java] 绕过证书验证调 HTTPS 接口时报 “SSLHandshakeException: DHPublicKey does not comply to algorithm constraints”的解决办法

[Java] 绕过证书验证调 HTTPS 接口时报 “SSLHandshakeException: DHPublicKey does not comply to algorithm constraints”的解决办法

2023-03-12 23:23| 来源: 网络整理| 查看: 265

作者: zyl910

一、缘由

最近有在对接一个无证书的HTTPS接口时,总是收到“SSLHandshakeException: DHPublicKey does not comply to algorithm constraints”异常。 通过浏览器、telnet测试了接口地址,确认了TCP层是通的。看来只是HTTPS层没通。 可是试验了好几个网上找到的“绕过证书验证调HTTPS接口”的办法,均也报这个错误,无法调通接口。

后来问了很多人,才终于找到处理办法。便将经验分享给大家。

二、处理办法

打开 JDK 目录下的 jre\lib\security\java.security 文件。例如 C:\Java\jdk1.7.0_45\jre\lib\security\java.security 。

在文件中找到 jdk.certpath.disabledAlgorithms、jdk.tls.disabledAlgorithms 这两个参数。例如——

jdk.certpath.disabledAlgorithms=MD2, MD5, SHA1 jdkCA & usage TLSServer, \ RSA keySize < 1024, DSA keySize < 1024, EC keySize < 224 jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 1024, \ EC keySize < 224, DES40_CBC, RC4_40

然后将这2个参数改为以下值,并保存。

jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024 jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 268

这样便能调用了。

参考文献 Michel I. Gallant Ph.D.《轻松把玩HttpClient之配置ssl,采用绕过证书验证实现https》. http://blog.csdn.net/xiaoxian8023/article/details/49865335


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有