#1 18. April 2009 SSL/TLS Socket-Erstellung Hey, ich schreibe gerade an einer kleinen Client/Server-Anwendung. Die Übertragung soll mit Hilfe von SSL/TLS verschlüsselt werden. Ich habe mir 2 Funktionen gebaut, die mir das erstellen der Sockets übernehmen: Client: Code: private SSLSocket getSSLSocket(String host, int port) throws Exception { KeyStore ts= KeyStore.getInstance("JKS"); ts.load(new FileInputStream("truststore.jks"), "Passwort".toCharArray()); TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509"); tmf.init(ts); TrustManager[] tm= tmf.getTrustManagers(); KeyManager[] km = null; SSLContext ctx = SSLContext.getInstance("TLS"); ctx.init(km, tm, null); SSLSocketFactory ssf= ctx.getSocketFactory(); SSLSocket sslSocket = (SSLSocket) ssf.createSocket(host, port); return sslSocket; } Server: Code: private SSLServerSocket getSSLServerSocket(int port, InetAddress ifAddress) throws Exception{ KeyStore ks = KeyStore.getInstance("JKS"); ks.load(new FileInputStream("serverKeystore.jks"), "Passwort".toCharArray()); KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509"); kmf.init(ks, "261452855a".toCharArray()); KeyManager[] km = kmf.getKeyManagers(); TrustManager[] tm= null; SSLContext ctx = SSLContext.getInstance("TLS"); ctx.init(km, tm, null); SSLServerSocketFactory ssf = ctx.getServerSocketFactory(); SSLServerSocket sslSocket = (SSLServerSocket) ssf.createServerSocket(port, 0, ifAddress); return sslSocket; } Wenn ich jedoch jetzt eine Verbindung aufbaue bekomme ich beim Clienten die Exception: Connection Refused Am Server Zertifikat kanns nicht liegen, denn das funktioniert einwandfrei. Ich schätze der Fehler liegt am truststore.jks habe ich einfach das selbe Zertifikat wie beim Server genommen. Ist das so richtig oder wo kann sonst der Fehler liegen? Vielen Dank für eure Hilfe + Multi-Zitat Zitieren