<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Greetings,</div><div><br></div><div>Can extra security properties controlling new TLS extensions be added to make some of the JSSE handshake more configurable? </div><div><br></div><div>I'm finding some misbehaviour caused indirectly with an existing TLS client when moving to OpenJDK 11 whereas it works fine with 8,9,10, note that TLS 1.3 is not used, this is purely a compatibility of TLS 1.2 request where some of the extensions can be optional.</div><div><br></div><div>Whilst it doesn't appear the JSSE implementation is doing anything out of compliance with the standard it seems to present a case of an existing endpoint whose interop is now affected and there could be many misbehaved implementations out there, perhaps ones in hardware etc, that may not handle unknown extensions well.</div><div><br></div><div>For me the endpoint in question is doing XMPP+STARTTLS on <a href="http://talk.google.com:5222">talk.google.com:5222</a></div><div><br></div><div>Through wireshark/client hello dumps the main difference seems to be ordering of extensions and presence of extra two extensions:</div><div><br></div><div><div>1)  Extension: supported_versions (len=3)</div><div>            Type: supported_versions (43)</div><div>            Length: 3</div><div>            Supported Versions length: 2</div><div>            Supported Version: TLS 1.2 (0x0303)</div></div><div><br></div><div><div>2) Extension: signature_algorithms_cert (len=34)</div><div>            Type: signature_algorithms_cert (50)</div><div>            Length: 34</div><div>            Signature Hash Algorithms Length: 32</div><div>            Signature Hash Algorithms (16 algorithms)</div><div>                Signature Algorithm: ecdsa_secp256r1_sha256 (0x0403)</div><div>                    Signature Hash Algorithm Hash: SHA256 (4)</div><div>                    Signature Hash Algorithm Signature: ECDSA (3)</div><div>                Signature Algorithm: ecdsa_secp384r1_sha384 (0x0503)</div><div>                    Signature Hash Algorithm Hash: SHA384 (5)</div><div>                    Signature Hash Algorithm Signature: ECDSA (3)</div><div>                Signature Algorithm: ecdsa_secp521r1_sha512 (0x0603)</div><div>                    Signature Hash Algorithm Hash: SHA512 (6)</div><div>                    Signature Hash Algorithm Signature: ECDSA (3)</div><div>                Signature Algorithm: rsa_pss_rsae_sha256 (0x0804)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (4)</div><div>                Signature Algorithm: rsa_pss_rsae_sha384 (0x0805)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (5)</div><div>                Signature Algorithm: rsa_pss_rsae_sha512 (0x0806)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (6)</div><div>                Signature Algorithm: rsa_pss_pss_sha256 (0x0809)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (9)</div><div>                Signature Algorithm: rsa_pss_pss_sha384 (0x080a)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (10)</div><div>                Signature Algorithm: rsa_pss_pss_sha512 (0x080b)</div><div>                    Signature Hash Algorithm Hash: Unknown (8)</div><div>                    Signature Hash Algorithm Signature: Unknown (11)</div><div>                Signature Algorithm: rsa_pkcs1_sha256 (0x0401)</div><div>                    Signature Hash Algorithm Hash: SHA256 (4)</div><div>                    Signature Hash Algorithm Signature: RSA (1)</div><div>                Signature Algorithm: rsa_pkcs1_sha384 (0x0501)</div><div>                    Signature Hash Algorithm Hash: SHA384 (5)</div><div>                    Signature Hash Algorithm Signature: RSA (1)</div><div>                Signature Algorithm: rsa_pkcs1_sha512 (0x0601)</div><div>                    Signature Hash Algorithm Hash: SHA512 (6)</div><div>                    Signature Hash Algorithm Signature: RSA (1)</div><div>                Signature Algorithm: SHA256 DSA (0x0402)</div><div>                    Signature Hash Algorithm Hash: SHA256 (4)</div><div>                    Signature Hash Algorithm Signature: DSA (2)</div><div>                Signature Algorithm: ecdsa_sha1 (0x0203)</div><div>                    Signature Hash Algorithm Hash: SHA1 (2)</div><div>                    Signature Hash Algorithm Signature: ECDSA (3)</div><div>                Signature Algorithm: rsa_pkcs1_sha1 (0x0201)</div><div>                    Signature Hash Algorithm Hash: SHA1 (2)</div><div>                    Signature Hash Algorithm Signature: RSA (1)</div><div>                Signature Algorithm: SHA1 DSA (0x0202)</div><div>                    Signature Hash Algorithm Hash: SHA1 (2)</div><div>                    Signature Hash Algorithm Signature: DSA (2)</div></div><div><br></div><div>This triggers a completely bizarre SNI bug but nevertheless it works just fine as soon as JRE is swapped out.</div><div><br></div><div>Debug output of failed case</div><div></div><br><div><div class="gmail-hljs gmail-ruby" style="display:block;overflow-x:auto;padding:0.5em;background:rgb(248,248,248)"><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:53.937 AEDT|SSLCipher.java:437|jdk.tls.keyLimits:  entry = AES/GCM/NoPadding KeyUpdate 2^37. AES/GCM/NOPADDING:KEYUPDATE = 137438953472</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.273 AEDT|ServerNameExtension.java:255|Unable to indicate server name</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.273 AEDT|SSLExtensions.java:235|Ignore, context unavailable extension: server_name</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.314 AEDT|SignatureScheme.java:282|Signature algorithm, ed25519, is not supported by the underlying providers</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.314 AEDT|SignatureScheme.java:282|Signature algorithm, ed448, is not supported by the underlying providers</font></div><div><font color="#333333" face="monospace">javax.net.ssl|INFO|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.327 AEDT|AlpnExtension.java:161|No available application protocols</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.327 AEDT|SSLExtensions.java:235|Ignore, context unavailable extension: application_layer_protocol_negotiation</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.328 AEDT|SSLExtensions.java:235|Ignore, context unavailable extension: renegotiation_info</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.353 AEDT|ClientHello.java:651|Produced ClientHello handshake message (</font></div><div><font color="#333333" face="monospace">"ClientHello": {</font></div><div><font color="#333333" face="monospace">  "client version"      : "TLSv1.2",</font></div><div><font color="#333333" face="monospace">  "random"              : "3B 9C 31 FA 55 2B 09 81 5F 12 82 25 AD A6 47 8E 76 CA 80 BF 72 BB 6D 84 EF 92 3E 9E EC 7A D5 13",</font></div><div><font color="#333333" face="monospace">  "session id"          : "",</font></div><div><font color="#333333" face="monospace">  "cipher suites"       : "[TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384(0xC02C), TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256(0xC02B), TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(0xC030), TLS_RSA_WITH_AES_256_GCM_SHA384(0x009D), TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384(0xC02E), TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384(0xC032), TLS_DHE_RSA_WITH_AES_256_GCM_SHA384(0x009F), TLS_DHE_DSS_WITH_AES_256_GCM_SHA384(0x00A3), TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256(0xC02F), TLS_RSA_WITH_AES_128_GCM_SHA256(0x009C), TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256(0xC02D), TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256(0xC031), TLS_DHE_RSA_WITH_AES_128_GCM_SHA256(0x009E), TLS_DHE_DSS_WITH_AES_128_GCM_SHA256(0x00A2), TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384(0xC024), TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384(0xC028), TLS_RSA_WITH_AES_256_CBC_SHA256(0x003D), TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384(0xC026), TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384(0xC02A), TLS_DHE_RSA_WITH_AES_256_CBC_SHA256(0x006B), TLS_DHE_DSS_WITH_AES_256_CBC_SHA256(0x006A), TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA(0xC00A), TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA(0xC014), TLS_RSA_WITH_AES_256_CBC_SHA(0x0035), TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA(0xC005), TLS_ECDH_RSA_WITH_AES_256_CBC_SHA(0xC00F), TLS_DHE_RSA_WITH_AES_256_CBC_SHA(0x0039), TLS_DHE_DSS_WITH_AES_256_CBC_SHA(0x0038), TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256(0xC023), TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256(0xC027), TLS_RSA_WITH_AES_128_CBC_SHA256(0x003C), TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256(0xC025), TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256(0xC029), TLS_DHE_RSA_WITH_AES_128_CBC_SHA256(0x0067), TLS_DHE_DSS_WITH_AES_128_CBC_SHA256(0x0040), TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA(0xC009), TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(0xC013), TLS_RSA_WITH_AES_128_CBC_SHA(0x002F), TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA(0xC004), TLS_ECDH_RSA_WITH_AES_128_CBC_SHA(0xC00E), TLS_DHE_RSA_WITH_AES_128_CBC_SHA(0x0033), TLS_DHE_DSS_WITH_AES_128_CBC_SHA(0x0032), TLS_EMPTY_RENEGOTIATION_INFO_SCSV(0x00FF)]",</font></div><div><font color="#333333" face="monospace">  "compression methods" : "00",</font></div><div><font color="#333333" face="monospace">  "extensions"          : [</font></div><div><font color="#333333" face="monospace">    "status_request (5)": {</font></div><div><font color="#333333" face="monospace">      "certificate status type": ocsp</font></div><div><font color="#333333" face="monospace">      "OCSP status request": {</font></div><div><font color="#333333" face="monospace">        "responder_id": <empty></font></div><div><font color="#333333" face="monospace">        "request extensions": {</font></div><div><font color="#333333" face="monospace">          <empty></font></div><div><font color="#333333" face="monospace">        }</font></div><div><font color="#333333" face="monospace">      }</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "supported_groups (10)": {</font></div><div><font color="#333333" face="monospace">      "versions": [secp256r1, secp384r1, secp521r1, sect283k1, sect283r1, sect409k1, sect409r1, sect571k1, sect571r1, secp256k1, ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192]</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "ec_point_formats (11)": {</font></div><div><font color="#333333" face="monospace">      "formats": [uncompressed]</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "signature_algorithms (13)": {</font></div><div><font color="#333333" face="monospace">      "signature schemes": [ecdsa_secp256r1_sha256, ecdsa_secp384r1_sha384, ecdsa_secp512r1_sha512, rsa_pss_rsae_sha256, rsa_pss_rsae_sha384, rsa_pss_rsae_sha512, rsa_pss_pss_sha256, rsa_pss_pss_sha384, rsa_pss_pss_sha512, rsa_pkcs1_sha256, rsa_pkcs1_sha384, rsa_pkcs1_sha512, dsa_sha256, ecdsa_sha1, rsa_pkcs1_sha1, dsa_sha1]</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "signature_algorithms_cert (50)": {</font></div><div><font color="#333333" face="monospace">      "signature schemes": [ecdsa_secp256r1_sha256, ecdsa_secp384r1_sha384, ecdsa_secp512r1_sha512, rsa_pss_rsae_sha256, rsa_pss_rsae_sha384, rsa_pss_rsae_sha512, rsa_pss_pss_sha256, rsa_pss_pss_sha384, rsa_pss_pss_sha512, rsa_pkcs1_sha256, rsa_pkcs1_sha384, rsa_pkcs1_sha512, dsa_sha256, ecdsa_sha1, rsa_pkcs1_sha1, dsa_sha1]</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "status_request_v2 (17)": {</font></div><div><font color="#333333" face="monospace">      "cert status request": {</font></div><div><font color="#333333" face="monospace">        "certificate status type": ocsp_multi</font></div><div><font color="#333333" face="monospace">        "OCSP status request": {</font></div><div><font color="#333333" face="monospace">          "responder_id": <empty></font></div><div><font color="#333333" face="monospace">          "request extensions": {</font></div><div><font color="#333333" face="monospace">            <empty></font></div><div><font color="#333333" face="monospace">          }</font></div><div><font color="#333333" face="monospace">        }</font></div><div><font color="#333333" face="monospace">      }</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "extended_master_secret (23)": {</font></div><div><font color="#333333" face="monospace">      <empty></font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "supported_versions (43)": {</font></div><div><font color="#333333" face="monospace">      "versions": [TLSv1.2]</font></div><div><font color="#333333" face="monospace">    }</font></div><div><font color="#333333" face="monospace">  ]</font></div><div><font color="#333333" face="monospace">}</font></div><div><font color="#333333" face="monospace">)</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.521 AEDT|ServerHello.java:866|Consuming ServerHello handshake message (</font></div><div><font color="#333333" face="monospace">"ServerHello": {</font></div><div><font color="#333333" face="monospace">  "server version"      : "TLSv1.2",</font></div><div><font color="#333333" face="monospace">  "random"              : "5C 2E DF 63 7B 0F C0 81 8C 3D 26 84 4B C1 51 AB 82 8A 3A DF 4D F3 91 4E 45 34 D5 33 CA 1B 59 8E",</font></div><div><font color="#333333" face="monospace">  "session id"          : "C8 38 09 76 0A CF 61 C2 2D 29 37 F1 74 31 36 FD 2A 00 6A C7 B9 FE 85 9C 16 F6 7B 9F 10 27 70 51",</font></div><div><font color="#333333" face="monospace">  "cipher suite"        : "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256(0xC02F)",</font></div><div><font color="#333333" face="monospace">  "compression methods" : "00",</font></div><div><font color="#333333" face="monospace">  "extensions"          : [</font></div><div><font color="#333333" face="monospace">    "extended_master_secret (23)": {</font></div><div><font color="#333333" face="monospace">      <empty></font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "renegotiation_info (65,281)": {</font></div><div><font color="#333333" face="monospace">      "renegotiated connection": [<no renegotiated connection>]</font></div><div><font color="#333333" face="monospace">    },</font></div><div><font color="#333333" face="monospace">    "ec_point_formats (11)": {</font></div><div><font color="#333333" face="monospace">      "formats": [uncompressed]</font></div><div><font color="#333333" face="monospace">    }</font></div><div><font color="#333333" face="monospace">  ]</font></div><div><font color="#333333" face="monospace">}</font></div><div><font color="#333333" face="monospace">)</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.522 AEDT|SSLExtensions.java:148|Ignore unavailable extension: supported_versions</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.522 AEDT|ServerHello.java:962|Negotiated protocol version: TLSv1.2</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.523 AEDT|SSLExtensions.java:167|Consumed extension: renegotiation_info</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.524 AEDT|SSLExtensions.java:148|Ignore unavailable extension: server_name</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.535 AEDT|SSLExtensions.java:148|Ignore unavailable extension: max_fragment_length</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.536 AEDT|SSLExtensions.java:148|Ignore unavailable extension: status_request</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.536 AEDT|SSLExtensions.java:167|Consumed extension: ec_point_formats</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.536 AEDT|SSLExtensions.java:148|Ignore unavailable extension: status_request_v2</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.537 AEDT|SSLExtensions.java:167|Consumed extension: extended_master_secret</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.537 AEDT|SSLExtensions.java:167|Consumed extension: renegotiation_info</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.538 AEDT|SSLExtensions.java:182|Ignore unavailable extension: server_name</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.538 AEDT|SSLExtensions.java:182|Ignore unavailable extension: max_fragment_length</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.538 AEDT|SSLExtensions.java:182|Ignore unavailable extension: status_request</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.538 AEDT|SSLExtensions.java:190|Ignore impact of unsupported extension: ec_point_formats</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.540 AEDT|SSLExtensions.java:182|Ignore unavailable extension: application_layer_protocol_negotiation</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.540 AEDT|SSLExtensions.java:182|Ignore unavailable extension: status_request_v2</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.543 AEDT|SSLExtensions.java:190|Ignore impact of unsupported extension: extended_master_secret</font></div><div><font color="#333333" face="monospace">javax.net.ssl|WARNING|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.543 AEDT|SSLExtensions.java:190|Ignore impact of unsupported extension: renegotiation_info</font></div><div><font color="#333333" face="monospace">javax.net.ssl|DEBUG|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.553 AEDT|CertificateMessage.java:358|Consuming server Certificate handshake message (</font></div><div><font color="#333333" face="monospace">"Certificates": [</font></div><div><font color="#333333" face="monospace">  "certificate" : {</font></div><div><font color="#333333" face="monospace">    "version"            : "v3",</font></div><div><font color="#333333" face="monospace">    "serial number"      : "00 90 76 89 18 E9 33 93 A0",</font></div><div><font color="#333333" face="monospace">    "signature algorithm": "SHA256withRSA",</font></div><div><font color="#333333" face="monospace">    "issuer"             : "CN=invalid2.invalid, OU="No SNI provided; please fix your client."",</font></div><div><font color="#333333" face="monospace">    "not before"         : "2015-01-01 11:00:00.000 AEDT",</font></div><div><font color="#333333" face="monospace">    "not  after"         : "2030-01-01 11:00:00.000 AEDT",</font></div><div><font color="#333333" face="monospace">    "subject"            : "CN=invalid2.invalid, OU="No SNI provided; please fix your client."",</font></div><div><font color="#333333" face="monospace">    "subject public key" : "RSA",</font></div><div><font color="#333333" face="monospace">    "extensions"         : [</font></div><div><font color="#333333" face="monospace">      {</font></div><div><font color="#333333" face="monospace">        ObjectId: 2.5.29.19 Criticality=true</font></div><div><font color="#333333" face="monospace">        BasicConstraints:[</font></div><div><font color="#333333" face="monospace">          CA:true</font></div><div><font color="#333333" face="monospace">          PathLen:2147483647</font></div><div><font color="#333333" face="monospace">        ]</font></div><div><font color="#333333" face="monospace">      },</font></div><div><font color="#333333" face="monospace">      {</font></div><div><font color="#333333" face="monospace">        ObjectId: 2.5.29.37 Criticality=false</font></div><div><font color="#333333" face="monospace">        ExtendedKeyUsages [</font></div><div><font color="#333333" face="monospace">          serverAuth</font></div><div><font color="#333333" face="monospace">          clientAuth</font></div><div><font color="#333333" face="monospace">        ]</font></div><div><font color="#333333" face="monospace">      },</font></div><div><font color="#333333" face="monospace">      {</font></div><div><font color="#333333" face="monospace">        ObjectId: 2.5.29.15 Criticality=true</font></div><div><font color="#333333" face="monospace">        KeyUsage [</font></div><div><font color="#333333" face="monospace">          DigitalSignature</font></div><div><font color="#333333" face="monospace">          Key_Encipherment</font></div><div><font color="#333333" face="monospace">          Key_CertSign</font></div><div><font color="#333333" face="monospace">        ]</font></div><div><font color="#333333" face="monospace">      },</font></div><div><font color="#333333" face="monospace">      {</font></div><div><font color="#333333" face="monospace">        ObjectId: 2.5.29.14 Criticality=false</font></div><div><font color="#333333" face="monospace">        SubjectKeyIdentifier [</font></div><div><font color="#333333" face="monospace">        KeyIdentifier [</font></div><div><font color="#333333" face="monospace">        0000: BB 0F 38 96 6F 3E BE 4F   2B 46 D0 41 6A D4 AC B5  ..8.o>.O+F.Aj...</font></div><div><font color="#333333" face="monospace">        ]</font></div><div><font color="#333333" face="monospace">        ]</font></div><div><font color="#333333" face="monospace">      }</font></div><div><font color="#333333" face="monospace">    ]}</font></div><div><font color="#333333" face="monospace">]</font></div><div><font color="#333333" face="monospace">)</font></div><div><font color="#333333" face="monospace">javax.net.ssl|ERROR|0F|Smack Packet Reader (0)|2019-01-04 15:21:55.615 AEDT|TransportContext.java:313|Fatal (CERTIFICATE_UNKNOWN): PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target (</font></div><div><font color="#333333" face="monospace">"throwable" : {</font></div><div><font color="#333333" face="monospace">  sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target</font></div></div></div><br><div></div><div>I'm triggering this indirectly via use of XMPP library so I don't have a clean JSSE only sample (but it simply creates an SSLSocket from the default SSLContext and calls startHandshake)</div><div><br></div><div>Regards,</div><div>Amir</div><div><br></div></div></div></div></div></div>