Изменения TLS (Schannel SSP) в Windows 10 и Windows Server 2016
Изменения в наборе шифров
Windows 10 версии 1511 и Windows Server 2016 добавляют поддержку настройки порядка набора шифров с помощью мобильных Управление устройствами (MDM).
Сведения об изменениях порядка приоритета набора шифров см. в разделе "Наборы шифров" в Schannel.
Добавлена поддержка следующих наборов шифров:
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (RFC 5289) в Windows 10 версии 1507 и Windows Server 2016
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (RFC 5289) в Windows 10 версии 1507 и Windows Server 2016
ОтключениеByDefault для следующих наборов шифров:
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 (RFC 5246) в Windows 10 версии 1703
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 (RFC 5246) в Windows 10 версии 1703
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA (RFC 5246) в Windows 10 версии 1703
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA (RFC 5246) в Windows 10 версии 1703
- TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA (RFC 5246) в Windows 10 версии 1703
- TLS_RSA_WITH_RC4_128_SHA в Windows 10 версии 1709
- TLS_RSA_WITH_RC4_128_MD5 в Windows 10 версии 1709
Начиная с Windows 10 версии 1507 и Windows Server 2016, сертификаты SHA 512 поддерживаются по умолчанию.
Изменения ключа RSA
Windows 10 версии 1507 и Windows Server 2016 добавляют параметры конфигурации реестра для размеров ключей RSA клиента.
Дополнительные сведения см. в разделе "Размеры ключей KeyExchangeAlgorithm".
Изменения ключа Diffie-Hellman
Windows 10 версии 1507 и Windows Server 2016 добавляют параметры конфигурации реестра для размеров ключей Diffie-Hellman.
Дополнительные сведения см. в разделе "Размеры ключей KeyExchangeAlgorithm".
изменения параметров SCH_USE_STRONG_CRYPTO
В Windows 10 версии 1507 и Windows Server 2016 SCH_USE_STRONG_CRYPTO теперь отключает значения NULL, MD5, DES и экспорт шифров.
Изменения эллиптической кривой
Windows 10 версии 1507 и Windows Server 2016 добавляют конфигурацию групповой политики для эллиптических кривых в параметрах конфигурации администратора > > конфигурации > компьютера. Список порядка кривых ECC указывает порядок, в котором предпочтительны эллиптические кривые, а также включает поддерживаемые кривые, которые не включены.
Добавлена поддержка следующих эллиптических кривых:
- BrainpoolP256r1 (RFC 7027) в Windows 10 версии 1507 и Windows Server 2016
- BrainpoolP384r1 (RFC 7027) в Windows 10 версии 1507 и Windows Server 2016
- BrainpoolP512r1 (RFC 7027) в Windows 10 версии 1507 и Windows Server 2016
- Кривая25519 (RFC draft-ietf-tls-curve25519) в Windows 10 версии 1607 и Windows Server 2016
Поддержка уровня отправки для SealMessage и UnsealMessage
Windows 10 версии 1507 и Windows Server 2016 добавляют поддержку SealMessage/UnsealMessage на уровне отправки.
DTLS 1.2
Windows 10 версии 1607 и Windows Server 2016 добавляют поддержку DTLS 1.2 (RFC 6347).
пул потоков HTTP.SYS
Windows 10 версии 1607 и Windows Server 2016 добавляют конфигурацию реестра размера пула потоков, используемого для обработки подтверждения TLS для HTTP.SYS.
Путь к реестру:
HKLM\SYSTEM\CurrentControlSet\Control\LSA
Чтобы указать максимальный размер пула потоков на ядро ЦП, создайте запись MaxAsyncWorkerThreadsPerCpu . Эта запись не существует в реестре по умолчанию. После создания записи измените значение DWORD на нужный размер. Если не настроено, максимальное число потоков на ядро ЦП составляет 2.
Поддержка следующего согласования протоколов (NPN)
Начиная с Windows 10 версии 1703, следующий протокол переговоров (NPN) удален и больше не поддерживается.
Общий ключ (PSK)
Windows 10 версии 1607 и Windows Server 2016 добавляют поддержку алгоритма обмена ключами PSK (RFC 4279).
Добавлена поддержка следующих наборов шифров PSK:
- TLS_PSK_WITH_AES_128_CBC_SHA256 (RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
- TLS_PSK_WITH_AES_256_CBC_SHA384(RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
- TLS_PSK_WITH_NULL_SHA256 (RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
- TLS_PSK_WITH_NULL_SHA384 (RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
- TLS_PSK_WITH_AES_128_GCM_SHA256 (RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
- TLS_PSK_WITH_AES_256_GCM_SHA384 (RFC 5487) в Windows 10 версии 1607 и Windows Server 2016
Возобновление сеанса без улучшения производительности сервера на стороне сервера на стороне сервера
Windows 10 версии 1507 и Windows Server 2016 предоставляют 30% больше возобновлений сеансов в секунду с билетами на сеансы по сравнению с Windows Server 2012.
Хэш сеанса и расширение расширенного главного секрета
Windows 10 версии 1507 и Windows Server 2016 добавляют поддержку для RFC 7627: хэш сеанса TLS и расширенного расширения секрета master secret.
В связи с этим изменением Windows 10 и Windows Server 2016 требует обновления сторонних поставщиков SSL CNG для поддержки NCRYPT_SSL_INTERFACE_VERSION_3 и описания этого нового интерфейса.
Поддержка SSL
Начиная с Windows 10 версии 1607 и Windows Server 2016, клиент TLS и сервер SSL 3.0 по умолчанию отключены. Это означает, что если приложение или служба не запрашивает SSL 3.0 через SSPI, клиент никогда не будет предлагать или принимать SSL 3.0, а сервер никогда не будет выбирать SSL 3.0.
Начиная с Windows 10 версии 1607 и Windows Server 2016, ssl 2.0 удален и больше не поддерживается.
Изменения в соответствии с требованиями TLS Windows к TLS 1.2 для подключений с несоответствующим клиентам TLS
В TLS 1.2 клиент использует расширение "signature_algorithms", чтобы указать серверу, какие пары алгоритмов подписи и хэша могут использоваться в цифровых подписях (т. е. сертификатов сервера и обмена ключами сервера). Протокол TLS 1.2 RFC также требует, чтобы сообщение сертификата сервера учитывало расширение "signature_algorithms".
"Если клиент предоставил расширение "signature_algorithms", то все сертификаты, предоставленные сервером, должны быть подписаны парой хэш-алгоритмов и подписей, которая отображается в этом расширении".
На практике некоторые сторонние клиенты TLS не соответствуют протоколу TLS 1.2 RFC и не включают все пары сигнатур и хэш-алгоритмов, которые они готовы принять в расширении "signature_algorithms" или полностью опустить расширение (последний указывает на сервер, что клиент поддерживает только SHA1 с RSA, DSA или ECDSA).
Сервер TLS часто имеет только один сертификат, настроенный для каждой конечной точки, что означает, что сервер не всегда может предоставить сертификат, соответствующий требованиям клиента.
До Windows 10 и Windows Server 2016 стек TLS Windows строго соответствует требованиям TLS 1.2 RFC, что приводит к сбоям подключения с несоответствующим клиентам TLS RFC и проблемами взаимодействия. В Windows 10 и Windows Server 2016 ограничения расслаблены, и сервер может отправить сертификат, который не соответствует протоколу TLS 1.2 RFC, если это единственный вариант сервера. Затем клиент может продолжить или завершить подтверждение.
При проверке сертификатов сервера и клиента стек TLS Windows строго соответствует протоколу RFC TLS 1.2 и разрешает только согласованные алгоритмы подписи и хэша в сертификатах сервера и клиента.