TLS Cipher Suites in Windows Vista
A cipher suite is a set of cryptographic algorithms. Schannel protocols use algorithms from a cipher suite to create keys and encrypt information. A cipher suite specifies one algorithm for each of the following tasks:
- Key exchange
- Bulk encryption
- Message authentication
Key exchange algorithms protect information required to create shared keys. These algorithms are asymmetric (public key algorithms) and perform well for relatively small amounts of data.
Bulk encryption algorithms encrypt messages exchanged between clients and servers. These algorithms are symmetric and perform well for large amounts of data.
Message authentication algorithms generate message hashes and signatures that ensure the integrity of a message.
Developers specify these elements by using ALG_ID data types. For more information, see Specifying Schannel Ciphers and Cipher Strengths.
Schannel supports the following cipher suites. The suites are listed in the default order in which they are chosen by the Microsoft Schannel Provider.
Important
HTTP/2 web services fail with non-HTTP/2-compatible cipher suites. To ensure your web services function with HTTP/2 clients and browsers, see How to deploy custom cipher suite ordering.
Cipher suite | FIPS mode enabled | Exchange | Encryption | Hash | Protocols |
---|---|---|---|---|---|
TLS_RSA_WITH_AES_128_CBC_SHA | Yes | RSA | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_RSA_WITH_AES_256_CBC_SHA | Yes | RSA | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_RSA_WITH_RC4_128_SHA | No | RSA | RC4 | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0 |
TLS_RSA_WITH_3DES_EDE_CBC_SHA | Yes | RSA | 3DES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P256 | Yes | ECDH_P256 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P384 | Yes | ECDH_P384 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P521 | Yes | ECDH_P521 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P256 | Yes | ECDH_P256 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P384 | Yes | ECDH_P384 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P521 | Yes | ECDH_P521 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256 | Yes | ECDH_P256 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P384 | Yes | ECDH_P384 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P521 | Yes | ECDH_P521 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256 | Yes | ECDH_P256 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384 | Yes | ECDH_P384 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P521 | Yes | ECDH_P521 | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA | Yes | DH | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA | Yes | DH | AES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0 |
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA | Yes | DH | 3DES | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0 |
TLS_RSA_WITH_RC4_128_MD5 | No | RSA | RC4 | MD5 | TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0 |
SSL_CK_RC4_128_WITH_MD5 | No | RSA | RC4 | MD5 | SSL 2.0 |
SSL_CK_DES_192_EDE3_CBC_WITH_MD5 | No | RSA | 3DES | MD5 | SSL 2.0 |
TLS_RSA_WITH_NULL_MD5 | No | RSA | MD5 | TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0 | |
TLS_RSA_WITH_NULL_SHA | No | RSA | SHA1 | TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0 |
The following cipher suites are supported by Schannel; however, they are not present by default. They must be added as necessary. For information about how to add cipher suites to the Schannel provider, see Prioritizing Schannel Cipher Suites.
- TLS_RSA_EXPORT_WITH_RC4_40_MD5
- TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
- TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
- SSL_CK_RC4_128_EXPORT40_MD5
- SSL_CK_DES_64_CBC_WITH_MD5
- TLS_RSA_WITH_DES_CBC_SHA
- TLS_RSA_WITH_NULL_MD5
- TLS_RSA_WITH_NULL_SHA
- TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
- TLS_DHE_DSS_WITH_DES_CBC_SHA
Windows Server 2003 and Windows XP: For information about supported cipher suites, see the following topics.
Topic | Description |
---|---|
TLS Cipher Suites | Information about the cipher suites available with the TLS protocol in Windows Server 2003 and Windows XP. |
Secure Sockets Layer Protocol | General information about SSL 2.0 and 3.0, including the available cipher suites in Windows Server 2003 and Windows XP. |