有人可以帮我解码SSL相关的堆栈跟踪吗?

时间:2013-03-07 03:29:20

标签: apache ssl openssl

我有一个带有seld-signed证书的小型HTTPServer。当我使用Chrome发送GET请求时,我会按预期获得安全性异常。然后在握手期间我得到以下错误:

如何解读?版本32的含义是什么? SSL = 3且TLS = 2?

05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591): Error fetching file from server., Stack Trace : javax.net.ssl.SSLException: Error occured in delegated task:javax.net.ssl.SSLHandshakeException: PROTOCOL VERSION. Unsupported client version 32
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.HandshakeProtocol.fatalAlert(HandshakeProtocol.java:319)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.HandshakeProtocol.wrap(HandshakeProtocol.java:271)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.SSLEngineImpl.wrap(SSLEngineImpl.java:695)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:464)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler.wrapNonAppData(SslHandler.java:1018)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1137)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler.decode(SslHandler.java:814)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:422)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:84)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.processSelectedKeys(AbstractNioWorker.java:471)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:332)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:35)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at java.lang.Thread.run(Thread.java:1019)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591): Caused by: org.apache.harmony.xnet.provider.jsse.AlertException: javax.net.ssl.SSLHandshakeException: PROTOCOL VERSION. Unsupported client version 32
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.HandshakeProtocol.fatalAlert(HandshakeProtocol.java:308)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.ServerHandshakeImpl.processClientHello(ServerHandshakeImpl.java:356)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.ServerHandshakeImpl$1.run(ServerHandshakeImpl.java:124)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.ServerHandshakeImpl$1.run(ServerHandshakeImpl.java:122)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at java.security.AccessController.doPrivileged(AccessController.java:182)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.apache.harmony.xnet.provider.jsse.DelegatedTask.run(DelegatedTask.java:52)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler$2.run(SslHandler.java:1258)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.ImmediateExecutor.execute(ImmediateExecutor.java:31)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler.runDelegatedTasks(SslHandler.java:1255)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     at org.jboss.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1140)
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     ... 12 more
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591): Caused by: javax.net.ssl.SSLHandshakeException: PROTOCOL VERSION. Unsupported client version 32
05-07 10:16:12.510: W/HttpDefaultRequestHandler(26591):     ... 22 more

1 个答案:

答案 0 :(得分:0)

版本32:

3 =>协议的主要版本号
2 =>协议的次要版本号(对于SSLv3,这似乎等于0,对于TLSv1似乎等于1,而 2尚未定义,这就是您有错误的原因)

参考文献:

  1. 草稿 - The SSL Protocol Version 3.0
  2. SourceCode - ProtocolVersion.java
  3. SourceCode - ServerHandshakeImpl.java
  4. SourceCode测试 - ProtocolVersionTest.java