2014-12-02 134 views

回答

3

它可能取決於一些事情。例如:

1)您使用的是什麼版本的java,並且您將Netty用作客戶端還是服務器?

Java 1.7在服務器模式下啓用TLS 1.2,但在客戶端模式下默認禁用它。請參閱https://blogs.oracle.com/java-platform-group/entry/java_8_will_use_tls以供參考。

2)您是使用Java還是OpenSSL JNI提供程序?

這java的提供商將有典型的Java配置,但OpenSSL的提供商將取決於您在鏈接的OpenSSL版本。

3)什麼版本的Netty您使用的是?

我對3.9x分支不太熟悉,所以你將不得不調查它們是否與4.x和5.0一致。對於常見用例(Java 8,Netty Server,Java ssl提供程序,netty 4.x或5.x),如果您配置的SSLEngine支持它們,Netty將支持TLS 1.0,1.1,1.2的定義here在你的管道中。

3

Netty在內部使用Java SSL引擎,如下所示,它在處理程序鏈中。

pipeline.addLast("ssl", new SslHandler(sslEngine)); 

因此,它支持的TLS版本取決於您使用的JDK版本。 例如,如果您使用JDK 1.6,則它支持TLSv1,其中JDK 1.7支持TLSv1,TLSv1.1,TLSv1.2。

Regards, Ravindra。