什么是WHQL?
WHQL是Windows Hardware Quality Labs的简称,意思是Windows操作系统硬件质量实验室,这个实验室主要从事计算机硬件产品、驱动程序于Windows操作系统的兼容性和稳定性测试,如果通过测试就证明这款产品在Windows操作系统中基本不存在兼容性问题。
2021年起,微软要求所有驱动程序必须获得微软的官方数字签名,而这种签名就可以通过 WHQL 来实现。
驱动程序为什么要做WHQL认证
1、可获取微软徽标授权
产品通过WHQL测试认证后,企业有权在其产品包装和广告上使用“Designed for Windows”徽标。获得微软Windows品牌及用户对产品与Windows兼容认可的优势。
2、可提高用户认知度
微软规定凡是通过WHQL认证的产品都被授予徽标标志,其相关信息都会出现在微软官方网站和操作系统的硬件兼容列表(HCL)中。
3、可提高兼容性和稳定性
WHQL认证的驱动程序在安装过程中不会弹出兼容性的提醒,WHQL认证过程相当严格,当通过了WHQL认证的驱动程序可以说在Windows系统中基本不存在兼容性问题。可提高产品在用户心中的品牌信任度。
4、可获得微软的WINDOWS ONLINE UPDATE服务
一些通过WHQL测试的设备驱动程序也可以发布到Windows Update中。客户很容易得到新的与Windows相关软件的更新。
那么 Windows 内核驱动程序如何获得微软数字签名:
1、建立 Windows 硬件开发人员账号。(账号的建立过程需要 EV代码签名证书)
2、购买 EV 证书时,请注意品牌,目前微软对 EV代码签名证书的品牌在微软官方文档中有建议:
A、 Symantec EV 代码签名证书(该品牌目前已经合并到 DigiCert旗下)
B、 Entrust EV 代码签名证书
C、GlobalSign EV 代码签名证书
D、DigiCert EV 代码签名证书
3、将自己开发的驱动程序,通过 HLK 或者 HCK 的平台测试,通过测试之后拿到完整的测试数据包并将驱动程序打包进去,使用 EV 证书进行签名。
4、提交数据包,通过审核,下载含有签名的驱动。
常见的需要微软数字签名的有:
1、各类驱动程序、内核驱动等
这类文件如果没有微软的数字签名,将直接无法安装运行。
2、运行在 UEFI 系统下的 efi 驱动和通过 UEFI 启动的 shim(垫片)
为了解决一些 efi 驱动或者 efi 固件在类 EFI 操作系统加载不了,无法正常工作等问题, 我们推出通过 efi 驱动测试或垫片测试审查,获得微软 UEFI 签名来解决该故障的服务。
3、签名验证保护模式要求加载到 LSA 中的任何插件
签名验证 保护模式要求加载到 LSA 中的任何插件都已使用 Microsoft 签名进行数字签名。 因此,未签名的或者未使用 Microsoft 证书进行数字签名的任何插件都无法加载到 LSA 中。 这些插件包括智能卡驱动程序、加密插件和密码筛选器。 用作驱动程序(例如智能卡驱动程序)的 LSA 插件需要使用 WHQL 认证进行签名。 不需要经历 WHQL 认证过程的 LSA 插件必须使用 LSA 的文件签名服务进行签名。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。