首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该使用什么算法来避免错误"ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY"?

我应该使用什么算法来避免错误"ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY"?
EN

Security用户
提问于 2015-09-17 05:10:03
回答 2查看 3.6K关注 0票数 1

在将证书应用到Tomcat服务器后,我通过向GoDaddy提交CSR获得了CA证书。当我使用Chrome或Mozilla访问我的网站时,我会遇到这样的错误:

ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY

我为CSR生成过程调用了以下命令:

代码语言:javascript
复制
 keytool -genkey -alias mydomain -keyalg RSA -keystore mydomain.jks -keysize 2048 -sigalg SHA256withRSA
 keytool -certreq -alias mydomain -sigalg SHA256withRSA -keystore mydomain.jks -file mydomain.csr

我怎么才能解决这个问题?

EN

回答 2

Security用户

发布于 2015-09-17 05:28:31

此警告是由于用于短暂的Diffie Hellman密钥交换的组的大小太小所致。如此小以至于对称键可以被学者提取出来。

证书不影响用于DHE的组的大小。web服务器的配置是这样的。

目前的建议是,以比特为单位的组大小应该与证书的RSA密钥一样大,通常是2048位,而且无论如何不小于1024位。另外,您必须生成您自己的组,而不是使用预定义的组,否则1024位是不够的。

确保您的服务器不支持有意弱的“导出”密码-这意味着512位。

使用Qualys工具检查服务器配置。

Java文档

票数 2
EN

Security用户

发布于 2015-09-17 06:28:56

最简单的解决方法是将Java版本升级到Java 8,因为Java 7已经在2015年4月达到了它的EOL (寿命结束)。

另外,如果它不能工作,并且您有JDK1.8,建议设置系统属性-Djdk.tls.ephemeralDHKeySize=2048,以确保握手中的密钥大小更强。请参阅Java 8文档

以下是HTTPS连接器中Tomcat server.xml中可能需要的强密码列表:

ciphers=“TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA”

编辑2

请检查您的JAVA_HOME路径变量,它可能指向较旧版本的java,即小于JDK1.7

我所面临的问题与我的JAVA_HOME指向jdk1.6 1.6时面临的问题相同,所以修正JAVA_HOME解决了这个问题

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/100445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档