estructura BCRYPT_DSA_KEY_BLOB_V2 (bcrypt.h)

La estructura BCRYPT_DSA_KEY_BLOB_V2 se usa como encabezado para una clave pública de algoritmo de firma digital (DSA) o blob de clave privada en memoria.

Sintaxis

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;

Miembros

dwMagic

Determina el tipo de clave que representa esta estructura. Puede ser uno de los valores siguientes.

Valor Significado
BCRYPT_DSA_PUBLIC_MAGIC_V2
0x32425044
La estructura representa una clave pública de DSA.
BCRYPT_DSA_PRIVATE_MAGIC_V2
0x32565044
La estructura representa una clave privada de DSA.

cbKey

Longitud, en bytes, de la clave.

hashAlgorithm

Valor de enumeración HASHALGORITHM_ENUM que especifica el algoritmo hash que se va a usar.

standardVersion

Valor de enumeración DSAFIPSVERSION_ENUM que especifica el Estándar federal de procesamiento de información (FIPS) que se va a aplicar.

cbSeedLength

Longitud del valor de inicialización utilizado para generar el número primo q en bytes.

cbGroupSize

Tamaño del número primo q en bytes. Actualmente, cuando la clave supera los 1024 bits de longitud, q es de 32 bytes de longitud.

Count[4]

Número de iteraciones realizadas para generar el número primo q a partir del valor de inicialización. Para obtener más información, consulte NIST standard FIPS186-3.

Comentarios

La estructura se aplica a las claves DSA que superan los 1024 bits de longitud, pero son menores o iguales que 3072 bits.

Esta estructura se usa como encabezado para un búfer mayor. Un BLOB de clave pública de DSA (BCRYPT_DSA_PUBLIC_BLOB) tiene el siguiente formato en memoria contigua. Los números Seed, q, Modulus, Generator y Public están en formato 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.

Un BLOB de clave privada de DSA (BCRYPT_DSA_PRIVATE_BLOB) tiene el formato siguiente en memoria contigua. Los números Seed, q, Modulus, Generator, Public y PrivateExponent están en formato 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.

Requisitos

   
Cliente mínimo compatible Windows 8 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2012 [solo aplicaciones de escritorio]
Encabezado bcrypt.h

Consulte también

BCryptExportKey

BCryptImportKeyPair