Hello, good people,

The java 11 implementation of TLS v1.3 was backported into java 8 since some CPUs and it results sometimes in new handshake failures with hard-to-updage-firmware devices whose shell life might be still long.

We somehow debugged those failures and some devices bomb because of TLSv1.2 handshake containing the signature_algorihms_cert and supported_versions extensions.

I would love to propose for Java 8 the attached patch that would make the TLSv1.2 handshake to look exactly as it was looking in 8u252. The TLSv1.3 handshake still contains both extensions as it should. This could solve the differences of Java 8 behaviour between different update numbers.

Please, have a look and comment

Cheers

Fridrich

--- openjdk/jdk/src/share/classes/sun/security/ssl/SSLExtension.java	2021-05-21 08:10:00.830159018 +0200
+++ openjdk/jdk/src/share/classes/sun/security/ssl/SSLExtension.java	2021-05-21 08:11:40.258772361 +0200
@@ -198,7 +198,7 @@
 
     CH_SIGNATURE_ALGORITHMS_CERT (0x0032, "signature_algorithms_cert",
                                 SSLHandshake.CLIENT_HELLO,
-                                ProtocolVersion.PROTOCOLS_12_13,
+                                ProtocolVersion.PROTOCOLS_OF_13,
                                 CertSignAlgsExtension.chNetworkProducer,
                                 CertSignAlgsExtension.chOnLoadConsumer,
                                 null,
@@ -319,7 +319,7 @@
 
     CH_SUPPORTED_VERSIONS   (0x002B, "supported_versions",
                                 SSLHandshake.CLIENT_HELLO,
-                                ProtocolVersion.PROTOCOLS_TO_13,
+                                ProtocolVersion.PROTOCOLS_OF_13,
                                 SupportedVersionsExtension.chNetworkProducer,
                                 SupportedVersionsExtension.chOnLoadConsumer,
                                 null,

Reply via email to