对于我签名的驱动程序,“Windows 无法验证数字签名”——怎么办?

Posted

技术标签:

【中文标题】对于我签名的驱动程序,“Windows 无法验证数字签名”——怎么办?【英文标题】:"Windows cannot verify the digital signature" for a driver I signed — what to do? 【发布时间】:2011-08-24 14:48:58 【问题描述】:

我有一个内核模式驱动程序,我必须在 64 位 Windows 7 上安装它。它需要进行数字签名。我使用dseo13b.exe 对其进行了数字签名。但是当我加载驱动程序时,我在系统事件日志中收到一条错误消息

由于以下错误,驱动程序无法启动:Windows 无法验证此文件的数字签名。最近的硬件或软件更改可能安装了签名不正确或损坏的文件,或者可能是来自未知来源的恶意软件。

我不想使用测试签名模式。我该如何解决这个问题?我需要从 Microsoft 获得证书吗?

我已经开发了驱动程序,现在正试图让它在 64 位机器上运行。

【问题讨论】:

*** 在这里可能更有帮助——我们通常不会在这里编写驱动程序。 :P 嗯 - 权限链是否完整且有效? 【参考方案1】:

签名的全部目的是保证驱动程序是由 Microsoft 信任的来源发布的。这意味着单独的签名对您没有帮助,您的密钥必须由 MS 签名才能建立信任链。

【讨论】:

【参考方案2】:

您需要购买 Authenticode 证书(来自 Verisign)才能正确签署适用于 Windows x64 的驱动程序。请参阅以下链接:

http://msdn.microsoft.com/en-us/windows/hardware/gg487317

http://msdn.microsoft.com/en-us/windows/hardware/gg487328

证书可以在这里购买:http://www.verisign.com/code-signing/microsoft-authenticode/

【讨论】:

【参考方案3】:

在以下链接中了解更多信息。

http://winprogger.com/cross-signing-kernel-mode-drivers/

http://winprogger.com/certificate-for-kernel-mode-driver-signing/

【讨论】:

【参考方案4】:

没有。您不需要 MS 签名。您确实需要一个链接到 MS 信任的东西的代码签名证书。可以向您出售证书的供应商不止一家。

试试这个: 1) 确保 windows 已完全更新。这实际上解决了我的一台电脑上的问题。 2) 查看https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/0b00c9d4-dff9-4fbe-b741-768c9b39349c/practical-windows-code-and-driver-signing-discussion?forum=wdk

这是一个深入(带有参考)的文档。

【讨论】:

同时您确实需要他们签名 :( ,请参阅***.com/questions/52778961/…【参考方案5】:

摆脱“Windows 无法验证数字签名”消息的唯一可靠且有效的方法是通过 Windows 启动选项禁用数字签名强制。该解决方案是暂时的并且在当前 Windows 会话期间保持活动状态,但可以在每次启动期间再次激活。以下是每个 Windows 版本的详细说明:http://freewisdoms.com/windows-cannot-verify-the-digital-signature-code-52-driver-fix/

【讨论】:

【参考方案6】:

理想情况下,您应该拥有 Microsoft 信任的数字签名驱动程序。但是,有一种解决方法,但不推荐。

Windows 8 及更高版本

    系统设置中搜索并打开恢复。 选择高级启动立即重启。 在引导过程中,在高级引导选项中,选择禁用驱动程序签名强制

注意:此设置将应用于单个用户会话。

Windows 7

    重启电脑。 一直按 F8 直到显示 Advanced Boot Options 菜单。 选择禁用驱动程序签名强制

来源:How to Fix “Windows cannot verify the digital signature (Code 52)” Driver Problem?

【讨论】:

以上是关于对于我签名的驱动程序,“Windows 无法验证数字签名”——怎么办?的主要内容,如果未能解决你的问题,请参考以下文章

如何访问苹果签名证书?

WM6.1 驱动程序上的代码签名

对于使用progisp软件进行ISP编程时进入不了编程模式的解决方法

对于返回签名 JWT 的 userinfo 端点,Spring 失败

Linux下基于签名技术的软件保护分析

自签名证书:私钥问题