我不明白 Java 如何选择最喜欢的密码来使用Server Hello
.
我有一个 Tomcat 5 配置,我在 SSL 连接器中设置了ciphers=TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, etc
服务器 ie Java 选择作为客户端支持TLS_RSA_WITH_AES_128_CBC_SHA
的Server Hello
首选。但这不是最安全的,也不是http://docs.huihoo.com/java/javase/7/technotes/guides/security/SunProviders.html#SunJSSEProvider列出的首选编码TLS_RSA_WITH_AES_256_CBC_SHA
。
然后我认为是 server.xml 属性中的顺序产生了影响,我将另一个密码放在首位 ( TLS_DHE_RSA_WITH_AES_256_CBC_SHA
),我在其中看到Client Hello
它是受支持的。但是这个也没有被选中,又TLS_RSA_WITH_AES_128_CBC_SHA
被选中了。
那么 JSSE 是如何选择偏好密码的呢?这是在某处记录的吗?我无法弄清楚这里发生了什么。