Windows 10版本1607中的驱动程序签名更改

发布时间:2016-07-26 14:15:31

最初于2016年7月26日在MSDN上发布

去年,我们 宣布 ,从Windows 10发行版开始,所有新的Windows 10内核模式驱动程序都必须提交给 Windows Hardware Developer Center仪表板门户(Dev Portal) 进行数字签名。微软。但是,由于技术和生态系统准备就绪问题,Windows Code Integrity并未强制执行此操作,而仅是一项政策声明。

从Windows 10版本1607的新安装开始,以前定义的驱动程序签名规则将由操作系统强制执行,而Windows 10版本1607不会加载任何未由Dev Portal签名的新内核模式驱动程序。操作系统签名强制仅适用于新安装的操作系统;从较早的操作系统升级到Windows 10版本1607的系统将不受此更改的影响。

我们正在进行这些更改,以帮助使Windows更安全。这些更改限制了最终用户系统被恶意驱动程序软件破坏的风险。

如果您是驱动程序开发人员,则需要执行以下操作:

  1. 确保通过 Windows硬件开发人员中心仪表板门户 向Microsoft提交新的驱动程序 。


  2. 开始 获取扩展验证(EV)代码签名证书的过程 。提交到门户的所有驱动程序都必须由EV证书签名。



常见问题


确切的例外是什么?交叉签名驱动程序仍然有效吗?

强制仅在全新安装中启用安全启动,并且仅适用于新的内核模式驱动程序:

  • 从Windows 10版本1607之前的Windows版本升级的PC仍将允许安装交叉签名的驱动程序。


  • 关闭了安全启动的PC仍将允许安装交叉签名的驱动程序。


  • 将会继续允许使用在2015年7月29日之前颁发的最终实体证书签名的驱动程序,该证书链接到受支持的交叉签名的CA。


  • 为防止系统无法正常启动,启动驱动程序将不会被阻止,但会被程序兼容性助手删除。Windows的未来版本将阻止启动驱动程序。



综上所述,在具有安全启动功能的Windows 10版本1607的未升级全新安装上,驱动程序必须由Microsoft签名,或使用2015年7月29日之前发布的最终实体证书签名,该证书链接到受支持的交叉签名CA。 那么现有的驱动程序呢?我是否需要重新签名这些驱动程序才能使其与Windows 10版本1607一起使用? 不需要。现有驱动程序不需要重新签名。为确保向后兼容,已通过 2015年7月29日之前签发的 有效交叉签名证书 正确签名的驱动程序 将继续在Windows 10版本1607上通过签名检查。那Windows的 旧版本呢?


这篇文章中描述的更改仅适用于Windows 10版本1607。请注意, 无论您打算使用驱动程序包支持哪种操作系统, Windows硬件开发人员中心仪表板门户 都将要求所有新提交的内容均使用EV代码签名证书进行签名。 。 在开发和测试期间如何签名驱动程序? 请参阅 MSDN上的“ 开发和测试期间的 签名驱动程序” 主题,以获取有关如何测试符号的信息。此外,如果将安全启动设置为OFF,则使用现有交叉签名证书签名的驱动程序将继续有效。 如何签名驱动程序,使其与Windows Vista,Windows 7,Windows 8,Windows 8.1和Windows 10兼容?


您需要做的就是像过去一样运行Windows 10的HLK测试,并运行Windows 8.1和更早版本的HCK测试。然后,使用Windows 10 HLK合并两个测试日志,并将驱动程序以及合并的HLK / HCK测试结果提交到 Windows硬件开发人员中心仪表板门户 。门户将正确签名驱动程序,以便它将在您指定的所有平台上运行。 扩展验证证书开发门户软件包签名如何?


该门户网站当前要求所有驾驶员提交者在其帐户中注册有效的EV代码签名证书。Windows本身对通过EV证书签名的驱动程序没有任何特殊要求。