You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Maxim Egorov (Jira)" <ji...@apache.org> on 2021/02/08 09:07:00 UTC
[jira] [Created] (HTTPCLIENT-2134) HttpClient doesnt reuse TLS 1.2
Session
Maxim Egorov created HTTPCLIENT-2134:
----------------------------------------
Summary: HttpClient doesnt reuse TLS 1.2 Session
Key: HTTPCLIENT-2134
URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2134
Project: HttpComponents HttpClient
Issue Type: Bug
Components: HttpClient (classic)
Affects Versions: 5.0.3, 4.5.13
Reporter: Maxim Egorov
Attachments: TestApacheHttpClientApp.java, handshake.log
To reproduce run on java 11+:
java -cp ... -Djavax.net.debug=ssl:handshake TestApacheHttpClientApp
As you can see from handshake.log file HttpClient always create new tls session.
The root of problem is support of Extended Master Key Extension in [https://github.com/openjdk/jdk/blob/jdk-11+28/src/java.base/share/classes/sun/security/ssl/ClientHello.java#L497.] The standard jdk HttpURLConnection doesn't be affected this issues because of it sets chc.sslConfig.identificationProtocol equals to HTTPS by default [https://github.com/openjdk/jdk/blob/jdk-11%2B28/src/java.base/share/classes/sun/net/www/protocol/https/HttpsClient.java#L560.] I tried to repeat the same trick (The commented code), but due to the bugs of JDK [https://bugs.openjdk.java.net/browse/JDK-8253368] and may be incorrect implementation of method BHttpConnectionBase.close it doesn't work.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org