自签名证书驱动是否需开测试签名模式?Eyetoy驱动问题咨询
关于自签名PS2 Eyetoy驱动在Windows 10非测试模式下的问题解答
核心结论
自签名证书(无论用PowerShell的New-SelfSignedCertificate还是OpenSSL生成)无法在关闭测试签名模式下让内核模式的Eyetoy驱动正常工作,这是Windows 10及以上版本的内核驱动签名强制规则导致的。
原因分析
Windows内核驱动签名要求:从Windows 10 1607版本开始,微软对内核模式驱动实施严格的签名验证,仅接受以下两类签名:
- 通过Windows硬件兼容性计划(WHQL)认证的签名(即你看到的“此驱动已数字签名”)
- 由EV代码签名证书(Extended Validation)签名并经过微软交叉签名的驱动
自签名证书哪怕导入到系统信任根证书库,也不在内核模式的信任链中,关闭测试模式后会被系统拒绝加载,触发错误代码53(驱动签名验证失败)。
测试模式的作用:开启测试签名模式时,Windows会跳过内核驱动的强制签名验证,所以你的自签名驱动能正常工作,但这是系统的临时例外机制,并非正式支持的状态。
Authenticode签名 vs 数字签名的区别:你看到的“此驱动带有Authenticode(TM)签名”是普通代码签名(包括自签名),而正常工作的驱动的“此驱动已数字签名”是WHQL签名——后者是微软对驱动兼容性和安全性的官方认证,被内核完全信任;前者仅适用于用户态程序,内核态驱动不认可。
OpenSSL签名的结果
用OpenSSL生成自签名证书再签名驱动,结果和PowerShell生成的完全一致,同样无法通过非测试模式下的内核签名验证,因为本质还是自签名,不满足Windows内核驱动的信任要求。
可行的替代方案
- 保留测试签名模式:这是最直接的解决办法,虽然可能有安全提示,但能正常使用驱动。
- 寻找WHQL认证的第三方驱动:如果有开发者发布过经过WHQL认证的Eyetoy驱动,这类驱动可以在非测试模式下正常加载。
- 使用虚拟机中转:在虚拟机内开启测试签名模式,将Eyetoy摄像头连接到虚拟机,再通过虚拟机的设备共享功能将摄像头映射到主机(仅作为临时 workaround)。
内容的提问来源于stack exchange,提问作者Raffy
相关产品推荐
相关产品推荐

