如果在JDK 1.7 JVM中禁用ECC,将使用什么加密?

Ven*_*kat 5 java encryption jvm

我们一直被这个Java bug所困扰

http://bugs.sun.com/view_bug.do?bug_id=7016078

我们应用的解决方案是将此参数-Dcom.sun.net.ssl.enableECC = false添加到JVM.

现在的问题是,如果通过上述参数禁用ECC,将使用什么加密?显然,我相信它会回归到RSA.如果是这种情况,在谈判期间将使用ECC,在那个地方使用什么而不是ECC?

art*_*tol 6

您可以通过使用-Djava.net.debug=sslClientHello 部分下的来查看这一点

普通的:

密码套件:[TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA、TLS_ECDH_RSA_WITH_AES_128_CBC_SHA、TLS_DHE_RSA_WITH_AES _128_CBC_SHA、TLS_DHE_DSS_WITH_AES_128_CBC_SHA、TLS_ECDHE_ECDSA_WITH_RC4_128_SHA、TLS_ECDHE_RSA_WITH_RC4_128_SHA、SSL_RSA_WITH_RC4_128_SHA、TLS_ECDH_ECDSA_WITH_RC4_128_SHA、TLS_ECDH_RSA_WITH_RC 4_128_SHA、TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA、SSL_RSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA、SSL_DHE_RSA_WITH_ 3DES_EDE_CBC_SHA、SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA、SSL_RSA_WITH_RC4_128_MD5、TLS_EMPTY_RENEGOTIATION_INFO_SCSV]

-Dcom.sun.net.ssl.enableECC=false

密码套件:[TLS_RSA_WITH_AES_128_CBC_SHA、TLS_DHE_RSA_WITH_AES_128_CBC_SHA、TLS_DHE_DSS_WITH_AES_128_CBC_SHA、SSL_RSA_WITH_RC4_128_SHA、SSL_RSA_WITH_3DES_EDE_CBC_SHA、SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA、SSL_DHE_DS S_WITH_3DES_EDE_CBC_SHA、SSL_RSA_WITH_RC4_128_MD5、TLS_EMPTY_RENEGOTIATION_INFO_SCSV]

(这是在 Windows 上 - 我在 Red Hat 上的 OpenJDK 上注意到,这没有什么区别)