BCRYPT_DH_KEY_BLOB Structure

The BCRYPT_DH_KEY_BLOB structure is used as a header for a Diffie-Hellman public key or private keyBLOB in memory.

Syntax

typedef struct _BCRYPT_DH_KEY_BLOB {
    ULONG dwMagic;
    ULONG cbKey;
} BCRYPT_DH_KEY_BLOB, *PBCRYPT_DH_KEY_BLOB;  

Members

dwMagic
Determines the type of key this structure represents. This can be one of the following values.

cbKey
The length, in bytes, of the key.

Remarks

This structure is used as a header for a larger buffer. A Diffie-Hellman public key BLOB (BCRYPT_DH_PUBLIC_BLOB) has the following format in contiguous memory. The Modulus, Generator, and Public numbers are in big-endian format.

Example

BCRYPT_DH_KEY_BLOB
Modulus[cbKey] // Big-endian.
Generator[cbKey] // Big-endian.
Public[cbKey] // Big-endian.  

A Diffie-Hellman private key BLOB (BCRYPT_DH_PRIVATE_BLOB) has the following format in contiguous memory. The Modulus, Generator, Public, and PrivateExponent numbers are in big-endian format.

Example

BCRYPT_DH_KEY_BLOB
Modulus[cbKey] // Big-endian.
Generator[cbKey] // Big-endian.
Public[cbKey] // Big-endian.
PrivateExponent[cbKey] // Big-endian.  

Requirements

Header: Declared in bcrypt.h.

Library: Use bcrypt.lib.