CRYPT_DECRYPT_MESSAGE_PARA構造体 (wincrypt.h)

CRYPT_DECRYPT_MESSAGE_PARA構造体には、メッセージの暗号化を解除するための情報が含まれています。

構文

typedef struct _CRYPT_DECRYPT_MESSAGE_PARA {
  DWORD      cbSize;
  DWORD      dwMsgAndCertEncodingType;
  DWORD      cCertStore;
  HCERTSTORE *rghCertStore;
  DWORD      dwFlags;
} CRYPT_DECRYPT_MESSAGE_PARA, *PCRYPT_DECRYPT_MESSAGE_PARA;

メンバー

cbSize

この構造体のサイズ (バイト単位)。

dwMsgAndCertEncodingType

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

X509_ASN_ENCODING |PKCS_7_ASN_ENCODING

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

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

cCertStore

rghCertStore 配列内の要素の数。

rghCertStore

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

これらの証明書ストア ハンドルは、メッセージの暗号化解除に使用する 証明書コンテキスト を取得するために使用されます。 詳細については、「復号化関数 CryptDecryptMessage」および「 CryptDecryptAndVerifyMessageSignature」を参照してください。 暗号化されたメッセージには、1 人以上の受信者を含めることができます。 受信者は一意の証明書識別子 (多くの場合、証明書発行者とシリアル番号の ハッシュ ) によって識別されます。 証明書ストアが検索され、一意の識別子に対応する証明書コンテキストが検索されます。

受信者は、KeyId で識別することもできます。 キー アグリーメント (Diffie-Hellman) とキー トランスポート (RSA) の両方の受信者がサポートされています。

次のいずれかのプロパティ、CERT_KEY_PROV_INFO_PROP_ID、またはCERT_KEY_CONTEXT_PROP_IDを持つストア内の証明書コンテキストのみを使用できます。 これらのプロパティは、必要な秘密交換キーの場所を指定します。

dwFlags

CRYPT_MESSAGE_SILENT_KEYSET_FLAGを設定して、CSP による UI を抑制できます。 CRYPT_SILENT フラグの詳細については、「 CryptAcquireContext」を参照してください。

要件

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

こちらもご覧ください

CryptDecryptAndVerifyMessageSignature

CryptDecryptMessage