wincrypt.h (CRYPT_DECRYPT_MESSAGE_PARA 结构)

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

证书存储句柄数组。

这些证书存储句柄用于获取用于解密消息的 证书上下文 。 有关详细信息,请参阅解密函数 CryptDecryptMessageCryptDecryptAndVerifyMessageSignature。 加密邮件可以有一个或多个收件人。 收件人由唯一的证书标识符(通常是证书颁发者的 哈希 和序列号)标识。 搜索证书存储以查找与唯一标识符对应的证书上下文。

收件人也可以通过其 KeyId 进行标识。 支持密钥协议 (Diffie-Hellman) 和密钥传输 (RSA) 接收者。

只能使用存储区中具有以下属性之一的证书上下文,CERT_KEY_PROV_INFO_PROP_ID或CERT_KEY_CONTEXT_PROP_ID。 这些属性指定所需私钥交换密钥的位置。

dwFlags

CSP 可以将CRYPT_MESSAGE_SILENT_KEYSET_FLAG设置为禁止显示任何 UI。 有关 CRYPT_SILENT 标志的详细信息,请参阅 CryptAcquireContext

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 wincrypt.h

另请参阅

CryptDecryptAndVerifyMessageSignature

CryptDecryptMessage