JDK/JRE 版本是否单独确定 SSLSocket.getSupportedProtocols() 的结果?
Does the JDK/JRE version alone determine the result of SSLSocket.getSupportedProtocols()?
JDK/JRE 版本是否单独确定 SSLSocket.getSupportedProtocols() 的结果?或者是否有任何其他 configuration/startup 参数会影响此结果?
例如,如果应用程序 运行 JDK 1.7 update 21,此方法将 return [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2] .但是,如果 JDK 1.8 上的应用程序 运行 不支持 SSLv3,那么此方法是否 return 仅 [TLSv1,TLSv1.1,TLSv1.2]?
而且我假设这个问题的答案也适用于默认启用列表。例如,在 JDK 1.7 update 21 中,SSLSocket.getEnabledProtocols() 默认 returns [SSLv3, TLSv1]。因此,对于 JDK 1.8,默认启用列表是否为 [TLSv1.1,TLSv1.2]?
没有
在 Java 7 之前,您只能 jdk.certpath.disabledAlgorithms
禁用算法。
从 Java 7 的更高版本开始,您还有 jdk.tls.disabledAlgorithms
。两者的区别好像是jdk.tls.disabledAlgorithms
也可以限制TLS/SSL版本。
jdk.tls.legacyAlgorithms
也存在。只有在拒绝所有其他允许的协议后,才会使用此列表中的协议。
在 Java 8u51 中,这些(在 Java 的 lib/security/java.security
文件中找到)的默认值是:
jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024
jdk.tls.disabledAlgorithms=SSLv3, DH keySize < 768
jdk.tls.legacyAlgorithms= \
K_NULL, C_NULL, M_NULL, \
DHE_DSS_EXPORT, DHE_RSA_EXPORT, DH_anon_EXPORT, DH_DSS_EXPORT, \
DH_RSA_EXPORT, RSA_EXPORT, \
DH_anon, ECDH_anon, \
RC4_128, RC4_40, DES_CBC, DES40_CBC
JDK/JRE 版本是否单独确定 SSLSocket.getSupportedProtocols() 的结果?或者是否有任何其他 configuration/startup 参数会影响此结果?
例如,如果应用程序 运行 JDK 1.7 update 21,此方法将 return [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2] .但是,如果 JDK 1.8 上的应用程序 运行 不支持 SSLv3,那么此方法是否 return 仅 [TLSv1,TLSv1.1,TLSv1.2]?
而且我假设这个问题的答案也适用于默认启用列表。例如,在 JDK 1.7 update 21 中,SSLSocket.getEnabledProtocols() 默认 returns [SSLv3, TLSv1]。因此,对于 JDK 1.8,默认启用列表是否为 [TLSv1.1,TLSv1.2]?
没有
在 Java 7 之前,您只能 jdk.certpath.disabledAlgorithms
禁用算法。
从 Java 7 的更高版本开始,您还有 jdk.tls.disabledAlgorithms
。两者的区别好像是jdk.tls.disabledAlgorithms
也可以限制TLS/SSL版本。
jdk.tls.legacyAlgorithms
也存在。只有在拒绝所有其他允许的协议后,才会使用此列表中的协议。
在 Java 8u51 中,这些(在 Java 的 lib/security/java.security
文件中找到)的默认值是:
jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024
jdk.tls.disabledAlgorithms=SSLv3, DH keySize < 768
jdk.tls.legacyAlgorithms= \
K_NULL, C_NULL, M_NULL, \
DHE_DSS_EXPORT, DHE_RSA_EXPORT, DH_anon_EXPORT, DH_DSS_EXPORT, \
DH_RSA_EXPORT, RSA_EXPORT, \
DH_anon, ECDH_anon, \
RC4_128, RC4_40, DES_CBC, DES40_CBC