PFN_CMSG_IMPORT_KEY_TRANS回调函数 (wincrypt.h)
PFN_CMSG_IMPORT_KEY_TRANS回调函数为信封邮件的密钥传输收件人导入内容加密密钥。 可以使用CryptoAPI对象标识符安装PFN_CMSG_IMPORT_KEY_TRANS。 当该函数的 dwCtrlType 参数设置为 CMSG_CTRL_DECRYPT时,CryptMsgControl 函数将调用此函数。
语法
PFN_CMSG_IMPORT_KEY_TRANS PfnCmsgImportKeyTrans;
BOOL PfnCmsgImportKeyTrans(
[in] PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
[in] PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara,
[in] DWORD dwFlags,
void *pvReserved,
[out] HCRYPTKEY *phContentEncryptKey
)
{...}
参数
[in] pContentEncryptionAlgorithm
指向 CRYPT_ALGORITHM_IDENTIFIER 结构的指针,该结构指定用于加密消息内容和任何关联参数的算法。
[in] pKeyTransDecryptPara
指向 CMSG_CTRL_KEY_TRANS_DECRYPT_PARA 结构的指针,该结构包含有关密钥传输收件人的信息。
[in] dwFlags
不使用此值。 将其设置为零。
pvReserved
此参数是保留的,必须为 NULL。
[out] phContentEncryptKey
此函数返回的内容加密密钥的句柄的地址。
返回值
如果函数成功,则返回值为非零 (TRUE) 。
如果函数失败,则返回值为零, (FALSE) 。 有关扩展的错误信息,请调用 GetLastError。
如果此回调函数不支持密钥加密算法,则必须返回 FALSE,并使用 E_NOTIMPL 调用 SetLastError。
注解
可以使用 OID 支持函数 来部署此回调函数。 Wincrypt.h 为此定义了以下常量。
一直 | 定义 |
---|---|
CMSG_OID_IMPORT_KEY_TRANS_FUNC或CMSG_OID_CAPI1_IMPORT_KEY_TRANS_FUNC | “CryptMsgDllImportKeyTrans” |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | wincrypt.h |