java - 如何在 Oracle JDK 1.7 中启用禁用的密码套件

标签 java java-7

我的Java版本是1.7,根据this link我发现 Oracle 默认禁用某些密码套件。

我想使用SSL_RSA_WITH_DES_CBC_SHA这是一个禁用的密码套件。如何启用这个已禁用的密码套件?

最佳答案

基于https://blogs.oracle.com/coffeys/entry/jdk_and_use_of_rc4您应该能够按如下方式执行此操作:

使用API​​方法调用:

sslSocket.setEnabledCipherSuites(new String [] {
  "SSL_RSA_WITH_DES_CBC_SHA",
  "TLS_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", 
  "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "SSL_RSA_WITH_3DES_EDE_CBC_SHA", 
  "SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA", "SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA", 
  "SSL_RSA_WITH_RC4_128_MD5", "SSL_RSA_WITH_RC4_128_SHA", 
  "TLS_EMPTY_RENEGOTIATION_INFO_SCSV"});

或者 https.cipherSuites 系统属性:

java -Dhttps.cipherSuites= SSL_RSA_WITH_DES_CBC_SHA \
TLS_RSA_WITH_AES_128_CBC_SHA,\
TLS_DHE_RSA_WITH_AES_128_CBC_SHA,\
TLS_DHE_DSS_WITH_AES_128_CBC_SHA,\
SSL_RSA_WITH_3DES_EDE_CBC_SHA,\
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,\
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,\
SSL_RSA_WITH_RC4_128_MD5,\
SSL_RSA_WITH_RC4_128_SHA,\
TLS_EMPTY_RENEGOTIATION_INFO_SCSV MyTLSApp

关于java - 如何在 Oracle JDK 1.7 中启用禁用的密码套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30695261/

相关文章:

java - JDK7的invokedynamic如何实现多态

java - 使用 Objects#hash(Object...) 作为 hashCode 方法?

java - JAXB 混合版本?未定义 'required' 属性

java - 使用 AES-CBC-PKCS5Padding 解密数据时出现填充错误

java - 何时使用参数以及何时使用实例数据?

java - 在JAVA中存储二维数组的数据结构

java - 在 Java 7 中,列出带有 "relative path"的文件

java - 为什么通配符导入语句使用类路径jar类而不是jdk类?

java - 在java中创建消息ID

exception - JDK 1.7 可抛出的 `addSuppressed()` 方法