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

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


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

Link:https://www.jianshu.com/p/63b096f9f395
当时我处理这个问题的时候,在网上查阅了很多的资料,大致的解决方法都是三种:

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

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

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

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 31
    评论
nutch javax.net.ssl.sslexception : could not generate dh keypair 是一个SSL异常,意味着Nutch无法生成DH密钥对。 TLS(Transport Layer Security)是一种加密协议,用于保护在网络上进行的通信。在TLS握手期间,服务器和客户端会协商加密算法和生成共享密钥对。 DH(Diffie-Hellman)密钥交换是TLS协议中常用的一种加密算法。它允许服务器和客户端在不直接传递密钥的情况下,通过交换公钥来生成共享密钥。 nutch javax.net.ssl.sslexception : could not generate dh keypair 错误意味着Nutch无法生成DH密钥对。这可能是由于以下几个原因导致的: 1. Java安全性策略限制:Java默认情况下,限制了密钥长度。您可以尝试通过修改Java安全性策略文件来解决此问题。 2. 加密算法不受支持:您使用的Java版本可能不支持所需的加密算法。您可以尝试升级到较新的Java版本。 3. 随机数生成器问题:DH密钥对需要使用随机数生成器生成随机数。但是,如果随机数生成器不可用或出现故障,就会出现此错误。您可以尝试重新配置随机数生成器或更换可靠的实现。 4. SSL证书问题:此错误可能是由于证书问题引起的。您可以检查证书是否过期或不匹配,并尝试更新或更换证书。 针对这个错误,您可以逐一排查上述情况,并尝试相应的解决方法来解决该问题。如果问题仍然存在,您可能需要进一步的调查和故障排除来确定准确的原因并解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值