3 ways to instruct Java application to use TLSv1.3 protocol only:
  Way #1: Use SSLContext to set TLS protocol version:
  SSLEngine
 
SSLContext context = SSLContext.getInstance("TLSv1.3");
SSLEngine sslEngine = context.createSSLEngine("www.example.com", 443);
  SSLSocket
 
SSLContext context = SSLContext.getInstance("TLSv1.3");
SSLSocketFactory socketFactory = context.getSocketFactory();
SSLSocket sslSocket = (SSLSocket)socketFactory.createSocket("www.example.com", 443);
 
  Way #2: Use the SSLSocket/SSLEngine.setEnabledProtocols()
 
if(sslEngine!=null){
    sslEngine.setEnabledProtocols(new String[] {"TLSv1.3"});
} else {
    sslSocket.setEnabledProtocols(new String[] {"TLSv1.3"});
}
  
  Way #3: Use the SSLParameters.setProtocols()
 
 
sslParameters.setProtocols(new String[] {"TLSv1.3"});
if(sslEngine!=null){
    sslEngine.setSSLParameters(sslParameters);
} else {
    sslSocket.setSSLParameters(sslParameters);
}
 
  |