CryptHashCertificate2 函数 (wincrypt.h)

CryptHashCertificate2 函数使用 CNG 哈希提供程序对数据块进行哈希处理。

语法

BOOL CryptHashCertificate2(
  [in]      LPCWSTR    pwszCNGHashAlgid,
  [in]      DWORD      dwFlags,
            void       *pvReserved,
  [in]      const BYTE *pbEncoded,
  [in]      DWORD      cbEncoded,
  [out]     BYTE       *pbComputedHash,
  [in, out] DWORD      *pcbComputedHash
);

参数

[in] pwszCNGHashAlgid

以 null 结尾的 Unicode 字符串的地址,该字符串包含用于对证书进行哈希处理的哈希算法的 CNG 哈希算法标识符。 这可以是表示哈希算法或任何其他已注册 哈希算法标识符的 CNG 算法标识符之一。

[in] dwFlags

一组标志,用于修改此函数的行为。 未为此函数定义任何标志。

pvReserved

保留供将来使用,必须为 NULL

[in] pbEncoded

要进行哈希处理的字节数组的地址。 cbEncoded 参数包含此数组的大小。

[in] cbEncoded

pbEncoded 数组中的元素数。

[out] pbComputedHash

接收计算哈希的缓冲区的地址。 由印刷机ComputedHash 参数指向的变量包含此缓冲区的大小。

[in, out] pcbComputedHash

输入时包含 pbComputedHash 缓冲区的大小(以字节为单位)的 DWORD 变量的地址。 此函数返回后,此变量包含复制到 pbComputedHash 缓冲区的字节数。

返回值

如果函数成功,则函数) 返回非零 (TRUE

如果函数失败,则返回零 (FALSE) 。 有关扩展的错误信息,请调用 GetLastError。 以下主题中确定了一些可能的错误代码。

BCryptOpenAlgorithmProvider
BCryptCreateHash
BCryptGetProperty
BCryptHashData
BCryptFinishHash

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 wincrypt.h
Library Crypt32.lib
DLL Crypt32.dll

另请参阅

数据管理函数