Windows 驱动程序自签名流程

news2024/12/28 13:22:44

        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. 点击下一步完成,我们自己创建的证书就被系统信任了

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1653368.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring事件

📝个人主页:五敷有你 🔥系列专栏:Spring⛺️稳中求进,晒太阳 Spring事件 简洁 Spring Event(Application Event)就是一个观察者模式,一个bean处理完任务后希望通知其他Bean的…

QGIS编译

一,安装:OSGeo4W 二,安装:Cygwin64 https://www.cygwin.com/setup-x86_64.exe 三,安装: 安装bison和flex 四)QGIS_3.28 下载QGIS_3.28的源码包 五 环境变量设置: echo off set VS19…

基于springboot实现校园失物招领系统【项目源码+论文说明】

基于springboot实现校园失物招领系统演示 摘要 身处网络时代,随着网络系统体系发展的不断成熟和完善,人们的生活也随之发生了很大的变化,身边经常有同学丢失了东西或者衣服而烦恼,为了找到自己心爱的物品疲于奔命,还不…

使用电路仿真软件教学的优势分析

随着科技的飞速发展,电子工程领域对人才的需求与日俱增。为了满足这一需求,教育者们不断探索着更加高效、直观的教学方法。电路仿真软件的出现,为电子工程教学注入了新的活力,它以其独特的优势,成为现代电子工程教育中…

YOLO v6 iou_loss dfl_loss一直为0

Question img record infomation path is:…/mydata/images.train_cache.json Train: Final numbers of valid images: 1248/ labels: 1248. 0.1s for dataset initialization. img record infomation path is:…/mydata/images.val_cache.json Convert to COCO format 100%|█…

Go微服务精讲:Go-Zero全流程实战即时通讯(超清)

go-zero 是一个集成了各种工程实践的 web 和 rpc 框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。 Go微服务精讲:Go-Zero全流程实战即时通讯(超清) go-zero 中的 api,rpc,数据库等涉及的代码,…

Win10子系统wsl开机自启动jar包(nginx、redis、apache2、ssh等)

一. 需求背景 最近在研究nextcloud项目,选择了Win10子系统方案,而win10子系统wsl是通过接口实现的,很多linux上的常规操作在wsl上无法实现,比如配置开机自启动jar包以及其他依赖程序。只能通过windows系统重启时,自动执行脚本,去实现开机自启linux中的相关程序。 二. wsl…

我独自升级崛起怎么下载 游戏下载教程分享

《我独自升级:崛起》这款游戏核心聚焦于激烈的战斗与角色的持续成长。新加入的玩家首要任务是熟悉基础攻击模式,随后深入探索技能组合策略与连贯招式的艺术,同时掌握防守与躲避技巧,这些都是战斗中不可或缺的关键。随着战斗的持续…

Quartz怎么简单创建一个定时执行的任务

1.安装Quartz包 2.编写Job任务 继承 IJob编辑自定义任务 3.调用job,以指定时间策略执行 定时600s执行一次 StdSchedulerFactory factory new StdSchedulerFactory(); IScheduler scheduler await factory.GetScheduler(); await scheduler.Start();// 定义…

数据库大作业——基于qt开发的图书管理系统(四)项目目录的整理与绘制登录页面

项目目录的管理 前言 在上几篇的文章里面我们完成了基本环境的搭建,整理了项目数据库表结构并且成功的手动的加载了Qt的mysql数据库驱动,现在就要开始完成项目准备工作的最后一步:构建项目目录,一个好的项目离不开一个好的代码组织结构,所以在开始动手写我们这个项…

环形链表(成环的第一个相交的节点在哪)(中等)(证明题)

环形链表(成环的相交的节点在哪)(中等)(证明题) 142. 环形链表 II - 力扣(LeetCode) 题目 解题思路(证明一下) 这里的关键点在于你需要证明LT 然后就可以解题…

excel中图片url转为jpg

步骤 打开Excel,并按下 Alt F11 打开VBA编辑器。在VBA编辑器中,插入一个新的模块(右键点击项目资源管理器中的模块 -> 插入 -> 模块)。在新模块的代码窗口中,复制并粘贴以下示例代码。根据需要修改代码中的变量…

Twitch赠送暗区突围测试资格 超简单暗区突围测试资格领取教程

作为直播界的领航者,Twitch平台不仅是全球游戏文化直播的中心舞台,更是频繁联袂各路游戏大作,为粉丝们奉上别具匠心的互动盛宴,让观赛的同时解锁诱人的游戏内惊喜。正值《暗区突围》PC版测试的热潮涌动,Twitch乘势加强…

uniapp + vue3 使用axios

场景 uniapp自带的uni.request不太好用,也有可能是自己用axios用的太熟悉了,所以还是用axios趁手点,所以尝试在uniapp中使用axios。 操作 因为uniapp项目没有package.json,所以先在项目根目录下执行 npm init, 执行完毕后直接…

案例|200多套设备实时监测,守护江西彰湖水库安全

中型水库作为水利建设的重要组成部分,在防洪、供水、农业灌溉、改善民生和生态效益等方面都具有重要意义。国务院发布《关于切实加强水库除险加固和运行管护工作的通知》,重点提出要提升信息化管理能力,要加快建设水库雨水情测报、大坝安全监…

【RAG 论文】Dense X 检索:将“命题”作为检索粒度

论文:Dense X Retrieval: What Retrieval Granularity Should We Use? ⭐⭐⭐⭐ Code: github.com/ct123098/factoid-wiki 文章目录 一、论文速读二、命题(Proposition)三、FactoidWiki四、实验及分析4.1 Passage Retrieval 任务4.2 Open-Do…

C++ | Leetcode C++题解之第69题x的平方根

题目&#xff1a; 题解&#xff1a; class Solution { public:int mySqrt(int x) {if (x 0) {return 0;}double C x, x0 x;while (true) {double xi 0.5 * (x0 C / x0);if (fabs(x0 - xi) < 1e-7) {break;}x0 xi;}return int(x0);} };

前端高频面试题 5.08

事件委托 事件委托是前端开发中常用的一种优化性能和代码可维护性的方法&#xff0c;它基于DOM的事件冒泡机制。当一个元素触发事件时&#xff0c;这个事件会按照从顶层到底层的顺序传播&#xff0c;直到最底层的元素&#xff08;通常是文档的根节点&#xff09;。事件委托利用…

如何将pdf文件换成3d模型?---模大狮模型网

PDF文件是一种广泛用于文档传输和共享的格式&#xff0c;但在某些情况下&#xff0c;我们可能希望将其中的内容转换为更具交互性和视觉效果的3D模型。本文将介绍如何将PDF文件转换为3D模型&#xff0c;为您展示实现这一想象的步骤。 选择合适的PDF文件&#xff1a; 首先&#…

如何才能做好源代码防泄密

目前很多企业都拥有自己的研发机构&#xff0c;其研发成果往往体现在源代码和技术文档方面&#xff0c;这些核心机密&#xff0c;如何防止研发参与人员泄密&#xff0c;如何防止核心成员把研究成果带走另立山头&#xff0c;或者提供给竞争对手&#xff0c;是一个很现实的一个问…