CMSG_SIGNER_INFO structure (wincrypt.h)

The CMSG_SIGNER_INFO structure contains the content of the PKCS #7 defined SignerInfo in signed messages. In decoding a received message, CryptMsgGetParam is called for each signer to get a CMSG_SIGNER_INFO structure.

Syntax

typedef struct _CMSG_SIGNER_INFO {
  DWORD                      dwVersion;
  CERT_NAME_BLOB             Issuer;
  CRYPT_INTEGER_BLOB         SerialNumber;
  CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
  CRYPT_DATA_BLOB            EncryptedHash;
  CRYPT_ATTRIBUTES           AuthAttrs;
  CRYPT_ATTRIBUTES           UnauthAttrs;
} CMSG_SIGNER_INFO, *PCMSG_SIGNER_INFO;

Members

dwVersion

The version of this structure.

Issuer

A CERT_NAME_BLOB structure that contains the issuer of a certificate with the public key needed to verify a signature.

SerialNumber

A CRYPT_INTEGER_BLOB structure that contains the serial number of the certificate that contains the public key needed to verify a signature. For more information, see CERT_INFO.

HashAlgorithm

CRYPT_ALGORITHM_IDENTIFIER structure specifying the algorithm used in generating the hash of a message.

HashEncryptionAlgorithm

CRYPT_ALGORITHM_IDENTIFIER structure specifying the algorithm used to encrypt the hash.

EncryptedHash

A CRYPT_DATA_BLOB that contains the encrypted hash of the message, the signature.

AuthAttrs

CRYPT_ATTRIBUTES structure containing authenticated attributes of the signer.

UnauthAttrs

CRYPT_ATTRIBUTES structure containing unauthenticated attributes of the signer.

Requirements

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

See also

CRYPT_ALGORITHM_IDENTIFIER

CRYPT_ATTRIBUTES

CRYPT_INTEGER_BLOB