如何在Windows 10未开启测试签名模式下安装自建VirtualBox增强工具驱动?
Windows内核驱动签名错误解决方案及说明
一、先排查签名细节问题
- 确认驱动签名是否符合内核模式要求:普通代码签名证书(包括Globalsign普通证书)仅能用于应用程序签名,内核驱动(.sys)需要微软认可的签名链。本地
signtool /verify仅验证签名完整性,不检查是否满足Windows内核的签名政策。 - 使用完整验证命令:执行
signtool verify /v /kp yourdriver.sys,/kp参数会专门校验内核模式代码的签名有效性,确认是否符合Windows的内核驱动签名标准。 - 校验.cat文件关联:执行
signtool verify /v /c yourdriver.cat yourdriver.sys,确保.cat签名文件与驱动文件的哈希完全匹配,且证书链(根证书、中间证书)已在系统信任存储中。
二、内核驱动签名的核心要求
Windows 10 22H2及后续版本中,内核模式驱动必须满足以下任一条件才能在正常模式下加载:
- 带有微软交叉签名:由EV代码签名证书签名后,经微软二次签名的驱动。
- 完成WHQL认证:通过微软Hardware Lab Kit测试并提交审核,获得官方WHQL签名的驱动。
普通第三方代码签名证书(非EV或未走微软流程)签署的内核驱动,仅能在测试签名模式下运行,正常模式下会触发签名验证错误。
三、可行解决路径
路径1:申请微软交叉签名(适用于EV证书持有者)
如果你的Globalsign证书是EV代码签名证书,可按以下步骤操作:
- 使用EV证书完成驱动文件(.sys、.cat、.dll等)的初始签名。
- 将签名后的驱动提交至微软硬件开发中心,申请交叉签名。微软会验证EV证书有效性,为驱动添加微软签名,使其符合内核加载要求。
- 注意:交叉签名有有效期,到期后需重新提交签名。
路径2:完成WHQL认证(长期稳定方案)
若需驱动面向公开分发或长期运行,必须遵循HLK流程完成认证:
- 下载对应Windows版本的Hardware Lab Kit(HLK),完成驱动的兼容性、稳定性测试。
- 将测试报告与驱动文件提交至微软硬件开发中心,通过审核后获得WHQL签名。
- WHQL认证的驱动可被Windows Update收录,且无签名有效期限制(依赖微软根证书有效性),不会触发签名错误。
路径3:临时内部测试方案(不推荐公开使用)
仅用于内部测试场景,可让用户开启测试签名模式:
- 执行
bcdedit /set testsigning on,重启系统后即可安装驱动,但桌面会显示测试模式水印,且仅适合内部环境。
四、关键结论
你必须通过微软的签名流程解决问题——要么用EV证书申请交叉签名,要么完成WHQL认证。普通第三方代码签名证书无法绕过Windows的内核驱动签名政策,本地signtool验证通过仅代表签名本身有效,不满足内核模式代码的信任要求。
内容的提问来源于stack exchange,提问作者ngochoaitn
相关产品推荐
相关产品推荐

