Я пытался использовать s_client (openssl) и пакет javax.net.ssl для подключения к зашифрованному сокету.
s_client работает, но, вероятно, не на некорневом андроиде, поэтому я попробовал javax.net.ssl, но я получаю следующую ошибку:
java.net.SocketException: сокет был закрыт или сломан
Кроме того, что такое «NaiveTrustManager ()»? (https://github.com/maruohon/JavaIRC)
package SSLSocketClient;
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
public class SSLSocketClient{
public static void main(String[] args) {
SSLSocketFactory f =
(SSLSocketFactory)SSLSocketFactory.getDefault();
try {
SSLSocket s =
(SSLSocket) f.createSocket("localhost", 6697);
s.startHandshake();
BufferedReader reader = new BufferedReader (new
InputStreamReader(s.getInputStream()));
BufferedWriter writer = new BufferedWriter(new
OutputStreamWriter(s.getOutputStream()));
BufferedReader in = new BufferedReader(
new InputStreamReader(
s.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
s.close();
} catch (IOException e) {
System.err.println(e.toString());
}
}