java 如何在jdk 8中默认启用TLSv1.3?

qrjkbowd  于 2023-01-11  发布在  Java
关注(0)|答案(1)|浏览(3249)

如何在java spring应用中配置TLSv1.3?Jdk8支持TLS 1.3版本并且具有向后兼容性。有人能帮忙吗?

1cosmwyk

1cosmwyk1#

根据JDK 8u261的发行说明,Java 8现在具有向后兼容性以支持TLS 1.3。
默认SSLContext以及服务器上的TLS 1.3已禁用。要在服务器上启用TLS 1.3协议,请使用jdk.tls.server.protocols系统属性。
要在客户端端点启用TLS 1.3协议,请执行以下步骤:
--〉使用以下方法SSLSocket.setEnabledProtocols指定现有连接支持的协议
sslSocket.setEnabledProtocols(new String[] { "TLSv1.3", "TLSv1.2"});
--〉现在创建基于TLS 1.3的SSL上下文:
SSLContext ctx = SSLContext.getInstance("TLSv1.3");
--〉指定支持的协议,方法如下:SSLParameters.setProtocols(Object param);
sslParameters.setProtocols(new String[] {"TLSv1.3", "TLSv1.2"});
--〉使用jdk.tls.client.protocols系统属性指定客户端SSLSockets支持的协议:
java -Djdk.tls.client.protocols="TLSv1.3,TLSv1.2" MyApplication
--〉为通过HttpsURLConnection或方法URL.openStream获得的连接指定支持的协议,该方法带有https.protocols系统属性:
java -Dhttps.protocols="TLSv1.3,TLSv1.2" MyApplication
让我知道如果它不工作!

相关问题