RFR: 8349910: Implement JEP 517: HTTP/3 for the HTTP Client API [v9]
Daniel Fuchs
dfuchs at openjdk.org
Wed Aug 20 17:14:55 UTC 2025
On Wed, 20 Aug 2025 16:21:42 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:
>> src/java.base/share/classes/sun/security/ssl/Finished.java line 852:
>>
>>> 850: QuicTLSEngineImpl engine =
>>> 851: (QuicTLSEngineImpl) shc.conContext.transport;
>>> 852: engine.deriveOneRTTKeys();
>>
>> We should not derive the server's 1RTT read keys before processing the client's Finished message.
>>
>> Also, we could skip calculating the SSL WriteCipher when QUIC is in use. Also, we're calculating the baseWriteSecret twice (deriveOneRTTKeys calculates the same secret)
>
> We decided to do this as a follow up after the JEP is integrated. In the meantime, in https://github.com/openjdk/jdk/pull/24751/commits/8d22ca7334da8d8b49d0634ea2f23bd409613928, we now introduce a check where the endpoint doesn't decrypt an incoming 1-RTT packet until the TLS handshake is complete. This matches with what the RFC-9001 specifies.
>
> @dfuch, @djelinski I think we can mark this conversation as resolved.
Logged as https://bugs.openjdk.org/browse/JDK-8365872 (thanks @jaikiran)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24751#discussion_r2288810658
More information about the core-libs-dev
mailing list