CRYPT_XML_ALGORITHM_INFO 结构 (cryptxml.h)

CRYPT_XML_ALGORITHM_INFO 结构包含算法信息。

语法

typedef struct _CRYPT_XML_ALGORITHM_INFO {
  DWORD cbSize;
  WCHAR *wszAlgorithmURI;
  WCHAR *wszName;
  DWORD dwGroupId;
  WCHAR *wszCNGAlgid;
  WCHAR *wszCNGExtraAlgid;
  DWORD dwSignFlags;
  DWORD dwVerifyFlags;
  void  *pvPaddingInfo;
  void  *pvExtraInfo;
} CRYPT_XML_ALGORITHM_INFO, *PCRYPT_XML_ALGORITHM_INFO;

成员

cbSize

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

wszAlgorithmURI

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含与 XML 签名的 SignatureMethodDigestMethod 元素的 属性关联的 URI。

wszName

可选。 指向以 null 结尾的 Unicode 字符串的指针,该字符串包含算法的显示名称。

dwGroupId

一个 DWORD 值,该值指定算法所属的组类型。 此成员可以是以下值之一。

含义
CRYPT_XML_GROUP_ID_HASH
1
哈希算法
CRYPT_XML_GROUP_ID_SIGN
2
签名算法

wszCNGAlgid

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含传递给加密 API 的算法标识符字符串:下一代 (CNG) 函数。 CNG 函数使用算法标识符字符串(如 L“SHA1”),而不是 ALG_ID 数据类型常量(如 CALG_SHA1)。

注意 BCrypt* 和 NCrypt* 函数在 Bcrypt.h 和 Ncrypt.h 中定义。
 

wszCNGExtraAlgid

指向以 null 结尾的 Unicode 字符串的指针,该字符串包含传递给 CNG 函数的 pwszCNGAlgid 成员中的字符串以外的额外算法字符串。

注意 BCrypt* 和 NCrypt* 函数在 Bcrypt.h 和 Ncrypt.h 中定义。
 

dwSignFlags

包含要传递给 NCryptSignHash 函数的标志值的 DWORD 值。

dwVerifyFlags

传递给 BCryptVerifySignature 函数的 DWORD 值。

pvPaddingInfo

指向结构的指针,该结构包含要传递给 NCryptSignHashBCryptVerifySignature 函数的填充信息。 此成员指向的结构的实际类型取决于 dwGroupId 成员的值。

pvExtraInfo

可选。 指向结构的指针,该结构包含可传递给 CNG 函数的额外信息。

注意 BCrypt* 和 NCrypt* 函数在 Bcrypt.h 和 Ncrypt.h 中定义。
 

要求

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

另请参阅

数字签名加密算法