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 响应启用强签名。

含义
CERT_STRONG_SIGN_ENABLE_CRL_CHECK
0x1
启用 CRL 的强签名。
CERT_STRONG_SIGN_ENABLE_OCSP_CHECK
0x2
启用 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 由以下内容间接引用:

要求

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

另请参阅

CERT_STRONG_SIGN_PARA