CRYPT_KEY_SIGN_MESSAGE_PARA 结构 (wincrypt.h)
CRYPT_KEY_SIGN_MESSAGE_PARA 结构包含有关加密服务提供程序 (CSP) 和用于对消息进行签名的算法的信息。
语法
typedef struct _CRYPT_KEY_SIGN_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
union {
HCRYPTPROV hCryptProv;
NCRYPT_KEY_HANDLE hNCryptKey;
} DUMMYUNIONNAME;
DWORD dwKeySpec;
CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
void *pvHashAuxInfo;
CRYPT_ALGORITHM_IDENTIFIER PubKeyAlgorithm;
} CRYPT_KEY_SIGN_MESSAGE_PARA, *PCRYPT_KEY_SIGN_MESSAGE_PARA;
成员
cbSize
此数据结构的大小(以字节为单位)。
dwMsgAndCertEncodingType
指定使用的消息类型和证书编码。 这可以是以下一个或多个值的组合。
值 | 含义 |
---|---|
|
指定 X.509 证书编码。 |
|
指定 PKCS 7 消息编码。 |
DUMMYUNIONNAME
DUMMYUNIONNAME.hCryptProv
用于对消息进行签名的 CSP 的句柄。 调用 CryptAcquireContext 函数以获取此句柄。
DUMMYUNIONNAME.hNCryptKey
加密 API 的句柄:下一代 (CNG) CSP 用于对消息进行签名。 CNG 签名算法仅在 CNG 函数中受支持。
dwKeySpec
标识用于对消息进行签名的 私钥 类型。 这必须是以下值之一。 如果在 hNCryptKey 成员中传递 CNG 密钥,则忽略此成员。
值 | 含义 |
---|---|
|
使用密钥交换密钥。 |
|
使用数字签名密钥。 |
HashAlgorithm
一个 CRYPT_ALGORITHM_IDENTIFIER 结构,指定用于生成消息哈希的算法。 这必须是哈希算法。
pvHashAuxInfo
此成员未使用,必须设置为 NULL。
PubKeyAlgorithm
CRYPT_ALGORITHM_IDENTIFIER结构,指定用于对消息进行签名的算法。 这必须是公钥或签名算法。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | wincrypt.h |