www.java.567com_有效证书上的JDK 11 SSL错误(在以前的版本中有效)

以下代码在JDK 11中引发错误:

HttpURLConnection con = (HttpURLConnection) new URL("https://sis.redsys.es/sis/realizarPago").openConnection();

con.setRequestMethod("GET");

con.getResponseCode();

错误是:

javax.net.ssl.SSLHandshakeException: extension (10) should not be presented in server_hello

at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:128)

at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117)

at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:312)

at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:268)

at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:259)

at java.base/sun.security.ssl.SSLExtensions.(SSLExtensions.java:71)

at java.base/sun.security.ssl.ServerHello$ServerHelloMessage.(ServerHello.java:169)

at java.base/sun.security.ssl.ServerHello$ServerHelloConsumer.consume(ServerHello.java:860)

at java.base/sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:390)

at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:445)

at java.base/sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:422)

at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:178)

at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:164)

at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:877)

at java.base/sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:810)

at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:383)

at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567)

它可以在任何以前的JDK中使用(我已经在7、8、9和10中进行了测试)。

该证书似乎是有效的,因为它已被浏览器或我在互联网上找到的大多数SSL测试所识别。

我尝试禁用主机名验证,禁用cacerts,将DigiCert添加到cacerts文件中没有任何运气。

似乎是openJDK中的错误。在版本26、27和28(候选发布)中进行了测试。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值