首页 文章

如何签署我的驱动程序,以便它将安装在Windows 7 64位?

提问于
浏览
12

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

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

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

我开发了驱动程序,现在正在64位机器上运行...

3 回答

  • 4

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

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

    • 启动提升的命令行shell(Vista及更高版本) .

    • makecert.exe -r -pe -ss my -n "CN=MyTestCertificate" mytestcert.cer

    • certmgr.exe -add mytestcert.cer -s -r localMachine root

    • 启动certmgr.exe并检查"Personal"和"Trusted Root Certification Authorities"下是否列出了"MyTestCertificate" .

    • 将mytestcert.cer文件保存在安全的地方 .

    第2部分:配置系统以运行测试签名代码(Vista及更高版本)

    • 启动提升的命令行shell(Vista及更高版本) .

    • 在提升的cmd.exe提示符下运行Bcdedit.exe -set TESTSIGNING ON .

    • certmgr.exe -add mytestcert.cer -s -r localMachine root

    • certmgr.exe -add mytestcert.cer -s -r localMachine trustedpublisher

    • 重启 .

    • Vista:"Test Mode"将出现在桌面的所有四个角上,"Microsoft (R) Windows (R) (Build 6000)"将出现在顶部 . Windows 7:"Test ModeWindows 7Build 7600"将出现在右下角 .

  • 3

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

    Windows 7

    Windows Server 2012 and Windows 8.1(kind of)

    夏日:

    1.从(Digicert或Verisign或预算中的任何地方)获取RSA证书,或者如果您只需要在计算机中安装证书,请自行创建证书

    2.当你有证书时,你也会有一把私钥

    3.为了分发驱动程序,您需要此证书可追踪,Microsoft使用称为受信任的根证书颁发机构的系统 . 现在还有其他权限提供证书,但他们将需要Windows更新来验证这些 . 键入certmgr.msc以获取列表 . 并寻找具有代码签名权限的那些

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

    5.用证书签署驱动程序[详见上面的链接]

    6.现在分发司机

    互联网上有许多教程用于签署驱动程序 . 注意:如果您的公司可以设法支付,WHQL是一个昂贵的选择

  • 2

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

    浏览这些资源:

相关问题