计算机硬件标识符(CHID)

计算机硬件 ID (CHID) 是一个唯一 的硬件 ID 值,它基于系统管理 BIOS(SMBIOS)字段数据的组合来标识特定计算机。 与其他设备的硬件 ID 不同,每次系统启动时,Windows生成 CHID。 每个 CHID 都是使用 SHA-1 算法对 SMBIOS 字段值组合进行哈希处理而创建的 GUID

Important

仅当用于创建该字段的每个 SMBIOS 字段都填充在系统的 SMBIOS 数据中时,才会生成 CHID。

用于生成 CHID 的 SMBIOS 字段

下表描述了用于生成 CHID 的 SMBIOS 字段。

字段名称 结构名称和类型 SMBIOS 规范版本号 Offset 长度 价值 Description
Manufacturer 系统信息(类型 1) 2.0+ 04小时 字节 STRING dmiStrucBuffer 数组中以 null 结尾的字符串的索引。 此字符串指定计算机制造商的名称。
家庭 系统信息(类型 1) 2.4+ 1Ah 字节 STRING dmiStrucBuffer 数组中以 null 结尾的字符串的索引。 此字符串指定特定计算机所属的系列。 一个系列是指一组计算机,这些计算机在硬件或软件方面相似但并不完全相同。 通常,一个系列由不同的计算机模型组成,这些模型具有不同的配置和定价点。 同一系列中的计算机通常具有类似的品牌和化妆品功能。
产品名称 系统信息(类型 1) 2.0+ 05小时 字节 STRING dmiStrucBuffer 数组中以 null 结尾的字符串的索引。 此字符串指定计算机的产品名称。
供应商 BIOS 信息(类型 0) 2.0+ 04小时 字节 STRING dmiStrucBuffer 数组中以 null 结尾的字符串的索引。 此字符串指定 BIOS 供应商的名称。
BIOS 版本 BIOS 信息(类型 0) 2.0+ 05小时 字节 STRING dmiStrucBuffer 数组中以 null 结尾的字符串的索引。 此字符串可以包含有关处理器核心和 OEM 版本的信息。
系统 BIOS 主要版本 BIOS 信息(类型 0) 2.4+ 14小时 字节 不同。 系统 BIOS 的主版本。
系统 BIOS 小版本发布 BIOS 信息(类型 0) 2.4+ 15小时 字节 多种多样 系统 BIOS 的次要版本。
外壳类型 系统外壳(类型 3) 2.0+ 05小时 字节 多种多样 系统外壳或机箱类型。
SKU 编号 SKU 编号(类型 1) 2.4+ 19小时 字节 STRING 对特定待售计算机配置的识别。
基板制造商 制造商(类型 2) 04小时 字节 STRING 以 null 结尾的字符串数。 此字符串标识基板制造商,其中基板 – 板类型为 0Ah(主板)。
Baseboard 产品 产品(类型 2) 05小时 字节 STRING 以 null 结尾的字符串数。 此字符串标识基板的产品名称,其中基板 – 板类型为 0Ah(主板)。

有关 dmiStrucBuffer 数组和 SMBIOS 字段的详细信息,请参阅分布式管理工作队 (DMTF ) 网站上的系统管理 BIOS (SMBIOS) 规范。

按 Windows 版本划分的 CHID 组成

下表显示了哪些 SMBIOS 字段组合成每个 CHID。 具有较低数字的 CHID 更具体,而编号较高的 CHID 则更为普遍。

Windows 7

HWID SMBIOS 字段
HardwareID-0 制造商 + 系列 + 产品名称 + 供应商 + BIOS 版本 + 系统 BIOS 主要版本 + 系统 BIOS 次要版本
HardwareID-1 制造商 + 产品名称 + BIOS 供应商 + BIOS 版本 + 系统 BIOS 主要版本 + 系统 BIOS 次要版本
HardwareID-2 制造商 + 系列 + 产品名称
HardwareID-3 制造商 + 产品名称
HardwareID-4 制造商 + 系列
HardwareID-5 制造商 + 外壳类型
HardwareID-6 Manufacturer

Windows 8 和 Windows 8.1

HWID SMBIOS 字段
HardwareID-0 制造商 + 系列 + 产品名称 + SKU 编号 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-1 制造商 + 系列 + 产品名称 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-2 制造商 + 产品名称 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-3 制造商 + 系列 + 产品名称 + SKU 编号
HardwareID-4 制造商 + 系列 + 产品名称
HardwareID-5 制造商 + SKU 编号
HardwareID-6 制造商 + 产品名称
HardwareID-7 制造商 + 系列
HardwareID-8 制造商 + 外壳类型
HardwareID-9 Manufacturer

Windows 10及更高版本

HWID SMBIOS 字段
HardwareID-0 制造商 + 系列 + 产品名称 + SKU 编号 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-1 制造商 + 系列 + 产品名称 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-2 制造商 + 产品名称 + BIOS 供应商 + BIOS 版本 + BIOS 主要版本 + BIOS 次要版本
HardwareID-3 制造商 + 系列 + 产品名称 + SKU 编号 + 基板制造商 + 基板产品
HardwareID-4 制造商 + 系列 + 产品名称 + SKU 编号
HardwareID-5 制造商 + 系列 + 产品名称
HardwareID-6 制造商 + SKU 编号 + 基板制造商 + 基板产品
HardwareID-7 制造商 + SKU 编号
HardwareID-8 制造商 + 产品名称 + 基板制造商 + 基板产品
HardwareID-9 制造商 + 产品名称
HardwareID-10 制造商 + 产品系列 + 主板制造商 + 主板产品
HardwareID-11 制造商 + 系列
HardwareID-12 制造商 + 外壳类型
HardwareID-13 制造商 + 基板制造商 + 基板产品
HardwareID-14 Manufacturer

使用 ComputerHardwareIds 工具生成 CHID

ComputerHardwareIds (ComputerHardwareIds.exe) 是一种Windows 驱动程序工具包 (WDK)命令行工具,可用于为计算机系统的特定模型生成硬件 ID。

在运行 Windows 7 或更高版本的 Windows作系统的系统上支持 ComputerHardwareIds 工具。 此工具包含在 Windows 驱动程序工具包(WDK)的 bin 目录下。 32 位 Windows 平台(x86)和 64 位 Windows 平台(x64)有单独的版本。

有关下载和安装 WDK 的信息,请参阅下载 Windows 驱动程序工具包 (WDK)

运行 ComputerHardwareIds

若要运行 ComputerHardwareIds,请在命令提示符处键入命令。

C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64>ComputerHardwareIds

Parameters

没有

ComputerHardwareIds 示例输出

下面是 ComputerHardwareIds 工具生成的输出示例。

Using the BIOS to gather information

## Computer Information

BIOS Vendor: Contoso Inc.
BIOS Version string: A16
System BIOS Major Version: 6
System BIOS Minor Version: 0

System Manufacturer: Contoso Inc.
System Family: (null)
System ProductName: Contoso SYS01

Enclosure Type: Portable


Hardware IDs
------------
{346511cf-ccee-5c6d-8ee9-3c70fc7aae83}    <- Manufacturer + Family + ProductName + BIOS Vendor + BIOS Version + Major Version + Minor Version
{d7be59e5-29b5-589a-b49d-de7265ef6a7b}    <- Manufacturer + Family + ProductName