wincrypt.h) (CERT_STRONG_SIGN_SERIALIZED_INFO 结构
包含可用于强 签名的签名算法/哈希算法 和 公钥算法/位长度 对。 此结构由 CERT_STRONG_SIGN_PARA 结构使用。
语法
typedef struct _CERT_STRONG_SIGN_SERIALIZED_INFO {
DWORD dwFlags;
LPWSTR pwszCNGSignHashAlgids;
LPWSTR pwszCNGPubKeyMinBitLengths;
} CERT_STRONG_SIGN_SERIALIZED_INFO, *PCERT_STRONG_SIGN_SERIALIZED_INFO;
成员
dwFlags
默认情况下,证书强签名参数不适用于证书吊销列表 (CRL) 或联机证书状态协议 (OCSP) 响应。 可以设置以下一个或两个值,以对 CRL 和 OCSP 响应启用强签名。
值 | 含义 |
---|---|
|
启用 CRL 的强签名。 |
|
启用 OCSP 响应的强签名。 |
pwszCNGSignHashAlgids
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含一组 签名算法/哈希算法 对。 Unicode 分号 (L“;”) 分隔对。 下面的示例对此进行了展示。
L"RSA/SHA256;RSA/SHA384;ECDSA/SHA256;ECDSA/SHA384"
支持以下签名算法:
- L“RSA” (BCRYPT_RSA_ALGORITHM)
- L“DSA” (BCRYPT_DSA_ALGORITHM)
- L“ECDSA” (SSL_ECDSA_ALGORITHM)
不支持以下签名算法:
- L“ECDSA_P256” (BCRYPT_ECDSA_P256_ALGORITHM)
- L“ECDSA_P384” (BCRYPT_ECDSA_P384_ALGORITHM)
- L“ECDSA_P521” (BCRYPT_ECDSA_P521_ALGORITHM)
支持以下哈希算法:
- L“MD5” (BCRYPT_MD5_ALGORITHM)
- L“SHA1” (BCRYPT_SHA1_ALGORITHM)
- L“SHA256” (BCRYPT_SHA256_ALGORITHM)
- L“SHA256” (BCRYPT_SHA256_ALGORITHM)
- L“SHA512” (BCRYPT_SHA512_ALGORITHM)
pwszCNGPubKeyMinBitLengths
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含一组 公钥算法/位长度 对。 Unicode 分号 (L“;”) 分隔对。 下面的示例对此进行了展示。
L”RSA/2048;ECDSA/256”
支持以下公钥算法:
- L“RSA” (BCRYPT_RSA_ALGORITHM)
- L“DSA” (BCRYPT_DSA_ALGORITHM)
- L“ECDSA” (SSL_ECDSA_ALGORITHM)
注解
此结构由以下函数直接引用 的 CERT_STRONG_SIGN_PARA 结构使用:
此外, CERT_STRONG_SIGN_PARA 由以下内容间接引用:- CryptDecodeMessage
- CryptDecryptAndVerifyMessageSignature
- CertGetCertificateChain
- CertSelectCertificateChains
- CryptVerifyDetachedMessageSignature
- CryptVerifyMessageSignature
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
标头 | wincrypt.h |