Поставщики алгоритмов шифрования CNG

В отличие от API шифрования (CryptoAPI), API шифрования: следующее поколение (CNG) отделяет поставщиков шифрования от поставщиков хранилища ключей. Базовые операции алгоритма шифрования, такие как хэширование и подписывание, называются примитивными операциями или просто примитивами. CNG включает поставщик, реализующий следующие алгоритмы.

Симметричные алгоритмы

Имя Поддерживаемые режимы Размер ключа в битах (по умолчанию, минимум или максимум)
Стандарт AES (Advanced Encryption Standard) ECB, CBC, CFB8, CFB128, GCM, CCM, GMAC, CMAC, AES Key Wrap, XTS
Windows 8: Начинается поддержка режимов CFB128 и CMAC.
Windows 10: Начинается поддержка режима XTS-AES.
128/192/256
Стандарт шифрования данных (DES) ECB, CBC, CFB8, CFB64
Windows 8: Начинается поддержка режима CFB64.
56/56/56
Data Encryption Standard XORed(DESX) ECB, CBC, CFB8, CFB64
Windows 8: Начинается поддержка режима CFB64.
192/192/192
Стандарт тройного шифрования данных (3DES) ECB, CBC, CFB8, CFB64
Windows 8: Начинается поддержка режима CFB64.
112/168
RSA Data Security 2 (RC2) Поддерживаются режимы ECB, CBC, CFB8, CFB64.
Windows 8: Начинается поддержка режима CFB64.
От 16 до 128 с шагом 8 бит
RsA Data Security 4 (RC4) От 8 до 512 с шагом 8 бит

Асимметричные алгоритмы

Имя Примечания Размер ключа в битах (по умолчанию, минимум или максимум)
Алгоритм цифровой подписи (DSA) Реализация соответствует стандарту FIPS 186-3 для ключей размером от 1024 до 3072 бит.
Реализация соответствует стандарту FIPS 186-2 для размеров ключей от 512 до 1024 бит.
От 512 до 3072 с шагом в 64-разрядных версиях
Windows 8: Начинается поддержка 3072-разрядного ключа.
RSA Включает алгоритмы RSA, использующие PKCS1, кодирование или заполнение оптимальным асимметричным шифрованием (OAEP) или заполнение вероятностной схемы подписи (PSS) в виде открытого текста. От 512 до 16384 с шагом в 64-разрядных версиях
Алгоритм цифровой подписи на эллиптических кривых (ECDSA) Включает кривые, использующие открытые ключи 256, 384 и 521 бит, как указано в FIPS 186-3. Примечание: Чтобы отобразить все именованные эллиптические кривые, используйте certutil displayEccCurve.
256/384/521

Алгоритмы хеширования

Имя Примечания Размер ключа в битах (по умолчанию, минимум или максимум)
Безопасный хэш-алгоритм 1 (SHA1) Включает HmacSha1 160/160/160
Безопасный хэш-алгоритм 256 (SHA256) Включает HmacSha256 256/256/256
Безопасный хэш-алгоритм 384 (SHA384) Включает HmacSha384 384/384/384
Безопасный хэш-алгоритм 512 (SHA512) Включает HmacSha512 512/512/512
Дайджест сообщения 2 (MD2) Включает HmacMd2 128/128/128
Дайджест сообщений 4 (MD4) Включает HmacMd4 128/128/128
Дайджест сообщения 5 (MD5) Включает HmacMd5 128/128/128

Алгоритмы обмена ключами

Имя алгоритма Примечания Размер ключа в битах (по умолчанию, минимум или максимум)
алгоритм обмена ключами Diffie-Hellman От 512 до 4096 с шагом 64-разрядной версии
Diffie-Hellman эллиптических кривых (ECDH) Включает кривые, использующие открытые ключи 256, 384 и 521 бит, как указано в sp800-56A. 256/384/521

Идентификаторы алгоритма CNG

Криптографические примитивные функции CNG

Основные сведения о поставщиках служб шифрования