openjdk11:不支持的 CipherSuite 异常

openjdk11 : Unsupported CipherSuite Exception

我的应用程序正在使用 OpenJDK 11,但失败并出现以下异常:

Caused by: java.lang.IllegalArgumentException: Unsupported CipherSuite: SSL_RSA_WITH_AES_256_CBC_SHA256
        at java.base/sun.security.ssl.CipherSuite.validValuesOf(CipherSuite.java:916)
        at java.base/sun.security.ssl.SSLSocketImpl.setEnabledCipherSuites(SSLSocketImpl.java:302)
        at com.ibm.mq.jmqi.remote.impl.RemoteTCPConnection.makeSocketSecure(RemoteTCPConnection.java:2084)

我不分享任何代码,因为我认为问题不在那里。我需要以某种方式修复此异常。

是否可以配置 JRE 以支持这个特定的 CipherSuite?

通常 TLS_RSA_... 而不是 SSL_RSA_... 最近的 Java 版本,因为 SSLv3 不再安全。

根据 Configuring your application to use IBM Java or Oracle Java CipherSuite mappings 文档,IBM JRE 可能支持 SSL_RSA_WITH_AES_256_CBC_SHA256 密码套件,但这在 OpenJDK 中不是有效常量。

根据 Java Cryptography Architecture Oracle Providers Documentation for JDK 8 文档,TLS_RSA_WITH_AES_256_CBC_SHA256 密码套件在 Java 7 中引入。在 OpenJDK 中使用此常量。