Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java 1.6中TLS SSL与jersey库的兼容性是什么?_Java_Ssl_Jersey_Tls1.2 - Fatal编程技术网

java 1.6中TLS SSL与jersey库的兼容性是什么?

java 1.6中TLS SSL与jersey库的兼容性是什么?,java,ssl,jersey,tls1.2,Java,Ssl,Jersey,Tls1.2,我开发了一个客户端,使用java 1.6中的jersey jackson库与远程服务器通信(我有义务使用这个版本)到目前为止一切都很好 我被告知远程服务器将开始使用更新的TLS版本进行通信。(现在是TLS V1.0,将使用的版本是TLS V1.2) 这将对我的应用程序产生什么影响(考虑到操作系统可以处理TLS V1.2) 备注:我使用一个简单的WebResource来检索答案 您的问题的答案取决于平台。这取决于客户端JVM附带的JSSE JSSE是Java安全套接字扩展。它是JVM的可插拔组件,

我开发了一个客户端,使用java 1.6中的jersey jackson库与远程服务器通信(我有义务使用这个版本)到目前为止一切都很好

我被告知远程服务器将开始使用更新的TLS版本进行通信。(现在是TLS V1.0,将使用的版本是TLS V1.2)

这将对我的应用程序产生什么影响(考虑到操作系统可以处理TLS V1.2)


备注:我使用一个简单的WebResource来检索答案

您的问题的答案取决于平台。这取决于客户端JVM附带的JSSE

JSSE是Java安全套接字扩展。它是JVM的可插拔组件,为您的应用程序提供SSL/TLS支持。我知道Sun 1.6 JVM for Windows附带的JSSE不支持TLS v1.2。IBM 1.6JVM的JSSE支持v1.2

请注意这对应用程序的影响:这也取决于。如果服务器支持的唯一协议是1.2,那么客户机的JVM/JSSE中也必须支持该协议。如果服务器将协商到1.1,那么您的1.6JVM/JSSE很可能支持这一点

顺便说一句,这与你的应用程序使用的Jersey/Jackson版本没有任何关系。这实际上取决于运行应用程序的JVM


如果您的客户端应用程序将在1.7或1.8 JVM上运行,您将从JVM免费获得TLS v1.2支持,而无需任何代码更改。此外,较新的虚拟机默认情况下会停用一些不安全的密码套件,这些套件在1.6 JVM中的大多数默认情况下都是启用的

这真的很有帮助!!非常感谢。我的应用程序正在IBM的1.6JVM上运行。我检查以验证TLS版本:SSLSocketFactory sf=new SSLSocketFactoryImpl();sslsockets=(SSLSocket)sf.createSocket();System.out.println(Arrays.toString(s.getSupportedProtocols());输出:[SSLv2Hello,SSLv3,TLSv1,TLSv1.1,TLSv1.2]我可以假设运行在IBM JVM 1.6上的客户端应用程序与运行在具有TLS V1.2的JVM 1.8上的服务器通信不会有问题吗?TLS V1.2是TLS V1.2,无论实现如何。我也认为它们会相互作用,但你需要进行测试。你应该没事的。