问题标签 [driver-signing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1326 浏览

windows - 如何签署我的司机?有必要吗?

我对 Windows 认证有点困惑。我想问一些问题,我的一个问题是,是否必须由受信任的第三方公司为 Windows 签名的驱动程序在安装过程中不显示有关安全性的对话框?我在问这个与本文相关的问题,它的链接是 msdn 上的“ http://msdn.microsoft.com/en-us/library/windows/hardware/ff544703(v=vs.85).aspx ”。

其实我的目标是在安装我的产品时,windows 不会提示这个对话框。对于它,是否需要通过 HCK 测试?

另一个问题是,什么是 Windows 徽标?

我的最后一个问题是,我可以使用 makecert.exe 制作第三方可信证书吗?

非常感谢和最好的问候。

图纳汉

0 投票
2 回答
261 浏览

usb - 使用 Vista 和更高版本方法签名的 Windows 驱动程序在 XP 中安装得很好,但它不应该吗?

我的公司制造了一个通过 USB 连接到 PC 并用于使用 Windows 内置 USB HID 驱动程序的测量设备。我现在使用不同的驱动程序来控制设备,并且我正在为许多 Windows 版本签署这些驱动程序。原因是我们希望我们的客户能够安装我们的测量软件(将预安装这些新驱动程序),插入我们的测量设备,并获得 Windows 信任并使用我们的新驱动程序来支持内置 USB HID司机。每次连接设备时,无论使用什么 USB 端口,或者如果用户连接的设备在描述符中具有不同的序列号,它还会带来额外的好处。

我已通读并执行 Microsoft 编写的 KMCS_Walkthrough 中概述的步骤,通过从 inf 文件为 Windows 7 x64 创建目录文件并使用自签名证书对目录文件进行签名来执行此驱动程序的测试签名。重新启动到测试模式时,Windows 7 x64 机器上的事情似乎运行顺利。令我吃惊的是,我能够创建一个 XP_x86 目录文件,用我的测试证书对其进行签名,将我的测试证书导入受信任的根存储,并在 Windows XP 机器上获得我想要的驱动程序行为。默认驱动程序签名策略设置为默认值(警告 - 每次都提示我选择一个操作)。

我很惊讶,因为我一直在阅读的所有关于签署驱动程序以供 XP 公开发布的 MSDN 文档似乎都对经过 WHQL 认证的驱动程序有严格的立场,以便驱动程序得到完全信任,而不是获取代码-从第三方签署证书并使用它来签署驱动程序。这不是真的吗?我的自签名驱动程序在 Windows XP 中的排名如何超过内置 USB HID 驱动程序?

0 投票
1 回答
432 浏览

driver - 无法确定“运行嵌入式签名测试”任务的通过/失败

我们已经开发了打印机驱动程序,并准备将其提交给 WHQL 签名。

我们有一个失败的 WHQL 测试 - 无法确定“运行嵌入式签名测试”任务的通过/失败

测试链接:http: //msdn.microsoft.com/en-us/library/windows/hardware/jj124852.aspx

这是对嵌入式签名的测试——在我们的驱动程序被签名之前它可能会失败吗?

日志如下:

0 投票
1 回答
489 浏览

driver - Windows 8.1 和签名的驱动程序问题

我有一个使用此链接中的步骤签名的驱动程序: http ://technet.microsoft.com/en-us/library/dd919238(v=ws.10).aspx

当我尝试在 Windows 8.1 上安装此驱动程序时,它失败了。该驱动程序可以安装在所有其他操作系统上。

当我重新启动计算机并禁用驱动程序签名强制并开始驱动程序安装时,会出现一条消息,指出驱动程序的发布者未知,并询问我是否要继续安装。如果您选择安装,则驱动程序安装在 Windows 8.1 上。所以我猜这个问题一定是驱动程序签名的问题。

取自链接:“驱动程序被标记为“不受信任”,因为 Windows 无法根据每台计算机受信任的根证书颁发机构存储中的任何受信任证书验证证书”。

由于此驱动程序旨在在客户机器上运行,因此这个问题真的很烦人。

所以:如果我将驱动程序标记为“受信任”,这个问题会得到解决吗?我该怎么做?或者有人知道这个问题的更简单的解决方法吗?

0 投票
0 回答
107 浏览

driver-signing - 驱动程序无法在 Windows 8 上安装

我有一个 inf 文件并创建了一个运行以下命令的 cat 文件:

inf2cat /v /driver:C:\Driver\ /os:XP_X86,Vista_X86,Vista_X64,7_X86,7_X64,8_X86,8_X64,6_3_X86,6_3_X64

签署 cat 文件并创建一个 .exe 来测试驱动程序。驱动程序已成功安装在除 Windows 8 之外的所有操作系统中(我可以在控制面板中看到驱动程序)。驱动程序没有失败(我没有收到错误),但我在控制面板中看不到它。

如果我返回并创建一个运行以下命令的 cat 文件(仅适用于 Windows 8):

inf2cat /v /driver:C:\Driver\ /os:8_X86

然后对cat文件进行签名并创建一个.exe来测试驱动程序,驱动程序在Windows 8中正确安装(我可以在控制面板中看到驱动程序)。

我究竟做错了什么?

0 投票
0 回答
3025 浏览

windows - RNDIS 驱动程序设置缺少 win 7 64 位

嗨,我一直在尝试将几块板连接到我的电脑。这些板依赖 RNDIS 驱动程序进入 concole。因此,如果我第一次连接电路板,我的 Win7 笔记本电脑会正确地将其检测为 RNDIS 以太网适配器或设备。但是当我第二次插入电路板时,它只是在设备管理器的 USB 部分中作为未知设备出现。通过搜索网络,我认为 RNDIS 失败了。因此,我尝试使用http://www.sharpduino.com/en/articles/article/19建议手动安装驱动程序的位置手动安装驱动程序Network Adapters > Microsoft Corporation > RNDIS但这是驱动程序设置中整个 Microsoft 公司文件夹丢失的问题。我在网上没有得到任何帮助,说明为什么会这样。

这个问题不仅存在于一个板上,也存在于其他板上。目前使用的主板是 Intel Edison、Arietta G25。

0 投票
3 回答
4308 浏览

windows-8.1 - MSVAD 虚拟音频示例驱动程序“Inf2Cat 可签名性测试失败”(Windows WDK 8.1)

所以我正在为 Windows 开发一个虚拟音频驱动程序。

主机: Windows 8.1 w/Windows Driver Kit 8.1
测试/目标机: Windows 8.1 通过网络(以太网/Wi-Fi)连接。
IDE: Visual Studio 2013 Express
项目: MSVAD(虚拟音频驱动程序)

部署配置适用于 Win7x64。

如需参考,请参阅此示例教程:https ://code.msdn.microsoft.com/windowshardware/virtual-audio-device-3d4e6150#content

问题:

请参阅上面的教程链接。在“5。找到构建的驱动程序包”之后的“构建示例”下,教程显示了您应该在目录中拥有的文件列表。对我来说,我将这些文件放在C:\MSVAD\C++\x64\Win7Debug\package. 它们都在那里,除了msvad.infmsvad.cat。但是msvad.inf确实显示在C:\MSVAD\C++.

当我构建项目时,出现以下两个错误:

但是随后我可以msvad.inf通过添加 msvad.inf 以包含在 \package 目录中(尽管仍然不是 msvad.cat 文件)进入项目设置(在解决方案查看器中),从而将文件放入正确的目录,但是当我构建项目出现此错误:

我一直在努力弄清楚这一点。我很确定这与msvad.cat文件有关。我尝试在 WDK 目录Inf2Cat.exe下使用\bin,但它不会为我打开。当我尝试在管理员模式下从 CMD 打开它时,它说访问受到限制或其他什么。即使我打开它,我也不是 100% 确定该怎么做。我完全被难住了。

0 投票
2 回答
375 浏览

64-bit - 为我拥有的一台机器签署 64 位 Windows 驱动程序

我需要在我拥有的一台未连接到 Internet 的计算机上运行驱动程序(可以添加数字证书)。

微软在Driver Signing Policy的详细表格中表示,当 Secure Boot 被禁用时,我们可以与每个受信任方签署 64 位驱动程序。

但是,在公开发布的签名驱动程序页面中,看起来我们只能与非常特定的各方签名。这里“发布”的定义与我有关吗?我正在我拥有的特定机器上安装驱动程序,而不是向全世界发布它。

此外,Windows 的驱动程序签名要求(我不知道它是否已更新)提到“组件必须由 Windows“信任”的证书签名“。这是什么意思?它是仅包含 Microsoft 根认证的驱动程序,还是仅包含本地计算机知道的证书?

那么,当有人想在自己的机器上运行驱动程序而不是使用测试自签名证书时,具体的要求是什么?

0 投票
1 回答
5084 浏览

code-signing - 同时使用 sha1 和 sha256 进行代码签名?

由于 Windows 更改其安全策略,我们计划开始使用 SHA-256 算法而不是 SHA-1 对驱动程序文件进行代码签名。但是,我们仍然希望能够支持仍然需要 SHA-1 签名的旧操作系统。

使用 Microsoft signtool.exe,我们能够使用 /fd 标志成功地使用 SHA-1 和 SHA-256 摘要算法对签名文件进行编码。但是,如果可能,我们希望同时使用两种算法对文件进行签名。这甚至可能吗?我们希望避免使用使用不同算法签名的多组驱动程序,并根据操作系统确定要安装的一组驱动程序——这将是我们的替代方法。

如果有人有完成此操作的经验,请解释您采用的方法。如果这是不可能的,将不胜感激解释为什么不可能。

0 投票
1 回答
490 浏览

c# - 如何使用扩展验证证书以编程方式签署 HCK 提交

我们有一个用 C# 编写的小应用程序,用于在 *.hckx 文件提交给 Microsoft 进行签名之前对其进行签名。

应用程序代码看起来像这样:

该代码适用于以前的“常规”证书。

对于新的 EV 证书,会显示一个额外的窗口,要求输入证书的 PIN。

所以问题是:是否有允许以编程方式使用 EV 证书进行完整签名的接口/类?

我希望 PackageManager.Sign 方法可以提供 PIN 作为参数。