Java SSL 握手问题

标签 java ssl applet rsa

我正在进一步努力让这个 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 );
    }


}

谢谢, ——罗兰

最佳答案

“sslv3 alert certificate unknown”表示服务器证书的格式您的 Java 客户端无法理解。

关于Java SSL 握手问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9598287/

相关文章:

asp.net-mvc - BotDetect CAPTCHA 在 https 中不起作用

security - 生产服务器上的 TLS 证书

java - 在 Tomcat 应用程序之间共享一个小程序

我想在 HTML 中运行 Java 程序

java - .net 和 Java 之间的字符串编码

Java文本输入: How to ignore lines starting with certain characters in them?

Java - 如何将一串字母转换为具有相应数值的数组?

java - do-while with Java8-Optional

swift - 如何在 Swift 中将自生成的 ssl 证书与 NSStream(s) 一起使用

java - 如何在 java 签名的小程序中进行代理隧道