什么是WHQL?
WHQL是WindowsHardwareQualityLabs的简称,意思是Windows操作系统硬件质量实验室,这个实验室主要从事计算机硬件产品、驱动程序于Windows操作系统的兼容性和稳定性测试,如果通过测试就证明这款产品在Windows操作系统中基本不存在兼容性问题。
年起,微软要求所有驱动程序必须获得微软的官方数字签名,而这种签名就可以通过WHQL来实现。
驱动程序为什么要做WHQL认证
1、可获取微软徽标授权
产品通过WHQL测试认证后,企业有权在其产品包装和广告上使用“DesignedforWindows”徽标。获得微软Windows品牌及用户对产品与Windows兼容认可的优势。
2、可提高用户认知度
微软规定凡是通过WHQL认证的产品都被授予徽标标志,其相关信息都会出现在微软官方网站和操作系统的硬件兼容列表(HCL)中。
3、可提高兼容性和稳定性
WHQL认证的驱动程序在安装过程中不会弹出兼容性的提醒,WHQL认证过程相当严格,当通过了WHQL认证的驱动程序可以说在Windows系统中基本不存在兼容性问题。可提高产品在用户心中的品牌信任度。
4、可获得微软的WINDOWSONLINEUPDATE服务
一些通过WHQL测试的设备驱动程序也可以发布到WindowsUpdate中。客户很容易得到新的与Windows相关软件的更新。
那么Windows内核驱动程序如何获得微软数字签名:
1、建立Windows硬件开发人员账号。(账号的建立过程需要EV代码签名证书)
2、购买EV证书时,请注意品牌,目前微软对EV代码签名证书的品牌在微软官方文档中有建议:
A、SymantecEV代码签名证书(该品牌目前已经合并到DigiCert旗下)
B、EntrustEV代码签名证书
C、GlobalSignEV代码签名证书
D、DigiCertEV代码签名证书
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的文件签名服务进行签名。
#驱动程序签名#