Windows 驱动程序自签名流程

        Windows 官方案例https://github.com/microsoft/Windows-driver-samples。编译通过了,都是Test Sign。这里找到一种自签名的方法,记录一下。文章来源https://konata.tech/2020/10/16/signWindowsDriver/

  • 创建自签名证书

        从 Windows PowerShell 3.0 版本(Windows Server 2012、Windows 8 自带)开始你可以执行 New-SelfSignedCertificate 命令来创建自签名证书

$cert = New-SelfSignedCertificate -DnsName konata.tech -Type CodeSigning -CertStoreLocation Cert:\CurrentUser\My

$CertPassword = ConvertTo-SecureString -String mypass -Force -AsPlainText

Export-PfxCertificate -Cert "cert:\CurrentUser\My\$($cert.Thumbprint)" -FilePath "C:\konatacodecer.pfx" -Password $CertPassword

执行结果就是在C盘目录下生成了pfx文件

konatacodecer.pfx

密码是:mypass

  • 给驱动程序签名 

  1. 下载 沃通代码签名工具(虽然沃通名声很臭,但这个工具挺好用的)。

  2. 打开代码签名工具,选择 CAB/CAT 标签

  3. 打开要签名的 INF 文件,将 SourceDisksFiles 等项目内使用到的驱动文件都添加到窗口中

  4. 点击创建 CAT 按钮,将 CAT 文件保存到 INF 文件同目录下

  5. 点击代码签名标签,选择刚刚生成的 pfx 证书,并输入密码 mypass

  6. 点击签名按钮,完成后可以看到生成的 CAT 文件

  • 安装证书和驱动

        如果你现在打开上面生成的 CAT 文件,会提示证书目录无效,这是因为我们自己生成的证书还没被信任,需要手动添加证书到信任列表。

  1. 打开第一步生成的 pfx 证书,选择存储位置为 Local Machine(本地计算机)
  2. 点击下一步输入密码 mypass
  3. 点击下一步选择证书存储区域,选择 Place all certificates in the following store (将所有证书放在当前目录下),单击浏览选择 Trusted Root Cerification(受信任的根证书授权) Authorities
  4. 点击下一步完成,我们自己创建的证书就被系统信任了

        安装驱动 -> 系统设备管理 -> 操作->欠佳驱动程序/添加过时硬件->选择驱动目录就安装成功了。旁边是安装成功的串口驱动程序。

Windows驱动开发是指在Windows操作系统上开发和编写设备驱动程序的过程。设备驱动程序是一种软件,用于与硬件设备进行通信和控制。在Windows中,驱动程序负责与各种硬件设备(如网络适配器、打印机、USB设备等)进行交互,以实现设备的正常工作。 Windows驱动程序可以使用不同的编程语言进行开发,如C、C++等。开发驱动程序需要使用Windows Driver Kit(WDK),它提供了用于开发驱动程序工具、库和文档。 驱动程序的开发过程包括以下几个主要步骤: 1. 确定驱动程序的类型:根据设备的类型和功能确定驱动程序的类型,如内核模式驱动程序、用户模式驱动程序等。 2. 编写驱动程序代码:使用合适的编程语言和开发工具编写驱动程序代码,实现与设备的通信和控制逻辑。 3. 编译和构建驱动程序:使用WDK提供的工具驱动程序代码编译为可执行文件,并生成所需的驱动程序文件。 4. 安装和调试驱动程序:将驱动程序安装Windows系统中,并通过调试工具进行调试和测试,确保驱动程序能够正确地与设备进行交互。 5. 驱动程序签名和发布:为了能够在最新的Windows操作系统版本上正常使用,驱动程序需要进行数字签名,并通过Microsoft的认证和发布流程。 需要注意的是,Windows驱动开发需要一定的系统编程和硬件知识,开发过程中可能会涉及到底层操作系统接口和硬件设备文档的阅读和理解。此外,驱动程序的稳定性和性能对于设备的正常工作至关重要,因此开发者需要仔细测试和优化驱动程序的性能和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老朱自强不息

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值