【问题标题】:SSL/TLS version compatibility?SSL/TLS 版本兼容性?
【发布时间】:2016-04-03 04:07:58
【问题描述】:

我有一个运行在 java 1.6 上的客户端通过 web 服务与运行在 java 1.8 上的服务器通信。

1) 我想知道我的客户端是否支持任何 SSL/TLS 版本?

2) 如何确定我的客户端运行在哪个 SSL/TLS 版本上,假设我无权访问远程服务器?

3) 我可以从 Java 客户端应用程序强制使用 TLS/SSL 版本吗?

任何帮助都会很棒!谢谢!

【问题讨论】:

    标签: java json ssl jersey tls1.2


    【解决方案1】:

    SSLSocket 提供了一个方法getSupportedProtocols()

    SSLSocketFactory sf = new SSLSocketFactoryImpl();
    SSLSocket s = (SSLSocket) sf.createSocket();
    System.out.println( Arrays.toString( s.getSupportedProtocols() )) ;
    

    输出: [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2]

    http://download.java.net/jdk7/archive/b123/docs/api/javax/net/ssl/SSLSocket.html#getSupportedProtocols%28%29

    【讨论】:

    • 感谢您的帮助!如果你不介意,我还有一个问题!我正在使用 jersey jackson 库以 json 格式(Java1.6)与远程服务器进行通信。如果我使用 TLSV1.2 而不是当前的 TLSv1,对我的程序有什么影响?
    猜你喜欢
    • 2017-12-19
    • 2019-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-03
    • 2018-08-31
    • 2017-10-08
    • 1970-01-01
    相关资源
    最近更新 更多