Could not generate DH keypair 解决方案

之前项目中使用HttpClient访问别人的接口,出现:

Could not generate DH keypair 解决方案

网上大概说是Java 7 以及早期版本是只支持 1024 位的 DH Parma的。

查阅文档发现JDK7的131版本就已经fix了,在本地讲JDK更换到高级的版本后就没有再出现上述的问题了,

该方法可行。

不过更换JDK版本的方法不是最好的解决方案,升级JDK版本会对项目有影响,只能做为一个备选方案。

通过https://www.ssllabs.com/ssltest/analyze.html?d=访问地址,发现对方服务器DHE最低是支持2048,目前项目用到的JDK

版本DHE算法不支持,所以会出现上述错误。

Could not generate DH keypair 解决方案

既然这种算法不支持,只能查找对方服务器支持且项目JDK版本支持的加密算法,通过SSLConnectionSocketFactory配置,

试验可行。

Could not generate DH keypair 解决方案