共用方式為


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

決定這個結構所代表的索引鍵類型。 這可以是下列其中一個值。

價值 意義
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。

言論

結構適用於長度超過1024位但小於或等於3072位的 DSA 金鑰。

這個結構會做為較大緩衝區的標頭。 DSA 公鑰 BLOB (BCRYPT_DSA_PUBLIC_BLOB) 在連續記憶體中具有下列格式。 Seed、q、Modulus、Generator 和 Public 數位格式為 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 私鑰 BLOB (BCRYPT_DSA_PRIVATE_BLOB) 在連續記憶體中具有下列格式。 Seed、q、Modulus、Generator、Public 和 PrivateExponent 數位的格式為 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