Win10 如何给Inf驱动文件签名

在Win10下,我们自己开发的Inf驱动需要添加签名才能被安装成功,在开发阶段,暂时还没有权威CA机构颁发的证书,我们可以创建自签名证书来给我们的驱动签名,具体步骤如下:

工具准备

我们需要使用到Inf2Cat,makecert,Signtool,CertMgr等工具,需要下载Windows 10 SDK来获取,可以通过Visual Studio Installer下载,也可以直接在官网下载:
https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/

制作自签名证书

  • 打开Visual Studio的命令行工具

  • 制作cer证书
    输入命令:

makecert -r -pe -ss root -n CN="My Company CA" -$ commercial -b 01/01/2020 -e 01/01/2100 MyCert.cer

makecert 命令使用说明如下:
https://docs.microsoft.com/en-us/windows/win32/seccrypto/makecert

命令输入后,弹出安全警告,点击"是"即可,此时产生了MyCert.cer根证书

  • 导出PFX格式证书
    在Windows搜索栏输入MMC并打开:

    在"文件"->“添加管理单元"中添加"证书"至我的账户,并确认:

    在"受信任的根证书颁发机构”->“证书"中找到刚才安装的证书"My Company CA”,右击"所有任务"->“导出"进入证书导出向导:



    按照如上步骤,设置好密码,最后通过"浏览"设置文件导出路径即可完成,我这里把文件名设置为"Mycert.pfx”,至此我们产生了2个证书文件:

给INF文件签名

  • 生成Cat目录文件
    将INF文件"MyDirver.inf"与证书文件放至同一目录:

    使用上面提到的的Visual Studio命令行工具进入该目录,执行命令:
inf2cat /v /os:XP_X86,Vista_X86,Vista_X64,7_X86,7_X64,8_X86,8_X64,6_3_X86,6_3_X64,10_X86,10_X64 /driver:.

inf2cat 命令使用说明如下:
https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/inf2cat

此时将生成mydriver.cat(该名称取决于inf文件中的"CatalogFile"字段)文件:

  • 签名Cat文件
    同样在命令行工具下执行:
Signtool sign /v /fd sha256 /f MyCert.pfx /p 123456 /n "My Company" /t http://timestamp.digicert.com *.cat

signtool 命令使用说明如下:
https://docs.microsoft.com/zh-cn/dotnet/framework/tools/signtool-exe

其中"/p 123456"是导出pfx时设置的密码
命令执行成功后,在cat文件的属性中能够看到已经被签名:

至此,驱动已经签名成功,驱动可以在设备管理器中手动安装完成

给其他电脑安装驱动

  • 手动安装:
    若要用上面的步骤手动安装inf驱动,需要将inf,cat以及cer文件拷贝至目标电脑,
    首先需要安装证书,用管理员身份运行CMD,输入如下命令:
CertMgr /add MyCert.cer /s /r localMachine root /all

其中MyCert.cer为之前生成的根证书

安装证书成功后,即可在设备管理器中手动更新INF驱动

  • 制作安装包安装驱动:
    我们可以通过InstallShield工具制作驱动安装包来一键安装我们的驱动程序,请参考以下链接:
    https://blog.csdn.net/qq_29729577/article/details/128641677

Win10 如何给Inf驱动文件签名相关推荐

  1. 标准代码签名证书和EV代码签名证书的区别,和双签名软件或驱动代码签名证书

    代码签名目前分为标准代码签名和EV扩展型代码签名,两者的相同点都是对企业组织进行更有效验证,针对32位或64位可移植可执行文件进行数字签名,通过对代码的数字签名可以减少软件下载时弹出的安全警告,保证代 ...

  2. 解决Win10系统由于INF文件失效导致安卓MTP驱动安装失败的问题

    解决Win10系统由于INF文件失效导致安卓MTP驱动安装失败的问题 前话 今天电脑C盘莫名就满了.作为Windows insider自然习以为常.肯定又是系统在后台悄悄下载新的更新包造成的.属性里的 ...

  3. win10出现驱动强制签名_错误代码:0xc0000428以及引导文件如何修复

    **提示修复失败的日志文件:System32/Logfiles/Srt/SrtTrail.txt,发现里面提示有启动关键文件损坏,不需要重装系统,敲一些代码也可以恢复.** 具体方法 方法一: *步骤 ...

  4. Win10内核驱动强制签名,必须要有 EV代码签名证书

    2016年7月,微软在MSDN宣布从Windows 10的1607版本开始,强制要求所有新的Win10 内核驱动程序,必须获得Windows硬件开发者中心仪表盘门户的数字签名才能在系统中运行.这项政策 ...

  5. Win10内核驱动强制签名,申请沃通 EV代码签名证书

    为什么80%的码农都做不了架构师?>>>    2016年7月,微软在MSDN宣布从Windows 10的1607版本开始,强制要求所有新的Win10 内核驱动程序,必须获得Wind ...

  6. win10安装wifi网卡驱动显示“这个 INF 中的服务安装段落无效“

    win10安装wifi网卡驱动显示"这个 INF 中的服务安装段落无效" 日志显示:Netwtw08.INF中的服务安装段落无效. 和控制管理器的显示一样 看了好多方案都不行,因为 ...

  7. 驱动文件中只有cat/inf/dll文件,怎么安装

    网上下载了一个驱动,里面包含文件只有cat/inf/dll文件,怎么安装? 1.计算机-右键-管理-设备管理器,找到要装驱动的设备上 2.右键-更新驱动程序-浏览到本地的这个驱动文件夹 3.开始安装 ...

  8. 利用installshiled打包.inf和.sys驱动文件到setup.exe的方法

    近期收到一个需求,简单来说就是把某驱动程序打包为一个单独的setup.exe,方便使用. 由于之前并没有打包过驱动安装文件的经验,只是简单做过纯应用软件的打包,但是想来应该方法和步骤也差不多,于是研究 ...

  9. win10怎么更新显卡驱动_换显卡后,显卡驱动与系统不兼容怎么办?

    出现这种问题有两种可能,第一种是Win10系统版本太低,第二种是显卡品牌与其他硬件的品牌不兼容(比如给微星电脑换上外星人的显卡,就会遇到这种问题)多数时候都是第二种原因,解决方法如下. 安装前的准备步 ...

最新文章

  1. 图解phpstorm常用快捷键
  2. Coursera吴恩达《序列模型》课程笔记(2)-- NLP Word Embeddings
  3. 泛型在继承方面的体现与通配符
  4. 服务器cpu_服务器CPU与GPU协同运算加速三巨头竞争
  5. Java高级基础--阿里云Java复习
  6. 在vc++里面进行图像处理的时候应该把图形放哪_图形找朋友小班教案
  7. 5G标准化加速 需应对测试场景复杂性
  8. 开源不等于免费!谷歌如何通过安卓开源成为移动时代霸主? | 涛滔不绝
  9. 谷歌:明年开始对应用内购买抽取 30% 分成;钉钉创始人无招将离任;Java O2OA V5.2.0 发布|极客头条
  10. java 多个队列处理_加入多处理队列需要很长时间
  11. pyqt5 设置窗口按钮等可用与不可用
  12. 新出炉的面试题,了解一下?
  13. Hindex--华为Hbase二级索引
  14. 药方的量化方法笔记(学习与尝试):第一回 中药材数据库的建立 归经的统计 药方归经和功效的量化拆解
  15. 计算机分屏显示知识,如何使用Windows的分屏显示功能
  16. JS实现页面复制文字时自动加版权
  17. Android SDK 目录和作用的分析详解
  18. QQ空间迁移_【SRX550_HA_以及端口绑定高可靠性尝试】
  19. 2018/12/19 oracle-sql练习
  20. 若依管理系统RuoYi-Vue(前后端分离版)项目启动教程

热门文章

  1. 工作琐事太多怎么办_待办的事情太多,如何有条不紊的进行工作呢?
  2. Netty - 一个简单的聊天室小项目
  3. 脑电EEG概念解释及深度学习结合
  4. C语言结构体error: invalid use of incomplet type ‘ struct people’
  5. 微信小打卡,微信小打卡上打卡方法,被微信推荐的打卡小程序CSS margin(外边距)
  6. ipad和android触控笔不通用,电容笔能取代apple pencil在iPad上使用吗?不看后悔!
  7. python while true循环卡住不动_python – While循环导致整个程序在Tkinter中崩溃
  8. 软件技术基础知识复习
  9. 使用RT-Thread Studio DIY 迷你桌面时钟(四)| OLED显示时钟和温湿度(cpp组件 + u8g2软件包)
  10. 2022CCPC江苏省赛题解ACIJKL