У меня уже есть работающий прокси-сервер HTTP, который может обрабатывать несколько HTTP-запросов.Теперь моя проблема в том, как мне обработать запрос https?
вот упрощенный код, который я использую:
class Daemon
{
public static void main(String[] args)
{
ServerSocket cDaemonSocket = new ServerSocket(3128);
while(true)
{
try
{
Socket ClientSocket = cDaemonSocket.accept();
(new ClientHandler(ClientSocket )).start();
}catch(Exception e) { }
}
}
}
и ClientHandler
class ClientHandler extends Thread
{
private Socket socket = null;
private Socket remoteSocket = null;
private HTTPReqHeader request = null;
ClientHandler(Socket socket)
{
this.socket = socket;
request = new HTTPReqHeader();
request.parse(socket); // I read and parse the HTTP request here
}
public void run()
{
if(!request.isSecure() )
{
remoteSocket = new Socket(request.url,request.port);
}
else
{
// now what should I do to established a secured socket?
}
// start connecting remoteSocket and clientSocket
...........
}
}
}
Я действительно пытался найти, как, яЯ сталкивался с туннелированием SSL, сертификатом, подтверждением связи, SSLSocket, SSLFactory, trustStore и т. д. и т. п., но все равно не смог заставить его работать. Мне просто нужно знать, что мне нужно и как установить соединение с SSL-включенный веб-сервер.