powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Remote host closed connection during handshake
6 сообщений из 6, страница 1 из 1
Remote host closed connection during handshake
    #34839567
mozheyko_d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем.
Нужно забрать некоторые данные с web-сервера по https.
Сертификат сервера действителен и подписан VeriSign.
Через броузер всё открывается замечательно.
Код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SocketFactory factory = SSLSocketFactory.getDefault(); 
 
      // Get Socket from factory 
      Socket socket = factory.createSocket(HOST_NAME,  443 );
       
      BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
      
      BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
      
      out.write("GET / HTTP/1.0\n\n");
      
      out.flush();
 
      String line;
      
      StringBuffer sb = new StringBuffer();
      
      while((line = in.readLine()) != null) {
      
          sb.append(line);
          
      }
      
      out.close();
      
      in.close();
      
      System.out.println(sb.toString());        

Вывод, включая отладку SSL

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
keyStore is : 
keyStore type is : jks
keyStore provider is : 
init keystore
init keymanager of type SunX509
trustStore is: E:\Program Files\Java\jdk\jre\lib\security\cacerts
trustStore type is : jks
trustStore provider is : 
init truststore
 
// Много доверренных сертификатов
// adding as trusted cert:
// тра-ля-ля
// пропущено
 
trigger seeding of SecureRandom
done seeding SecureRandom
%% No cached client session
*** ClientHello, TLSv1
RandomCookie:  GMT:  1191149504  bytes = {  125 ,  192 ,  105 ,  92 ,  59 ,  79 ,  12 ,  147 ,  85 ,  88 ,  197 ,  17 ,  7 ,  192 ,  165 ,  60 ,  32 ,  121 ,  50 ,  232 ,  253 ,  161 ,  183 ,  24 ,  98 ,  54 ,  98 ,  196  }
Session ID:  {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods:  {  0  }
***
main, WRITE: TLSv1 Handshake, length =  73 
main, WRITE: SSLv2 client hello message, length =  98 
main, received EOFException: error
main, handling exception: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
main, SEND TLSv1 ALERT:  fatal, description = handshake_failure
main, WRITE: TLSv1 Alert, length =  2 
main, called closeSocket()
Exception in thread "main" javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 808 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java: 1096 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java: 623 )
        at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java: 59 )
        at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java: 202 )
        at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java: 272 )
        at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java: 276 )
        at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java: 122 )
        at java.io.OutputStreamWriter.flush(OutputStreamWriter.java: 212 )
        at java.io.BufferedWriter.flush(BufferedWriter.java: 236 )
        at ssltest.Main.main(Main.java: 32 )
Caused by: java.io.EOFException: SSL peer shut down incorrectly
        at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java: 333 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 789 )
        ...  10  more
Java Result:  1 

Jakarta HttpClient валится с той же ошибкой.

JDK 1.6.0_02 Windows XP Pro

Куда бы копнуть?
...
Рейтинг: 0 / 0
Remote host closed connection during handshake
    #34842064
Фотография Java Programmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mozheyko_dПривет всем.
Нужно забрать некоторые данные с web-сервера по https.
Сертификат сервера действителен и подписан VeriSign.
Через броузер всё открывается замечательно.
Код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SocketFactory factory = SSLSocketFactory.getDefault(); 
 
      // Get Socket from factory 
      Socket socket = factory.createSocket(HOST_NAME,  443 );
       
      BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
      
      BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
      
      out.write("GET / HTTP/1.0\n\n");
      
      out.flush();
 
      String line;
      
      StringBuffer sb = new StringBuffer();
      
      while((line = in.readLine()) != null) {
      
          sb.append(line);
          
      }
      
      out.close();
      
      in.close();
      
      System.out.println(sb.toString());        

Вывод, включая отладку SSL

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
keyStore is : 
keyStore type is : jks
keyStore provider is : 
init keystore
init keymanager of type SunX509
trustStore is: E:\Program Files\Java\jdk\jre\lib\security\cacerts
trustStore type is : jks
trustStore provider is : 
init truststore
 
// Много доверренных сертификатов
// adding as trusted cert:
// тра-ля-ля
// пропущено
 
trigger seeding of SecureRandom
done seeding SecureRandom
%% No cached client session
*** ClientHello, TLSv1
RandomCookie:  GMT:  1191149504  bytes = {  125 ,  192 ,  105 ,  92 ,  59 ,  79 ,  12 ,  147 ,  85 ,  88 ,  197 ,  17 ,  7 ,  192 ,  165 ,  60 ,  32 ,  121 ,  50 ,  232 ,  253 ,  161 ,  183 ,  24 ,  98 ,  54 ,  98 ,  196  }
Session ID:  {}
Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA, SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
Compression Methods:  {  0  }
***
main, WRITE: TLSv1 Handshake, length =  73 
main, WRITE: SSLv2 client hello message, length =  98 
main, received EOFException: error
main, handling exception: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
main, SEND TLSv1 ALERT:  fatal, description = handshake_failure
main, WRITE: TLSv1 Alert, length =  2 
main, called closeSocket()
Exception in thread "main" javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 808 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java: 1096 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java: 623 )
        at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java: 59 )
        at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java: 202 )
        at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java: 272 )
        at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java: 276 )
        at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java: 122 )
        at java.io.OutputStreamWriter.flush(OutputStreamWriter.java: 212 )
        at java.io.BufferedWriter.flush(BufferedWriter.java: 236 )
        at ssltest.Main.main(Main.java: 32 )
Caused by: java.io.EOFException: SSL peer shut down incorrectly
        at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java: 333 )
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java: 789 )
        ...  10  more
Java Result:  1 

Jakarta HttpClient валится с той же ошибкой.

JDK 1.6.0_02 Windows XP Pro

Куда бы копнуть?

http://jakarta.apache.org/httpcomponents/httpclient-3.x/sslguide.html

А в HttpClient регистрировали протокол?
...
Рейтинг: 0 / 0
Remote host closed connection during handshake
    #34842182
mozheyko_d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Java Programmer
...

http://jakarta.apache.org/httpcomponents/httpclient-3.x/sslguide.html

А в HttpClient регистрировали протокол?

Да, конечно, и ссылку эту прочитал первым делом. Другие сайты, даже с самоподписанными сертификатами работают.
...
Рейтинг: 0 / 0
Remote host closed connection during handshake
    #34852039
Фотография Java Programmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mozheyko_d Java Programmer
...

http://jakarta.apache.org/httpcomponents/httpclient-3.x/sslguide.html

А в HttpClient регистрировали протокол?

Да, конечно, и ссылку эту прочитал первым делом. Другие сайты, даже с самоподписанными сертификатами работают.

Хм интересно а может вы просто секурити провайдера какого не подгрузили??
...
Рейтинг: 0 / 0
Remote host closed connection during handshake
    #34852046
Фотография Java Programmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Java Programmer mozheyko_d Java Programmer
...

http://jakarta.apache.org/httpcomponents/httpclient-3.x/sslguide.html

А в HttpClient регистрировали протокол?

Да, конечно, и ссылку эту прочитал первым делом. Другие сайты, даже с самоподписанными сертификатами работают.

Хм интересно а может вы просто секурити провайдера какого не подгрузили??


А еще было бы не дурно посмотреть, что там сервер говорит по этому поводу )
...
Рейтинг: 0 / 0
Remote host closed connection during handshake
    #34852427
mozheyko_d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Java Programmer

Хм интересно а может вы просто секурити провайдера какого не подгрузили??



Приведённый код открывает сайты с доверенными сертификатами.

Если его слегка модифицировать, как пишут вот тут , то начинает открывать и сайты с самоподписанными сертификатами.

А что ещё можно подгружать?
Тыкните тынцом?

Java Programmer
А еще было бы не дурно посмотреть, что там сервер говорит по этому поводу )


Если бы это был мой сервер, то конечно.
А так есть только информация, что на той стороне IBM Lotus Notes.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Remote host closed connection during handshake
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]