Я использую провайдер JSSE по умолчанию в Java 6 (SunJSSE), как это так,Безопасен ли SSLContext.createSSLEngine()?
SSLContext sslCtx = SSLContext.getInstance("TLS");
Могу ли я вызвать метод sslCtx.createSSLEngine()
безопасно из нескольких потоков?
Update 1: код, который звонит createSSLEngine()
таким способом выполняется только на стороне сервера. В принципе, поток вызывает этот метод для каждого клиента, который подключается к серверу.
Это не так, но я никогда не беспокоился об этом и никогда не был пойман. Однако вы должны называть 'SSLContext.createSSLEngine (String host, int port)', если это возможно, иначе вы не получите никакого обмена SSLSession. – EJP
@EJP Я мог найти только [этот старый пост] (http://dev.mina.apache.narkive.com/VVCDUDuQ/sslfilter-and-ssl-session-reuse), в котором упоминается повторное использование SSLSession. Однако он говорит, что это влияет только на клиентский код. У вас есть дополнительная информация по этому вопросу? –
Неправильно. Сервер также участвует в повторном использовании сеанса, и SSLEngine имеет только такой способ узнать, кто такой сверстник, и какие сеансы с ним равны. – EJP