public final class CipherSuite
extends java.lang.Object
Not all cipher suites are supported on all platforms. As newer cipher suites are created (for stronger privacy, better performance, etc.) they will be adopted by the platform and then exposed here. Cipher suites that are not available on either Android (through API level 24) or Java (through JDK 9) are omitted for brevity.
See Android SSLEngine which lists the cipher suites supported by Android.
See JDK 10 Providers which lists the cipher suites supported by Oracle.
See NativeCrypto.java from conscrypt, which lists the cipher suites supported by Conscrypt.
Modifier | Constructor and Description |
---|---|
private |
CipherSuite(java.lang.String javaName) |
Modifier and Type | Method and Description |
---|---|
static CipherSuite |
forJavaName(java.lang.String javaName) |
(package private) static java.util.List<CipherSuite> |
forJavaNames(java.lang.String... cipherSuites) |
private static CipherSuite |
init(java.lang.String javaName,
int value) |
java.lang.String |
javaName()
Returns the Java name of this cipher suite.
|
private static java.lang.String |
secondaryName(java.lang.String javaName) |
java.lang.String |
toString() |
static final java.util.Comparator<java.lang.String> ORDER_BY_NAME
private static final java.util.Map<java.lang.String,CipherSuite> INSTANCES
<clinit>()
run. Guarded by CipherSuite.class.public static final CipherSuite TLS_RSA_WITH_NULL_MD5
public static final CipherSuite TLS_RSA_WITH_NULL_SHA
public static final CipherSuite TLS_RSA_EXPORT_WITH_RC4_40_MD5
public static final CipherSuite TLS_RSA_WITH_RC4_128_MD5
public static final CipherSuite TLS_RSA_WITH_RC4_128_SHA
public static final CipherSuite TLS_RSA_EXPORT_WITH_DES40_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_DES_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_DES_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_DES_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_DH_anon_EXPORT_WITH_RC4_40_MD5
public static final CipherSuite TLS_DH_anon_WITH_RC4_128_MD5
public static final CipherSuite TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA
public static final CipherSuite TLS_DH_anon_WITH_DES_CBC_SHA
public static final CipherSuite TLS_DH_anon_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_KRB5_WITH_DES_CBC_SHA
public static final CipherSuite TLS_KRB5_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_KRB5_WITH_RC4_128_SHA
public static final CipherSuite TLS_KRB5_WITH_DES_CBC_MD5
public static final CipherSuite TLS_KRB5_WITH_3DES_EDE_CBC_MD5
public static final CipherSuite TLS_KRB5_WITH_RC4_128_MD5
public static final CipherSuite TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA
public static final CipherSuite TLS_KRB5_EXPORT_WITH_RC4_40_SHA
public static final CipherSuite TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5
public static final CipherSuite TLS_KRB5_EXPORT_WITH_RC4_40_MD5
public static final CipherSuite TLS_RSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_DH_anon_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_DH_anon_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_NULL_SHA256
public static final CipherSuite TLS_RSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_RSA_WITH_AES_256_CBC_SHA256
public static final CipherSuite TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
public static final CipherSuite TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
public static final CipherSuite TLS_DH_anon_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_DH_anon_WITH_AES_256_CBC_SHA256
public static final CipherSuite TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
public static final CipherSuite TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA
public static final CipherSuite TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA
public static final CipherSuite TLS_PSK_WITH_RC4_128_SHA
public static final CipherSuite TLS_PSK_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_PSK_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_PSK_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_SEED_CBC_SHA
public static final CipherSuite TLS_RSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_RSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_DHE_DSS_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_DH_anon_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_DH_anon_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_EMPTY_RENEGOTIATION_INFO_SCSV
public static final CipherSuite TLS_FALLBACK_SCSV
public static final CipherSuite TLS_ECDH_ECDSA_WITH_NULL_SHA
public static final CipherSuite TLS_ECDH_ECDSA_WITH_RC4_128_SHA
public static final CipherSuite TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_NULL_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDH_RSA_WITH_NULL_SHA
public static final CipherSuite TLS_ECDH_RSA_WITH_RC4_128_SHA
public static final CipherSuite TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_NULL_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_RC4_128_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDH_anon_WITH_NULL_SHA
public static final CipherSuite TLS_ECDH_anon_WITH_RC4_128_SHA
public static final CipherSuite TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA
public static final CipherSuite TLS_ECDH_anon_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDH_anon_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256
public static final CipherSuite TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
public static final CipherSuite TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA
public static final CipherSuite TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA
public static final CipherSuite TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
public static final CipherSuite TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
public static final CipherSuite TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
public static final CipherSuite TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256
public static final CipherSuite TLS_AES_128_GCM_SHA256
public static final CipherSuite TLS_AES_256_GCM_SHA384
public static final CipherSuite TLS_CHACHA20_POLY1305_SHA256
public static final CipherSuite TLS_AES_128_CCM_SHA256
public static final CipherSuite TLS_AES_128_CCM_8_SHA256
final java.lang.String javaName
public static CipherSuite forJavaName(java.lang.String javaName)
javaName
- the name used by Java APIs for this cipher suite. Different than the IANA name
for older cipher suites because the prefix is SSL_
instead of TLS_
.private static java.lang.String secondaryName(java.lang.String javaName)
static java.util.List<CipherSuite> forJavaNames(java.lang.String... cipherSuites)
private static CipherSuite init(java.lang.String javaName, int value)
javaName
- the name used by Java APIs for this cipher suite. Different than the IANA name
for older cipher suites because the prefix is SSL_
instead of TLS_
.value
- the integer identifier for this cipher suite. (Documentation only.)public java.lang.String javaName()
SSL_
, causing the Java name to be different from the instance name which is
always prefixed TLS_
. For example, TLS_RSA_EXPORT_WITH_RC4_40_MD5.javaName()
is "SSL_RSA_EXPORT_WITH_RC4_40_MD5"
.public java.lang.String toString()
toString
in class java.lang.Object