CERT_STRONG_SIGN_PARA 结构 (wincrypt.h)

包含用于检查证书上的强签名的参数、证书吊销列表 (CRL) 、联机证书状态协议 (OCSP) 响应和 PKCS #7 消息。

语法

typedef struct _CERT_STRONG_SIGN_PARA {
  DWORD cbSize;
  DWORD dwInfoChoice;
  union {
    void                              *pvInfo;
    PCERT_STRONG_SIGN_SERIALIZED_INFO pSerializedInfo;
    LPSTR                             pszOID;
  } DUMMYUNIONNAME;
} CERT_STRONG_SIGN_PARA, *PCERT_STRONG_SIGN_PARA;

成员

cbSize

此结构的大小(以字节为单位)。

dwInfoChoice

指示哪个嵌套联合成员指向强签名信息。 这可以是以下值之一:

说明
CERT_STRONG_SIGN_SERIALIZED_INFO_CHOICE 指定 pSerializedInfo 成员。
CERT_STRONG_SIGN_OID_INFO_CHOICE 指定 pszOID 成员。

DUMMYUNIONNAME

包含可用于检查签名是否强的参数的联合。 参数由 签名算法 / 哈希算法 对和 公钥算法 / 位长度 对组成。

DUMMYUNIONNAME.pvInfo

保留。

DUMMYUNIONNAME.pSerializedInfo

指向指定参数 的CERT_STRONG_SIGN_SERIALIZED_INFO 结构的指针。

DUMMYUNIONNAME.pszOID

指向包含对象标识符的字符串的指针 (OID) 表示可用于强签名检查的预定义参数。 这可以是以下值之一:

含义
szOID_CERT_STRONG_SIGN_OS_1
"1.3.6.1.4.1.311.72.1.1"
支持 SHA2 哈希算法。 不支持 MD2、MD4、MD5 和 SSHA1。

签名和公钥算法可以是 RSA 或 ECDSA。 不支持 DSA 算法。 RSA 算法的密钥大小必须等于或大于 2047 位。 ECDSA 算法的密钥大小必须等于或大于 256 位。

已启用 CRL 和 OCSP 响应的强签名。

szOID_CERT_STRONG_KEY_OS_1
"1.3.6.1.4.1.311.72.2.1"
支持 SHA1 和 SHA2 哈希。 MD2、MD4 和 MD5 不是。

签名和公钥算法可以是 RSA 或 ECDSA。 不支持 DSA 算法。 RSA 算法的密钥大小必须等于或大于 2047 位。 ECDSA 算法的密钥大小必须等于或大于 256 位。

已启用 CRL 和 OCSP 响应的强签名。

注解

为强签名检查所需的参数包括:

  • 公共 (非对称) 算法的名称
  • 公钥的大小(以位为单位)
  • 签名算法的名称
  • 哈希算法的名称
为此结构的 dwInfoChoice 成员指定的值选择参数是作为序列化字符串传输还是通过使用对象标识符进行预定义。

CERT_STRONG_SIGN_PARA结构由以下函数直接引用:

CERT_STRONG_SIGN_PARA 结构也由 CRYPT_VERIFY_MESSAGE_PARA 结构直接引用,因此可供以下函数使用: 最后, CERT_STRONG_SIGN_PARA 结构由 CERT_CHAIN_PARA 结构直接引用,因此可供以下函数使用:

要求

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

另请参阅

CERT_STRONG_SIGN_SERIALIZED_INFO