我有一个通过套接字进行通信的应用程序。现在,我需要分别更改用于接收和发送数据的 ServerSocket 和 Socket,以用于其各自的 SSL/TLS 实现。
我使用下面的代码将 ServerSocket 和 Socket 转换为 SSLServerSocket 和 SSLSocket,并保持其余代码不变。
//On client
SSLSocket socket = (SSLSocket) SSLSocketFactory.getDefault().createSocket(serverAddress, serverPort);
//On server
SSLSocket socket;
SSLServerSocket serverSocket = (SSLServerSocket ) SSLServerSocketFactory.getDefault().createServerSocket(serverPort);
socket = (SSLSocket) serverSocket.accept();
由于我仍在学习如何保护移动应用程序通信,我怀疑这是否足以保护通信安全,或者我是否需要指定自定义证书?