【问题标题】:Kernel mode code signing内核模式代码签名
【发布时间】:2011-04-22 05:32:22
【问题描述】:
我做了一个驱动程序,现在我需要签名。它以内核模式运行。
根据我在 Microsoft 的 Kernel Mode Code Signing Walkthrough 中读到的内容,我必须从商业 CA 购买软件发布者证书。在该文档中,他们说要查看末尾,然后按照this link 获取我可以从中购买该证书的 CA 列表。我发现这个链接非常令人困惑,因为我无法确切地确定我需要购买的 what 证书。我需要对驱动程序进行签名,以便它可以安装在 64 位 Windows 系统上。非常欢迎提供直接链接(我想从 GlobalSign 购买)。
是来自here 的微软验证码吗?
【问题讨论】:
标签:
code-signing
kernel-mode
【解决方案1】:
前段时间我在微软驱动开发者论坛上问了一个类似的问题。这是他们的答案:
您需要让您的公司从 GlobalSign 或 VeriSign 获得代码签名证书(不再提供该链接中列出的其他证书)。 GlobalSign 更便宜,但威瑞信的优势在于可以提供对 WHQL 的访问权限,前提是您的公司对此感兴趣。这些并不便宜,威瑞信证书每年花费 499 美元。一旦你有
您可以使用证书代替测试证书来签署驱动程序。
您的链接在支持的平台中包含此信息:通过 Authenticode(32 位和 64 位 .exe、.ocx、.dll 或其他)和适用于 Windows 的内核软件对 Windows ActiveX 控件进行数字签名。兼容 Windows 7。
看来您来对地方了。
准确地说:我还没有使用过代码认证,我只是学会了它。我建议您在 osronline 或 Microsoft 驱动程序开发人员论坛中验证此答案。
【解决方案3】:
您可以从 Digicert 购买签名。
Digicert 将在 zip 文件中颁发交叉签名证书。解压
DigiCert 高保证 EV 根 CA.crt
双击它并将其添加到您的 IE 个人商店
使用 IE,将证书和密码导出到 .pfx 文件
给驱动签名的命令是
signtool sign /t http://timestamp.digicert.com /f ".pfx 文件路径" /p PASSWORD_OF_PFX "驱动.cat 文件路径"
您可以使用相同的命令对 .exe 文件进行签名
signtool sign /t http://timestamp.digicert.com /f ".pfx 文件路径" /p PASSWORD_OF_PFX "驱动.exe 文件路径"
确保这台机器可以访问互联网,否则签名过程将失败。