【发布时间】:2015-08-20 17:55:27
【问题描述】:
由于 Windows 更改其安全策略,我们计划开始使用 SHA-256 算法而不是 SHA-1 对驱动程序文件进行代码签名。但是,我们仍然希望能够支持仍需要 SHA-1 签名的旧操作系统。
使用 Microsoft 的 signtool.exe,我们能够使用 /fd 标志成功地使用 SHA-1 和 SHA-256 摘要算法对文件进行编码。但是,如果可能,我们希望同时使用两种算法对文件进行签名。这甚至可能吗?我们希望避免使用使用不同算法签名的多组驱动程序,并根据操作系统确定要安装的驱动程序集——这将是我们的替代方法。
如果有人有完成此操作的经验,请说明您采用的方法。如果这是不可能的,将不胜感激解释为什么不可能。
【问题讨论】:
-
我相信这就是他们在本教程中所做的:pixcl.com/Signing-Windows-8-Drivers.htm 请记住,如果您有内核模式驱动程序,Windows 10 中的要求将完全改变,您需要获得它由微软 (reference) 签名。
-
我还从另一位开发人员那里听说,要走的路是只用 SHA-1 签名,但使用 SHA-2 证书。您的签名在最新版本的 Windows 中仍然有效。我自己还没有尝试过这些东西,但我的文章可能对你有帮助:davidegrayson.com/signing
-
感谢大卫的信息。如果在使用带有 SHA-2 证书的 SHA-1 进行签名时,驱动程序签名在 Windows 10 上有效,那就太好了。此外,感谢您对即将通过 Microsoft 通过其开发人员门户获取驱动程序的要求进行提醒。这似乎是一个巨大的痛苦。希望我们能找到一种自动化该过程的方法。不过,这很好。谢谢。
-
门户确实有一个 API。
标签: code-signing sha1 sha256 signtool driver-signing