CMSG_KEY_AGREE_RECIPIENT_INFO structure (wincrypt.h)

The CMSG_KEY_AGREE_RECIPIENT_INFO structure contains information used for key agreement algorithms.

Syntax

typedef struct _CMSG_KEY_AGREE_RECIPIENT_INFO {
  DWORD                              dwVersion;
  DWORD                              dwOriginatorChoice;
  union {
    CERT_ID              OriginatorCertId;
    CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
  } DUMMYUNIONNAME;
  CRYPT_DATA_BLOB                    UserKeyingMaterial;
  CRYPT_ALGORITHM_IDENTIFIER         KeyEncryptionAlgorithm;
  DWORD                              cRecipientEncryptedKeys;
  PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO *rgpRecipientEncryptedKeys;
} CMSG_KEY_AGREE_RECIPIENT_INFO, *PCMSG_KEY_AGREE_RECIPIENT_INFO;

Members

dwVersion

A DWORD that indicates the version of the structure. Always set to three.

dwOriginatorChoice

A DWORD that indicates the key identifier to use.

This member can be one of the following values.

Value Meaning
CMSG_KEY_AGREE_ORIGINATOR_CERT
OriginatorCertId
CMSG_KEY_AGREE_ORIGINATOR_PUBLIC_KEY
OriginatorPublicKeyInfo

DUMMYUNIONNAME

DUMMYUNIONNAME.OriginatorCertId

A CERT_ID that identifies the public key of the message originator.

DUMMYUNIONNAME.OriginatorPublicKeyInfo

A CERT_PUBLIC_KEY_INFO structure that contains the public key of the message originator.

UserKeyingMaterial

A CRYPT_DATA_BLOB that indicates that a different key is generated each time the same two parties generate a pair of keys. The sender provides the bits of this BLOB with some key agreement algorithms. This member can be NULL.

KeyEncryptionAlgorithm

A CRYPT_ALGORITHM_IDENTIFIER that identifies the key-encryption algorithm and any associated parameters used to encrypt the content encryption key.

cRecipientEncryptedKeys

The number of elements in the rgpRecipientEncryptedKeys array.

rgpRecipientEncryptedKeys

The address of an array of CMSG_RECIPIENT_ENCRYPTED_KEY_INFO structures that contains information about the key recipients. The cRecipientEncryptedKeys member contains the number of elements in this array.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header wincrypt.h