структура BCRYPT_DSA_KEY_BLOB_V2 (bcrypt.h)
Структура BCRYPT_DSA_KEY_BLOB_V2 используется в качестве заголовка для алгоритма цифровой подписи (DSA) открытого ключа или закрытого ключаBLOB в памяти.
Синтаксис
typedef struct _BCRYPT_DSA_KEY_BLOB_V2 {
ULONG dwMagic;
ULONG cbKey;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_KEY_BLOB_V2, *PBCRYPT_DSA_KEY_BLOB_V2;
Члены
dwMagic
Определяет тип ключа, представляющего эту структуру. Это может быть одно из следующих значений.
Ценность | Значение |
---|---|
|
Структура представляет открытый ключ DSA. |
|
Структура представляет закрытый ключ DSA. |
cbKey
Длина ключа в байтах.
hashAlgorithm
Значение перечисления HASHALGORITHM_ENUM, указывающее используемый алгоритм хэширования.
standardVersion
Значение перечисления DSAFIPSVERSION_ENUM, указывающее федеральный стандарт обработки информации (FIPS).
cbSeedLength
Длина начального значения, используемого для создания основного числа q в байтах.
cbGroupSize
Размер основного числа q в байтах. В настоящее время, когда ключ превышает 1024 бита длиной, q составляет 32 байта.
Count[4]
Количество итераций, выполняемых для создания простого числа q из начального значения. Дополнительные сведения см. в статье NIST standard FIPS186-3.
Замечания
Структура применяется к ключам DSA, превышающим длину 1024 бита, но меньше или равно 3072 битам.
Эта структура используется в качестве заголовка для большего буфера. В общедоступного ключа (BCRYPT_DSA_PUBLIC_BLOB) dsA имеется следующий формат в непрерывной памяти. Начальное значение, q, Modulus, генератор и общедоступные номера находятся в формате big-endian.
BCRYPT_DSA_KEY_BLOB_V2
Seed[cbSeedLength] // Big-endian.
q[cbGroupSize] // Big-endian.
Modulus[cbKey] // Big-endian.
Generator[cbKey] // Big-endian.
Public[cbKey] // Big-endian.
В BLOB-объекта
BCRYPT_DSA_KEY_BLOB_V2
Seed[cbSeedLength] // Big-endian.
q[cbGroupSize] // Big-endian.
Modulus[cbKey] // Big-endian.
Generator[cbKey] // Big-endian.
Public[cbKey] // Big-endian.
PrivateExponent[cbGroupSize] // Big-endian.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8 [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2012 [только классические приложения] |
заголовка | bcrypt.h |