对于 Windows 驱动程序开发者而言,如何让驱动程序通过微软的签名认证、在 Windows 系统中正常加载运行,是产品发布前需要面对的重要环节。WHQL 认证正是微软为此设立的官方认证流程。

什么是 WHQL 认证?
WHQL(Windows Hardware Quality Labs)是微软设立的硬件兼容性认证流程,用于验证硬件设备及驱动程序与 Windows 系统的兼容性和稳定性。通过 WHQL 认证的驱动程序,可以获得微软的官方数字签名,在 Windows 系统中显示为"Microsoft 签名的驱动程序"。
自 2021 年 4 月起,微软已不再支持使用第三方代码签名证书直接为驱动程序签名。这意味着,驱动程序若要获得可在 Windows 系统中正常加载的微软签名,需要通过 WHQL 认证流程。
WHQL 认证的前置条件
1. EV 代码签名证书
申请 WHQL 认证需要先拥有 EV(Extended Validation)代码签名证书。微软要求使用 EV 代码签名证书对测试报告包(.hlkx 文件)进行签名后提交,这是进入 WHQL 认证流程的必要条件。
需要说明的是,代码签名证书的私钥保护要求已发生变化。根据 CA/B 论坛的最新标准,自 2023 年 6 月 1 日起,无论是 OV 还是 EV 代码签名证书,私钥都必须存储在符合 FIPS 140 Level 2、Common Criteria EAL 4+ 或同等认证的硬件令牌(USB Token)中。此前以 PFX 等文件形式交付的代码签名证书已不再签发。
2. 微软合作伙伴账户
企业需要在微软合作伙伴中心(Partner Center)注册账户,用于提交测试报告、管理认证流程和查看审核状态。
3. HLK 测试环境
根据目标 Windows 版本,需要下载并配置对应的 HLK(Hardware Lab Kit)测试工具,用于对驱动程序进行兼容性、稳定性和功能测试。
WHQL 认证的主要流程
| 步骤 | 内容 |
|---|---|
| 1. 申请 EV 代码签名证书 | 向证书颁发机构提交企业资质材料,完成扩展验证,获取 EV 证书及硬件令牌 |
| 2. 注册微软合作伙伴账户 | 在微软合作伙伴中心完成注册,提供企业相关信息 |
| 3. 搭建 HLK 测试环境 | 根据目标 Windows 版本选择对应的 HLK 工具,配置测试环境 |
| 4. 执行驱动测试 | 使用 HLK 工具对驱动程序进行各项测试,确保所有测试用例通过 |
| 5. 打包并签名测试结果 | 将测试结果打包为 .hlkx 文件,使用 EV 代码签名证书进行签名 |
| 6. 提交微软审核 | 通过合作伙伴中心上传签名后的测试包,等待微软审核 |
| 7. 获得认证 | 审核通过后,驱动程序获得微软官方数字签名,可通过 Windows Update 分发 |
关于 EV 代码签名证书与 SmartScreen 的说明
此前,使用 EV 代码签名证书签名的软件在微软 SmartScreen 中可以获得即时的信誉豁免,较快地消除下载警告。但微软已调整了 SmartScreen 的信誉评估机制,目前 EV 证书不再提供即时的 SmartScreen 信誉豁免。无论是 EV 还是 OV 证书签名的软件,都需要通过真实的下载量和用户使用数据逐步积累信誉。
不过,EV 代码签名证书在 WHQL 认证流程中仍然扮演着不可替代的角色——它是提交 WHQL 认证申请的必要前提。
环度网信提供的 WHQL 认证相关服务
针对驱动程序 WHQL 认证的需求,环度网信提供以下服务:
- EV 代码签名证书申请:协助企业完成 EV 代码签名证书的申请流程,包括材料准备指导、审核跟进等
- WHQL 账户注册指导:指导企业在微软合作伙伴中心完成账户注册
- 驱动提交签名指导:协助企业完成测试结果的打包、签名和提交流程
- 流程咨询与技术支持:解答 WHQL 认证过程中的常见问题,提供流程指导
WHQL 认证涉及较为复杂的测试流程和技术操作,具体周期和通过情况取决于驱动程序本身的兼容性和测试结果。如需了解更多详情,欢迎查阅我们的 WHQL 认证服务方案,或联系环度网信进行咨询。
本文内容基于微软公开技术文档整理,旨在帮助开发者了解 WHQL 认证的基本流程和要求。微软的政策和流程可能随时调整,请以微软官方最新文档为准。



