获得"收到致命警报:handshake_failure"在特定的机器

时间:2015-03-09 13:27:05

标签: java ssl proxy ssl-certificate

我在不同的机器上运行相同的jar文件。在一台机器上它工作正常,意味着在击中不同的URL时能够始终获得正确的响应。 但是在另一台机器上,一开始所有的网址都工作正常,经过一段时间说6个小时后,就会开始为少数网址投放“handshake_failure”(这些网址在开始时都正常工作)。

据我所知,由于SSL证书问题或协议问题(客户端和服务器没有通用协议),可能会发生“handshake_failure”。

但是,

  • 在应用程序启动期间,相同的URL正在运行。所以它不会 由于SSL证书或协议问题。
  • 相同的网址在应用程序启动期间正在运行,因此它不会 由于来自服务器的URL阻塞,如白名单等,
  • 两台机器也使用相同的jar文件,所以它不会到期 编码问题。
  • 一旦我们启动应用程序,应用程序正常工作(重启 jar文件)。

总之,我怀疑机器之间的任何配置都可能存在差异?

如果有人可以帮助我,那就太好了。

例外:

javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure 
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174) [na:1.6] 
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136) [na:1.6] 
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1720) [na:1.6] 
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:954) [na:1.6] 
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1138) [na:1.6] 
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:632) [na:1.6] 
at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59) [na:1.6] 
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) [na:1.6.0_26] 
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123) [na:1.6.0_26] 
at org.owasp.webscarab.model.Request.writeDirect(Request.java:234) [webscarab-selfcontained-20070504-1631.jar:na] 
at org.owasp.webscarab.model.Request.writeDirect(Request.java:215) [webscarab-selfcontained-20070504-1631.jar:na] 
at org.owasp.webscarab.httpclient.URLFetcher.fetchResponse(URLFetcher.java:267) [siteprofiler.jar:na] 
at org.owasp.webscarab.plugin.proxy.ConnectionHandler.run(ConnectionHandler.java:346) [siteprofiler.jar:na] 
at java.lang.Thread.run(Thread.java:662) [na:1.6.0_26]

0 个答案:

没有答案