Поделиться через


структура CRYPTO_SETTINGS (schannel.h)

Указывает отключенные параметры шифрования.

Синтаксис

typedef struct _CRYPTO_SETTINGS {
  eTlsAlgorithmUsage eAlgorithmUsage;
  UNICODE_STRING     strCngAlgId;
  DWORD              cChainingModes;
  PUNICODE_STRING    rgstrChainingModes;
  DWORD              dwMinBitLength;
  DWORD              dwMaxBitLength;
} CRYPTO_SETTINGS, *PCRYPTO_SETTINGS;

Члены

eAlgorithmUsage

Алгоритм, используемый в перечислении eTlsAlgorithmUsage.

Ценность Алгоритм
TlsParametersCngAlgUsageKeyExchange Алгоритм обмена ключами.
(например RSA, ECDHE, DHE)
TlsParametersCngAlgUsageSignature Алгоритм подписи.
(например RSA, DSA, ECDSA)
TlsParametersCngAlgUsageCipher Алгоритм шифрования.
(например AES, DES, RC4)
TlsParametersCngAlgUsageDigest Дайджест набора шифров.
(например SHA1, SHA256, SHA384)
TlsParametersCngAlgUsageCertSig Подпись и (или) хэш, используемый для подписи сертификата.
(например RSA, DSA, ECDSA, SHA1, SHA256)

strCngAlgId

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

Параметры шифрования игнорируются, если указанный алгоритм не используется поддерживаемым, включенным набором шифров или доступными учетными данными.

cChainingModes

Количество записей в массиве rgstrChainingModes.

Установите значение 0, если strCngAlgId не имеет режима цепочки (например, BCRYPT_SHA384_ALGORITHM). Это ошибка для указания более SCH_CRED_MAX_SUPPORTED_CHAINING_MODES.

rgstrChainingModes

Массив идентификаторов режима цепочки CNG.

Задайте значение NULL, если strCngAlgId не имеет режима цепочки (например, BCRYPT_SHA384_ALGORITHM).

dwMinBitLength

Минимальная длина бита для указанного алгоритма CNG.

Если значение 0, schannel использует системные значения по умолчанию. Установите значение 0, если алгоритм CNG подразумевает битовую длину (например, BCRYPT_ECDH_P521_ALGORITHM).

dwMaxBitLength

Максимальная длина бита для указанного алгоритма CNG.

Если значение 0, schannel использует системные значения по умолчанию. Установите значение 0, если алгоритм CNG подразумевает битовую длину (например, BCRYPT_ECDH_P521_ALGORITHM).

Замечания

Следующая константа отличается от разных режимов заполнения RSA и может быть указана в поле strCngAlgId. Любой из этих режимов можно указать вместо идентификатора алгоритма CNG.

#define SCHANNEL_RSA_PSS_PADDING_ALGORITHM L"SCH_RSA_PSS_PAD"
#define SCHANNEL_RSA_PKCS_PADDING_ALGORITHM L"SCH_RSA_PKCS_PAD"

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10 1809 [только классические приложения]
минимальный поддерживаемый сервер Windows Server 1809 [только классические приложения]
заголовка schannel.h

См. также

SCH_CREDENTIALS

TLS_PARAMETERS

eTlsAlgorithmUsage