Security & Efficacy - TLS /SSL Cipher Suites

This article contains information on Cipher Suites, detailing the algorithms used for securing network connections via TLS/SSL, and lists various cipher groups with their respective strengths and configurations, along with supported key exchange methods, elliptic curves, and signature algorithms.

A Cipher Suite is a set of algorithms that secure a network connection using Transport Layer Security (TLS) or Secure Socket Layer (SSL). Each set of algorithms usually contains:

  • Key exchange algorithm: This is used to exchange a key between two devices and encrypt/decrypt messages sent between them.
  • Bulk encryption algorithm: This is used to encrypt the data being sent.
  • Message Authentication Code (MAC) algorithm: This provides data integrity checks to ensure the data sent doesn't change in transit.

Cipher Suites can also include signatures and an authentication algorithm to help authenticate the server and/or client (including SMTP submission). There are many cipher suites containing different combinations of these algorithms.

Cipher Suites

Some Cipher Suites offer better security than others. The list below of the ciphers Mimecast may use, depending on your configuration, is ordered from strongest (top) to weakest (bottom). If a cipher group has multiple ciphers, the first in the group is chosen first.

You won't have all the Cipher groups enabled; this depends on the functionality enabled on your account. For example, ciphers in the gcmPFSCiphers group are stronger than those in the phsCipher group. However, as gcmPFSCiphers is optional, the strongest cipher by default is TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA.

tls1.3Ciphers

TLS 1.3 cipher suites. Unlike TLS 1.2, these do not encode key exchange or authentication in the cipher name — those are negotiated separately via supported groups and signature algorithm extensions. These ciphers are preferred when TLS 1.3 is negotiated. 

CipherEnabledOptionalComments

TLS_AES_256_GCM_SHA384

TLS_AES_128_GCM_SHA256

YesNoTLS 1.3 cipher suites.

TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256

TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256

TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256

NoYesThese ciphers could be enabled depending on your account's functionality.

TLS_AES_128_CCM_SHA256

TLS_AES_128_CCM_8_SHA256

NoNoNot supported.

gcmPFSCiphers

CiphersEnabledOptionalComments
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_DSS_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
NoYesThese ciphers could be enabled depending on your account's functionality.

pfsCiphers

CiphersEnabledOptionalComments
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
YesNo 

TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256

TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256

TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256

NoNoSupported in the underlying implementation but not exposed through the cipher selector configuration.

gcmVeryStrongCiphers

CiphersEnabledOptionalComments
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_DSS_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
NoYesThese ciphers could be enabled depending on your account's functionality.

veryStrongCiphers

CiphersEnabledOptionalComments
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_DSS_WITH_AES_256_CBC_SHA
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_DSS_WITH_AES_128_CBC_SHA
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA
YesNo 

gcmStrongCiphers  

CiphersEnabledOptionalComments
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
NoYesThese ciphers could be enabled depending on your account's functionality.

strongCiphers

CiphersEnabledOptionalComments
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA
SSL_RSA_WITH_3DES_EDE_CBC_SHA
YesNo 

mediumCiphers

CiphersEnabledOptionalComments
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
NoYesThese ciphers could be enabled in compatibility mode.

beastMitigationCiphers

CiphersEnabledOptionalComments
SSL_RSA_WITH_RC4_128_SHA
SSL_RSA_WITH_RC4_128_MD5
NoYesThese ciphers could be enabled in compatibility mode.

weakCiphers

CiphersEnabledOptionalComments
SSL_DHE_RSA_WITH_DES_CBC_SHA
SSL_DHE_DSS_WITH_DES_CBC_SHA
SSL_RSA_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
NoYesThese ciphers could be enabled in compatibility mode.

anonCiphers

CiphersEnabledOptionalComments
TLS_ECDH_anon_WITH_AES_256_CBC_SHA
TLS_ECDH_anon_WITH_AES_128_CBC_SHA
TLS_ECDH_anon_WITH_RC4_128_SHA
TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA
TLS_DH_anon_WITH_AES_256_CBC_SHA
TLS_DH_anon_WITH_AES_128_CBC_SHA
SSL_DH_anon_WITH_3DES_EDE_CBC_SHA
SSL_DH_anon_WITH_RC4_128_MD5
SSL_DH_anon_WITH_DES_CBC_SHA
SSL_DH_anon_EXPORT_WITH_RC4_40_MD5
SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA
NoYesThese ciphers could be enabled depending on your account's configuration.

renegotiationCiphers

CiphersEnabledOptionalComments
TLS_EMPTY_RENEGOTIATION_INFO_SCSVYesNo 

Supported Key Exchange Methods

The following key exchange methods are supported. In TLS 1.3, key exchange is decoupled from the cipher suite and negotiated via the supported_groups extension.

MethodSupportedComments
psk_dhe_keYesPSK with DHE key exchange, used in TLS 1.3 session resumption.

Supported Elliptic Curves

The following named elliptic curves are supported for ECDHE key exchange and ECDSA authentication in both TLS 1.2 and TLS 1.3.

CurveSupportedComments
secp256r1 (P-256)Yes256-bit prime curve. Widely supported and recommended.
secp384r1 (P-384)Yes384-bit prime curve. Required for NCSC compliance configurations.

Supported Signature Algorithms

The following signature algorithms are supported for certificate authentication. In TLS 1.3 these are negotiated separately from the cipher suite.

RSA-PSS (RSAE), for use with RSA certificates.

AlgorithmSupportedComments
rsa_pss_rsae_sha256YesRSA-PSS signature with SHA-256.
rsa_pss_rsae_sha384YesRSA-PSS signature with SHA-384.
rsa_pss_rsae_sha512YesRSA-PSS signature with SHA-512.

RSA-PSS (PSS) for Use with PSS Certificates

AlgorithmSupportedComments
rsa_pss_pss_sha256YesRSA-PSS signature with SHA-256.
rsa_pss_pss_sha384YesAssumed sha384. Confirm before publishing.
rsa_pss_pss_sha512YesRSA-PSS signature with SHA-512.

ECDSA

AlgorithmSupportedComments
ecdsa_secp256r1_sha256YesECDSA with P-256 curve and SHA-256.
ecdsa_secp384r1_sha384YesECDSA with P-384 curve and SHA-384.

National Cyber Security Centre Ciphers (UK Government Compliance)

CiphersEnabledOptionalComments
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
YesNoThese ciphers conform to the Securing Government Email guidance issued by the National Cyber Security Centre (NCSC).
Was this article helpful?
2 out of 3 found this helpful

Comments

0 comments

Please sign in to leave a comment.