BCRYPT_DSA_PARAMETER_HEADER_V2-Struktur (bcrypt.h)
Die BCRYPT_DSA_PARAMETER_HEADER_V2-Struktur wird als Header für ein DSA-Parameter-BLOB (Digital Signature Algorithm) verwendet, das Informationen zum Generieren eines DSA-Schlüssels enthält. Diese Struktur wird mit der BCRYPT_DSA_PARAMETERS-Eigenschaft in der Funktion BCryptSetProperty verwendet.
Syntax
typedef struct _BCRYPT_DSA_PARAMETER_HEADER_V2 {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_PARAMETER_HEADER_V2;
Member
cbLength
Die Gesamtgröße dieser Struktur in Bytes und der Puffer, der dieser Struktur unmittelbar im Arbeitsspeicher folgt.
dwMagic
Der Magische Wert für den Schlüssel.
Dieser Member muss der folgende Wert sein.
BCRYPT_DSA_PARAMETERS_MAGIC_V2 (0x324d5044)
cbKeyLength
Die Größe des Schlüssels in Bytes, auf den diese Struktur angewendet wird.
hashAlgorithm
Ein HASHALGORITHM_ENUM Enumerationswert, der den zu verwendenden Hashingalgorithmus angibt.
standardVersion
Ein DSAFIPSVERSION_ENUM Enumerationswert, der den anzuwendenden Federal Information Processing Standard (FIPS) angibt.
cbSeedLength
Länge des Ausgangswerts, der zum Generieren der Primzahl q in Bytes verwendet wird.
cbGroupSize
Größe der Primzahl q. Wenn der Schlüssel derzeit eine Länge von 1024 Bit überschreitet, ist q 32 Byte lang.
Count[4]
Die Anzahl der Iterationen, die ausgeführt werden, um die Primzahl q aus dem Startwert zu generieren. Weitere Informationen finden Sie unter NIST-Standard FIPS186-3.
Hinweise
Wenn Sie diese Struktur in einem BCryptSetProperty-Aufruf verwenden, müssen die Parameter für einen in einem BCryptGenerateKeyPair-Aufruf erstellten DSA-Schlüssel (cbKeyLength*8) dem zuvor festgelegten dwLength entsprechen.
Die -Struktur gilt für DSA-Schlüssel, die eine Länge von mehr als 1024 Bit aufweisen, aber kleiner oder gleich 3072 Bit sind.
Diese Struktur wird als Header für einen größeren Puffer verwendet. Das DSA-Parameterblob hat das folgende Format im zusammenhängenden Arbeitsspeicher. Seed, q, Modulus und Generator haben das Big-Endian-Format.
BCRYPT_DSA_PARAMETER_HEADER_V2
Seed[cbSeedLength] // Big-endian.
q[cbGroupSize] // Big-endian.
Modulus[cbKeyLength] // Big-endian.
Generator[cbKeyLength] // Big-endian.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Kopfzeile | bcrypt.h |