Windows 7 如何为我的驱动程序签名,使其安装在64位Windows 7上?

Windows 7 如何为我的驱动程序签名,使其安装在64位Windows 7上?,windows-7,64-bit,driver,code-signing,Windows 7,64 Bit,Driver,Code Signing,我有一个内核模式驱动程序,我必须在64位Windows7上安装t。它需要数字签名。我用dseo13b.exe对它进行了数字签名。但当我加载驱动程序时,系统事件日志中会出现一个错误,显示: 由于以下错误,驱动程序无法启动: Windows无法验证此文件的数字签名。最近的硬件或软件更改可能安装了签名不正确或已损坏的文件,或者可能是来自未知源的恶意软件 我不想使用testsigning模式。我如何解决这个问题?我需要从Microsoft获得证书吗 我已经开发了这个驱动程序,现在正在64位机器上运行…您

我有一个内核模式驱动程序,我必须在64位Windows7上安装t。它需要数字签名。我用
dseo13b.exe
对它进行了数字签名。但当我加载驱动程序时,系统事件日志中会出现一个错误,显示:

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

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


我已经开发了这个驱动程序,现在正在64位机器上运行…

您需要的只是一个可信的证书(签名人等)

浏览以下资源:

  • ()
  • (MSDN)

仅适用于64位版本:设置自签名

第1部分:创建和安装测试证书

  • 启动提升的命令行shell(Vista及更高版本)
  • makecert.exe-r-pe-ss my-n“CN=MyTestCertificate”mytestcert.cer
  • certmgr.exe-添加mytestcert.cer-s-r本地计算机根
  • 启动certmgr.exe并检查“MyTestCertificate”是否列在“个人”和“受信任的根证书颁发机构”下
  • 将mytestcert.cer文件保存在安全的地方
  • 第2部分:配置系统以运行测试签名代码(Vista及更高版本)

  • 启动提升的命令行shell(Vista及更高版本)
  • 运行Bcdedit.exe-在提升的cmd.exe提示符上设置TESTSIGNING ON
  • certmgr.exe-添加mytestcert.cer-s-r本地计算机根
  • certmgr.exe-添加mytestcert.cer-s-r localMachine trustedpublisher
  • 重新启动
  • Vista:“测试模式”将出现在桌面的所有四个角落,“Microsoft(R)Windows(R)(Build 6000)”将出现在顶部。Windows 7:“测试模式Windows 7Build 7600”将出现在右下角

  • 签署驱动程序的两个有用资源

    萨默里:

    1.从(Digicert或Verisign或您预算内的任何地方)获得RSA证书,或者如果您只需要在您的计算机上安装,您可以自己创建一个证书

    2.当您拥有证书时,您还将拥有私钥

    3.若要分发驱动程序,您需要此证书才能进行跟踪,Microsoft使用一个名为Trusted Root Certification Authority的系统。现在,除了这些证书外,还有其他颁发证书的机构,但他们需要windows update来验证这些证书。键入certmgr.msc以获取列表。并查找具有代码签名权限的

    4.在该列表中添加证书或从该列表中获取证书

    5.用证书在司机身上签名[以上链接中的详细信息]

    6.现在分发驱动程序

    互联网上有很多关于签名驱动程序的教程。
    NB: WHQL是一个昂贵的选择,你可以考虑如果你的公司能够支付< /P>我不同意,我认为这是一个话题。我认为这基本上是一个关于构建工具的问题。我认为这对于驱动程序开发人员来说确实是一个相关的问题——它是关于开发环境的。这与关于“制造”的问题有何不同?因此,重新开始投票。谢谢。。您的意思是说Versign将使用可信证书对我的驱动程序文件进行签名,然后我就可以使用它了吗?您需要从像Verisign这样的可信来源获取证书。Verisign非常昂贵,但是还有其他更便宜的地方可以获得证书。我的公司可能会购买证书,但我获得证书后该怎么办。。如何将驱动程序文件与我获得的证书链接?还有,如何将从internet下载的交叉证书与从verisign获得的证书链接起来?我阅读了文档KMSC_WalkThru(如何发布内核模块签名),但这些内容并不清楚。。你能帮我一下吗..还有我怎样才能得到以下文件:mySPCfile.spc你的公钥证书文件。pvk您的私钥证书文件。myPVKpassword私钥证书文件的密码。在。。。请帮助myCrossCert.cer为您的SPC创建正确的交叉证书文件。CN值SPC的CN值(在个人证书存储中)。可能很重要:根据此链接:和Symantec技术支持,您需要使用SHA1对.sys文件进行签名,然后生成.cat文件。在不启用testsigning的情况下,这真的有效吗?