解决 javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair

解决 javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair

 

在本人工作的过程中,遇到了形形色色的问题。当时琢磨了好久才琢磨出这样的总结,贴出来供大家参考参考。以下观点仅代表本人在工作过程中的观点,望大家能够共同讨论,查漏补缺。

当时我处理这个问题的时候,在网上查阅了很多的资料,大致的解决方法都是三种:

1、升级你使用的Java版本到 java 8 
2、调整https使用的dhparam 指定1024位 
3、修改服务器使用1024位dhparam

对于这三种解决方法来说,我都尝试过。

首先第一种方法的话,因为Java8版本是颠覆性的,一旦换了之后代码就会发生不同程度的报错问题。因此个人不推荐。

其次就是第二种方法以及第三种方法,操作起来比较复杂,网上也有挺多的解释,所以我也不在这里详说了。不说的原因一是复杂,而是其解决的方法对于我而言没有起到作用,就算改了还是会报出原来的异常。

因此,在进行反复的查阅资料,去了各种网站看了相关的解决方法之后,我终于将这个问题解决的。现在就将我解决的方法大致总结一下:

解决这个异常的重点就在于下载两个jar包:

bcprov-ext-jdk15on-1.52

bcprov-jdk15on-1.52

传送门1:http://download.csdn.net/detail/a2279860a/9754944 
传送门2:http://download.csdn.net/download/a2279860a/10106133

这是CSDN的下载,需要1积分进行下载。大家也可以留个邮箱在这篇帖子的评论区,我看到之后可以发送到你们的邮箱。 
(补充说明:最近翻出这篇帖子才发现原本的资源竟然已经被系统自动提到了15分的资源分,我的天….找了很久也没有找到降低资源分的方法,找客服也不回复….无奈只能重新上传一个了,就是 传送门2 那个地址,由于只能最低设置2分资源分,所以各位大哥就将就下吧,如果以后出现了下载分有提升上去了,麻烦好心人知会我一声…我好重新上传啊啊啊啊。以上两个地址都可以下载。土豪请随意….)

然后下载完毕之后就需要将这两个jar包放到

$JAVA_HOME/jre/lib/ext

放在指定的目录下之后,接下来就需要对一个文件进行编辑

这个文件的位置在

$JAVA_HOME/jre/lib/security/

对这个路径下的java.security文件进行修改 
找到security.provider.9,然后在这句话下面加上:

security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider
  • 1

加上了之后,重启应用就可以运行了。

当然,网上还有另外一种说法就是在security.provider.2下面加上那句语句,但是对我而言不起作用,如果在security.provider.9下面加上该语句不起作用的话,大家也可以尝试一下在security.provider.2下面添加上该语句

以上是基于jre的目录进行配置的,因此项目需要使用jre如下:

202706_26EW_2244961.png

转载于:https://my.oschina.net/weiweiblog/blog/1595308

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值