CertCompareIntegerBlob 函数 (wincrypt.h)

CertCompareIntegerBlob 函数比较两个整数 BLOB 以确定它们是否表示相等的数值。

语法

BOOL CertCompareIntegerBlob(
  [in] PCRYPT_INTEGER_BLOB pInt1,
  [in] PCRYPT_INTEGER_BLOB pInt2
);

参数

[in] pInt1

指向 CRYPT_INTEGER_BLOB 结构的指针,该结构包含比较中的第一个整数。

[in] pInt2

指向 CRYPT_INTEGER_BLOB 结构的指针,该结构包含比较中的第二个整数。

返回值

如果整数 BLOB 的表示形式相同且函数成功,则函数返回非零 (TRUE) 。

如果函数失败,则返回零 (FALSE) 。 有关扩展的错误信息,请调用 GetLastError

注解

在执行比较之前,将从正数中删除值为 0x00 的大多数有效字节。 此处为正表示未设置下一个非零字节中最重要的有效位。

值为 0xFF 的大多数有效字节将从负数中删除。 此处为负表示设置了下一个非0xFF字节中最重要的有效位。 这会生成该整数的唯一表示形式,如下表所示。

原始字节数 简化形式
0xFFFFFF88 0xFF88
0xFF23 0xFF23
0x007F 0x7F
0x00000080 0x80
 

多字节整数被视为 little-endian。 最小有效字节为 pbData[0]。 最重要的字节是 pbData[cbData - 1],即0xFFFFFF88存储在四个字节中,如下所示:

{0x88、0xFF、0xFF、0xFF}

示例

有关使用此函数的示例,请参阅 示例 C 程序:使用 CertOIDToAlgId 和 CertCompareIntegerBlob

要求

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

另请参阅

CRYPT_INTEGER_BLOB

数据管理函数

GetLastError