2016-11-14 257 views
0

我已经尝试了一些东西,并搜查了比较少的职位,但无法找到一个合适的回答到以下问题。抛出:NoSuchAlgorithmException:TLSv1.2工作未知协议

同时使SSL上下文即

ctx = SSLContext.getInstance("TLSv1.2"); 

我得到一个例外,因为

java.security.NoSuchAlgorithmException: Unknown protocol: TLSv1.2 

我试图用另一种协议是

ctx = SSLContext.getInstance("TLSv1"); 

但后来我得到一个错误为

javax.net.ssl.SSLHandshakeException: algorithm not supported for certificate 

请帮我到哪里我得到的东西是错误的。

+0

你使用哪个版本的JRE?只有JDK 7+最初支持TLS 1.2。 JDK 6从Update 121支持它。我不认为JDK 5支持它。我正在谈论Oracle JDK,不知道其他实现 – siarheib

+0

是的,你是对的..我使用Java 1.4 ..有没有什么办法可以在Java 4中使用TLS? –

回答

1

您必须使用Java的一些古老的版本不支持TLS 1.2。

升级。

+0

是的,我使用的是Java 1.4,但是当我做ctx = SSLContext.getInstance(“TLSv1”);它创建..though SSLHandshake异常的情况下是有其表示不支持的算法证书 –

+0

那么或者切换到新的Java版本,或者你必须创建/获得支持的TLSv1 – smsnheck

+0

好感谢您的帮助新的证书:) –