BCRYPT_DSA_PARAMETER_HEADER_V2 構造体 (bcrypt.h)
BCRYPT_DSA_PARAMETER_HEADER_V2構造体は、DSA キーを生成するための情報を含むデジタル署名アルゴリズム (DSA) パラメーター BLOB のヘッダーとして使用されます。 この構造体は、BCryptSetProperty 関数の BCRYPT_DSA_PARAMETERS プロパティと共に使用されます。
構文
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;
メンバー
cbLength
この構造体の合計サイズ (バイト単位)、およびメモリ内のこの構造体の直後にあるバッファー。
dwMagic
キーのマジック値。
このメンバーは、次の値である必要があります。
BCRYPT_DSA_PARAMETERS_MAGIC_V2 (0x324d5044)
cbKeyLength
この構造体が適用されるキーのサイズ (バイト単位)。
hashAlgorithm
使用するハッシュ アルゴリズムを指定するHASHALGORITHM_ENUM列挙値。
standardVersion
適用する連邦情報処理標準 (FIPS) を指定する DSAFIPSVERSION_ENUM 列挙値。
cbSeedLength
素数 q の生成に使用されるシードの長さ (バイト単位)。
cbGroupSize
素数 q のサイズ。 現在、キーの長さが 1024 ビットを超えると、 q は 32 バイトの長さになります。
Count[4]
シードから素数 q を生成するために実行される反復回数。 詳細については、「NIST standard FIPS186-3」を参照してください。
注釈
BCryptSetProperty 呼び出しでこの構造体を使用する場合、BCryptGenerateKeyPair 呼び出しで作成された DSA キーのパラメーターを設定するには、(cbKeyLength*8) が前に設定した dwLength と等しい必要があります。
構造体は、長さが 1024 ビットを超え、3072 ビット以下の DSA キーに適用されます。
この構造体は、より大きなバッファーのヘッダーとして使用されます。 DSA パラメーター BLOB は、連続したメモリ内に次の形式を持ちます。 Seed、q、Modulus、Generator はビッグ エンディアン形式です。
BCRYPT_DSA_PARAMETER_HEADER_V2
Seed[cbSeedLength] // Big-endian.
q[cbGroupSize] // Big-endian.
Modulus[cbKeyLength] // Big-endian.
Generator[cbKeyLength] // Big-endian.
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリのみ] |
Header | bcrypt.h |