Java SSL Handshake Issue - PullRequest
       16

Java SSL Handshake Issue

0 голосов
/ 07 марта 2012

Кроме того, я работаю над тем, чтобы это SSL-соединение работало, но если бы кто-то мог сказать мне, почему мой апплет вызывает ошибку «неизвестный сертификат оповещения sslv3», это было бы здорово. Я нашел эту ошибку, запустив «openssl s_server» и (пытаясь)подключиться к нему с помощью моего Java-клиента. Я включу исходный текст программы. Я слышал, что это может быть отсутствие хранилища доверенных сертификатов, но я создал его, и это не помогло.

public class first extends JApplet  {

    PrintWriter toServer = null;
    BufferedReader fromServer = null;

    public void init() {

        System.setProperty("javax.net.ssl.keyStore", "javakeys");
        System.setProperty("javax.net.ssl.keyStorePassword", "javakeys");
        System.setProperty("javax.net.ssl.trustStore", "truststore.ts"); 
        System.setProperty("javax.net.ssl.trustStorePassword", "javakeys"); 

try {

        SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
        SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket("localhost", 4000);

        toServer = new PrintWriter(sslsocket.getOutputStream(), true);

        toServer.println("Flystar\n\r");

        InputStreamReader isr = new InputStreamReader(sslsocket.getInputStream());
        fromServer = new BufferedReader(isr, 1);

        JOptionPane.showMessageDialog( null, fromServer );


    } catch (Exception exception) {
            exception.printStackTrace();
    }

//      toServer.println("Flystar".getBytes());

    }

    public void paint(Graphics g) {

        g.setColor( Color.red );
        g.drawString("Welcome to Java!!", 50, 60 );
    }


}

Спасибо, -Roland

1 Ответ

0 голосов
/ 07 марта 2012

«Неизвестный сертификат оповещения sslv3» означает, что сертификат сервера находится в формате, который ваш Java-клиент не понимает.

...