CERT_CHAIN_CONTEXT (Compact 2013)

3/28/2014

This structure contains an array of simple certificate chains and a trust status structure that indicates summary validity data on all of the connected simple chains.

Syntax

typedef struct _CERT_CHAIN_CONTEXT {
  DWORD cbSize;
  CERT_TRUST_STATUS TrustStatus;
  DWORD cChain;
  PCERT_SIMPLE_CHAIN* rgpChain;
} CERT_CHAIN_CONTEXT, *PCERT_CHAIN_CONTEXT;

Members

  • cbSize
    Size of this structure in bytes.
  • TrustStatus
    Structure that indicates the combined trust status of the simple chains array. The structure includes an error status code and an information status code. For information about status code values, see CERT_TRUST_STATUS.
  • cChain
    Number of simple chains in the array.
  • rgpChain
    Pointer to an array of CERT_SIMPLE_CHAIN structures. The element rgpChain[0] is the end certificate simple chain and rgpChain[cChain-1] is the final chain. If the end certificate is to be considered valid, the final chain must begin with a certificate contained in the root store or an otherwise trusted, self-signed certificate. If the original chain begins with a trusted certificate, there will be only a single simple chain in the array.

Remarks

When a CERT_CHAIN_CONTEXT structure is built, the first simple chain begins with an end certificate and ends with a self-signed certificate. If that self-signed certificate is not a root or otherwise trusted certificate, an attempt is made to build a new chain. This process continues building additional simple chains until the first self-signed certificate is a trusted certificate or until an additional simple chain cannot be built.

Requirements

Header

wincrypt.h

See Also

Reference

Cryptography Structures
CertGetCertificateChain
CERT_SIMPLE_CHAIN
CERT_TRUST_STATUS