次の方法で共有


CTL_CONTEXT 構造体 (wincrypt.h)

CTL_CONTEXT構造体には、CTL のエンコードされた表現とデコードされた表現の両方が含まれています。 また、内部コンテンツとしてCTL_INFOを含む、デコードされた暗号化署名付きメッセージに対する開かれた HCRYPTMSG ハンドルも含まれています。

CryptoAPI の低レベルメッセージ関数 を使用して、追加の署名者情報を抽出できます。

CryptoAPI 関数によって返される CTL_CONTEXT は、 CertFreeCTLContext 関数を呼び出すことによって解放する必要があります。

構文

typedef struct _CTL_CONTEXT {
  DWORD      dwMsgAndCertEncodingType;
  BYTE       *pbCtlEncoded;
  DWORD      cbCtlEncoded;
  PCTL_INFO  pCtlInfo;
  HCERTSTORE hCertStore;
  HCRYPTMSG  hCryptMsg;
  BYTE       *pbCtlContent;
  DWORD      cbCtlContent;
} CTL_CONTEXT, *PCTL_CONTEXT;

メンバー

dwMsgAndCertEncodingType

使用されるエンコードの種類。 次の例に示すように、証明書と メッセージエンコードの両方の種類 をビットごとの OR 操作と組み合わせて指定することは、常に許容されます。

X509_ASN_ENCODING |PKCS_7_ASN_ENCODING

現在定義されているエンコードの種類は次のとおりです。

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

pbCtlEncoded

エンコードされた CTL へのポインター。

cbCtlEncoded

エンコードされた CTL のサイズ (バイト単位)。

pCtlInfo

構造体へのポインター CTL_INFO CTL 情報が含まれています。

hCertStore

証明書ストアへのハンドル。

hCryptMsg

CTL_INFO内部コンテンツとして含む、デコードされた暗号化署名付きメッセージへの HCRYPTMSG ハンドルを開きます。

pbCtlContent

署名されたメッセージのエンコードされた 内部コンテンツ

cbCtlContent

pbCtlContent のカウント (バイト単位)。

要件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header wincrypt.h

関連項目

CTL_INFO

CertAddCTLContextToStore

CertAddEncodedCTLToStore

CertCreateCTLContext

CertEnumCTLsInStore

CertFindCTLInStore

CertFindSubjectInCTL

CertFreeCTLContext

CryptMsgGetAndVerifySigner

CryptMsgSignCTL