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


структура BCRYPT_DSA_KEY_BLOB_V2 (bcrypt.h)

Структура BCRYPT_DSA_KEY_BLOB_V2 используется в качестве заголовка для открытого ключаалгоритма цифровой подписи (DSA) или большого двоичного объектазакрытого ключа в памяти.

Синтаксис

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

Определяет тип ключа, который представляет данная структура. Это может быть одно из следующих значений.

Значение Значение
BCRYPT_DSA_PUBLIC_MAGIC_V2
0x32425044
Структура представляет открытый ключ DSA.
BCRYPT_DSA_PRIVATE_MAGIC_V2
0x32565044
Структура представляет закрытый ключ DSA.

cbKey

Длина ключа в байтах.

hashAlgorithm

Значение перечисления HASHALGORITHM_ENUM , указывающее используемый алгоритм хэширования.

standardVersion

Значение перечисления DSAFIPSVERSION_ENUM , указывающее применяемый федеральный стандарт обработки информации (FIPS).

cbSeedLength

Длина начального значения, используемого для создания простого числа q в байтах.

cbGroupSize

Размер простого числа q в байтах. В настоящее время, если длина ключа превышает 1024 бита, длина q составляет 32 байта.

Count[4]

Количество итераций, выполненных для создания простого числа q из начального значения. Дополнительные сведения см. в статье Стандарт NIST FIPS186-3.

Комментарии

Структура применяется к ключам DSA, длина которых превышает 1024 бита, но меньше или равна 3072 бита.

Эта структура используется в качестве заголовка для буфера большего размера. Большой двоичный объект с открытым ключом DSA (BCRYPT_DSA_PUBLIC_BLOB) имеет следующий формат в непрерывной памяти. Начальные значения, q, модуль, генератор и общедоступные номера имеют формат 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.

Большой двоичный объект с закрытым ключом DSA (BCRYPT_DSA_PRIVATE_BLOB) имеет следующий формат в непрерывной памяти. Числа Seed, q, Modulus, Generator, Public и Private Exponent имеют формат 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.
PrivateExponent[cbGroupSize]    // Big-endian.

Требования

   
Минимальная версия клиента Windows 8 [только классические приложения]
Минимальная версия сервера Windows Server 2012 [только классические приложения]
Верхняя часть bcrypt.h

См. также раздел

BCryptExportKey

BCryptImportKeyPair