“无法在目标url上生成DH密钥对”错误

什么可能导致Could not generate DH key pair on the destination URL错误Could not generate DH key pair on the destination URL

EDI合作伙伴公司试图连接到我们的HTTPS服务器并遇到上述消息。

或者系统使用商业防火墙和反向代理(基于Apache),具有很高的安全等级(qualsys ssltest中的“A”)。 我怀疑我们的安全级别高于我们的EDI合作伙伴公司的能力,但他们声称与其他HTTPS合作伙伴有工作联系,他们说他们支持“2048位”。

不幸的是我们不能降低我们系统的安全级别来进行testing。 是否有标准的诊断工具,我们可以推荐我们的EDI合作伙伴,以便他们可以分析连接失败?


更新:我使用了Qualsys的SSL诊断工具,发现对于Java(Sun JRE)6客户端来说,没有可能的连接,因为

Java 6u45 - Client does not support DH parameters > 1024 bits

对于其他的A级服务器,Java 6客户端可以连接,似乎他们只是不使用DH:

Java 6u45 - TLS 1.0 - TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)

因此,如果我把这些部分放在一起,我假设我们的服务器坚持DH密钥交换(Java 6客户端不支持),而其他服务器能够协商不同的密码,以便Java 6客户端可以连接。 不过,我不是这方面的专家,所以请让我知道,如果我正在追逐一个红鲱鱼:)

从我们的服务器中删除所有的DHE密码终于解决了连接问题。