PFN_CMSG_IMPORT_KEY_AGREE回调函数 (wincrypt.h)

PFN_CMSG_IMPORT_KEY_AGREE 回调函数为信封邮件的密钥传输收件人导入内容加密密钥。 可以使用 CryptoAPI对象标识符(OID)来安装 PFN_CMSG_IMPORT_KEY_AGREEdwCtrlType 参数设置为 CMSG_CTRL_DECRYPT时,CryptMsgControl 函数调用此函数。

语法

PFN_CMSG_IMPORT_KEY_AGREE PfnCmsgImportKeyAgree;

BOOL PfnCmsgImportKeyAgree(
  [in]  PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
  [in]  PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara,
  [in]  DWORD dwFlags,
        void *pvReserved,
  [out] HCRYPTKEY *phContentEncryptKey
)
{...}

参数

[in] pContentEncryptionAlgorithm

指向 CRYPT_ALGORITHM_IDENTIFIER 结构的指针,该结构指定用于加密消息内容和任何关联参数的算法。

[in] pKeyAgreeDecryptPara

指向包含密钥协议接收方信息的 CMSG_CTRL_KEY_AGREE_DECRYPT_PARA 结构的指针。

[in] dwFlags

不使用此值。 将其设置为零。

pvReserved

此参数是保留的,必须 NULL

[out] phContentEncryptKey

此函数返回的内容加密密钥句柄的地址。

返回值

如果函数成功,则返回值为非零(TRUE)。

如果函数失败,则返回值为零(FALSE)。 有关扩展错误信息,请调用 GetLastError

如果此回调函数不支持密钥加密算法,则必须返回 FALSE,并使用 E_NOTIMPL调用 SetLastError

言论

可以使用 OID 支持函数 部署此回调函数。 Wincrypt.h 为此定义以下常量。

不断 定义
CMSG_OID_IMPORT_KEY_AGREE_FUNC或CMSG_OID_CAPI1_IMPORT_KEY_AGREE_FUNC “CryptMsgDllImportKeyAgree”

要求

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