导航:首页 > 软件问题 > 如何获得软件数字签名

如何获得软件数字签名

发布时间:2022-05-15 02:21:12

❶ 如何将程序进行数字签名

简单地说,需要三步:
1. 购买或自己创立一个的数字签名证书文件。
有工具软件可以制作数字签名证书,比如openssl,但自签的,在别人的机器上,回出现签名无法校验的问题。除非人家信任,否则人家不会安装你的证书。

2. 用工具软件对exe或其他任何文件,进行数字签名。 可以是免费的UI工具,比如:kSign;也可以类似signtool(微软的命令行工具);还可以操作系统的向导程序(比如微软Windows上的签名文件安装,导入并对文件数字签名的向导)。 xNix下,可以用GnuPG (gpg)从证书到签名,一次搞定。

3. 你要是做程序开发的,可以利用signtool这样的命令行工具,写批处理,然后加入自己项目的make过程中自动加签。

❷ 如何取得Windows驱动程序的数字签名通过之后驱动有什么不同

驱动程序的数字签名是电脑硬件和驱动程序可靠性和兼容性的一个标志。原来,早在Windows 9x时代,通过大量的用户调查,微软公司就发现之所以有操作系统蓝屏错误的发生往往与不可靠的硬件和编制不良的驱动程序有关。蓝屏错误的专业术语叫GP错,即General Protect Error,是用户最讨厌看到的东西了,因为一旦出现了这个画面,多数情况意味着用户的数据已经无法挽回了,只有关机重开或者按Reset键“掐人中”了。

让我们来看看GP错与驱动程序的关系。Windows操作系统中把内存划分为核心模式区和用户模式区两部分,在核心模式区内运行操作系统自身的管理代码和硬件驱动程序这些“底层”的软件,而用户模式区内运行的是应用程序,如MS Word或Adobe Photoshop等等。我们日常接触到的软件大都属于应用程序,都运行在用户模式下,包括Windows自身的用户界面也都是运行在用户模式下的。运行在用户模式下的应用程序的共同特点是即使发生了错误,也只影响到这个程序本身,比如Word死掉了,我们可以使用“任务管理器”将它强制关闭,Word中的数据可能丢失但操作系统中其他软件仍可运行,这就是所谓的操作系统保护。这时并不会发生蓝屏错误。但核心模式下的软件一旦发生错误,就会有蓝屏发生了,因为操作系统队核心模式下基本上没有保护,所以就会发生“保护错”(General Protect Error)。

Windows操作系统本身运行在核心模式下的程序往往经过微软公司内部比较系统全面的测试,所以在用户使用中由于Windows核心程序出错而导致蓝屏错误的情况很少。驱动程序是由各个硬件厂家配合他们出品的计算机硬件提供的,多数的名牌大厂也能做到合理的开发和完善的测试,都有着严格的质量控制体系,所以一般也很少出问题。但一些小厂商为了赶开发进度或者降低成本,兼容性测试和质量控制会不够完善,往往会将一些隐含缺陷的驱动程序搭配硬件出售。用户购买了这样的产品就带来了使用中的隐患。微软公司发现多数的蓝屏都是由于这样的原因。这也是杂牌小厂的产品往往质量上不如名牌大厂产品的一个原因。使用不可靠的硬件往往会发生电脑莫名其妙地突然死机、自动重起或者蓝屏。过去人们往往归罪于微软,指责Windows操作系统不稳定,微软感到十分委屈,无端被了不良硬件厂家的黑锅。不过操作系统是电脑最基本的软件平台,微软也应该为整机的稳定性承担必要的责任。为了提高整机系统的稳定性,减少用户对操作系统的指责,微软推出了一个机制来识别“好的”和“不好的”驱动程序,对于一个“好的”驱动程序,则配上一个扩展名为.cat的文件,使用加密算法记录这个驱动程序由哪些文件构成,这些文件是否都是原始文件,是否都没有被修改,这个文件将与这个驱动程序文件放在一起,成为驱动程序的一部分,这个文件就被叫做该驱动程序的数字签名。

那么硬件厂商或开发者自己开发了一个新的驱动程序后,怎样能像一个名牌大厂那样为驱动程序搭配上这样一个文件呢?当前,微软公司对数字签名文件的管理很严格,必须到微软的硬件质量实验室(Windows Hardware Quality Lab,按各单词字头缩写简称为WHQL)去申请才行,幸好这个申请手续并不复杂。微软WHQL推出了一套不断更新的测试软件就叫HCT(Hardware Compatibility Test,即硬件兼容性测试),这个测试工具集可以在微软的网站上免费下载到最新版本,当前刚刚发布了12.1版本,驱动程序的开发人员可以使用HCT这个工具对自己的驱动程序进行测试,如果这些测试项目都能通过,就可以通过因特网向WHQL申请数字签名了,当然微软公司要对每次申请收取250美金的申请费用,不过这笔费用对于一个即将在市场上批量销售的产品就不算多了。

HCT这个测试工具是既复杂又简单的。说它复杂是在于它包含了整机和部件几乎所有方面的测试内容,比如对于Data Center服务器有关的认证测试中最严格的一些项目都要求连续14天的连续运行测试。说它简单,是因为HCT中多数的测试都是自动测试,使用起来很轻松。即使是手工测试,通常也只需要进行一些简单的操作,并且有详细的联机文档可以给测试者提供详尽帮助。从这一点来说,即使是非专业人员也可以拿来使用,所以建议DIY的朋友们在攒完一台新电脑后,立即运行一遍HCT中的System test(系统测试),你的新机好坏就一目了然了。
下面我们就细说一下HCT这个测试工具集。HCT针对测试对象可分为两大类,系统测试和部件测试,系统测试又分为台式机,笔记本和服务器的测试,部件测试则分为声卡、网络设备、打印机、扫描仪等图形图像设备等。HCT测试是十分全面的,即使硬件设备不再以上分类中,那么仍可归类为Unclassified Device,即“未归类设备”。显示卡的测试是个例外,它作为单独的测试工具集DCT并不包含在HCT工具集中,需要单独下载,当前最新的DCT是5.3版本,需要在微软网站上单独下载。

从测试机理来说,HCT包括几个方面的测试,首先是总线方面的测试。计算机内外部件从系统架构上来看都是从属于几个总线上的,如PCI总线、USB总线或1394总线。HCT中就包括对这些总线有关的测试,如针对PCI设备就会有PCI Compliance Test,来检测这个被测硬件是否严格符合PCI规范的各种电气方面和功能方面的要求。如USB设备则有USB Address Descrīption Test、USB Device Framework(CV)等等。

再一类是驱动程序开发有关的测试,如ChkINF测试来检查驱动程序安装配置文件inf文件是否符合标准要求,对于想取得数字签名的驱动程序,该Inf文件必须包含一行catalogfile=xxx.cat,这是指出应有一个数字签名文件与这个驱动程序对应,因为这个cat文件来自微软公司,所以在HCT测试时还没有这个文件,但也要保留这样一行,因为如果一旦获得了数字签名文件,那么经过测试的这些文件就都不能有任何更改了,包括inf文件,所以一定要在取得数字签名文件前就在inf文件中增加这样一行。
另一类是有关功能方面的测试,如打印机测试会包括打印各种文本、图形图像的测试,Modem测试会包括传真和各种数据传送等与该设备功能有关的测试。
还有一类是ACPI有关的测试。ACPI是Advanced Computer Power Interface的缩写和简称。ACPI使PC机支持待机、休眠等各种省电状态,使用这些功能还能够改善开机速度,给用户带来很大的方便,但这一类功能也是当前设备支持较差的一个方面。很多设备对待机和休眠功能的支持都不完善,DIY者们尤其应该注意。
为新开发的硬件驱动程序申请数字签名,就要满足上述4大类的HCT测试项的严格检测,可以看出,即使不申请数字签名,应用这些测试到电脑硬件的研发环节中,对提高产品质量也是十分重要的。微软公司为鼓励硬件开发者通过WHQL测试来提高硬件及其驱动程序的兼容性和可靠性,还为WHQL申请者提供一系列的增值服务,目前通过WHQL测试的硬件产品,不但可以得到数字签名,取得最终用户更大的信任,还可以授权使用一个漂亮的徽标,这个徽标叫Designed for Windows Logo,译成中文就是“针对Windows而设计”徽标,这样购买带有数字签名的高质量硬件,用户并不需要去安装该硬件的驱动程序来检查它是否包含数字签名,而可以容易地从硬件产品的包装盒上一目了然地了解该产品的质量情况,有点像咱们国家的食品质量安全认证QS标志。我现在购买包装食品都要看是否有QS标志,它表示该食品的生产环节是符合国家有关的食品卫生标准的,是符合市场准入的质量要求的。同样选购心爱的电脑硬件也要看看它的包装盒上是否有Designed for Windows 标志。用户也可以在很多品牌电脑上看到这样的标志,这说明这个型号的整机是通过WHQL认证的,很多大企业采购电脑时都是以这个标志为基准的,但广大用户要注意的是,目前市场上的品牌电脑也是良莠不齐,包括很多知名品牌,他们的电脑也都没有这个标志,对于这样的产品,用户选购时可要三思而行呀。
从驱动程序开发的角度来说,要通过完整的WHQL测试也还是很有难度的,这是因为,HCT测试中不但包含了在标准场景下对驱动程序的检验,还包括一些苛刻条件下的测试,比如说所有驱动程序HCT测试中都包括的Driver Verifier Test Driver Path Exerciser Test测试,都是模拟在极端条件下,驱动程序的健壮性。Driver Verifier Test会像驱动程序发送大量的异常数据,驱动程序必须依照Windows的驱动程序开发的标准模型对这些异常数据进行妥善的处理,否则HCT测试是过不去的。这种测试,模仿了用户长期使用中可能遇到的偶然情况,如果驱动程序处理不好,就会发生蓝屏死机之类的故障,虽说是小概率事件,但是被谁遇到都不会愉快。而一般的常规测试都很难发现这类问题。不过对于这一类的问题可以通过建立一套双机互连的调试系统来实施跟踪调试 ,立即发现出问题的代码段,依照驱动程序开发包(DDK)的要求修正就可以了。另外一个好消息是虽然WHQL认证的机构在美国微软,但微软中国技术中心现在对国内的厂商和驱动程序开发者提供一些免费的与WHQL有关的支持。如果有什么特别的难题不易处理,可以与他们联络得到来自微软内部的支持。

数字签名可以简单地鉴别出“可靠”与“不可靠”驱动程序,所以DIY们在网上下载驱动时应尽可能选择WHQL认证的驱动程序。购买电脑硬件产品时,应应该了解清楚该硬件是否是经过Windows硬件质量认证的,是否有Designed for Windows标志。驱动程序的数字签名给硬件厂商带来了挑战,却为最终用户带来了实惠。

❸ 如何取得Windows驱动程序的数字签名

按以下方法关闭数字签名就好了

1.在电脑启动的过程中,不用等到进去输入用户登陆框,按键盘上面的按键F8,就会出现系统启动项,供我们进行选择;

2.然后选择,禁用数字签名,启动电脑,数字签名被禁用后,驱动就能成功安装了。但是重启电脑之后,设置又会恢复成启用数字签名。有些电脑的禁用,是一次性的。

3.那么,我们也可以强制关闭数字签名,进入系统后,使用管理员,在CMD运行器中,输入bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS ;然后会出现禁用成功的提示。

4.再重启电脑,那么系统就会一直默认关闭数字签名了。安装驱动就会成功了。

❹ 如何取得Windows驱动程序的数字签名如何通过WHQL认证

通过WHQL认证就可以取得Windows驱动程序的数字签名。可以到微软MSDN网站了解WHQL认证相关说明,下载HLK测试工具.

以下是微软官方WHQL认证的流程:

1. 申请EV代码签名证书,必须是微软指定Entrust,Symantec, Digicert, Globalsign四家 CA公司。

2. 用申请好的EV证书申请微软Developer认证帐号。

3. 与微软签订电子协议。

4. 使用微软提供的测试平台HLK测试,生成测试报告。

5. 生成测试报告与驱动程序包,并用数字证书签名。

6. 将100%通过测试并签署后的文件上传微软并等待微软审核。

7. 通过审核,获得微软驱动数字签名,同时获得微软LOGO使用授权。

❺ 如何获取应用程序的数字签名

单地说,需要三步:
1. 购买或自己创立一个的数字签名证书文件。
有工具软件可以制作数字签名证书,比如openssl,但自签的,在别人的机器上,回出现签名无法校验的问题。除非人家信任,否则人家不会安装你的证书。

2. 用工具软件对exe或其他任何文件,进行数字签名。 可以是免费的UI工具,比如:kSign;也可以类似signtool(微软的命令行工具);还可以操作系统的向导程序(比如微软Windows上的签名文件安装,导入并对文件数字签名的向导)。 xNix下,可以用GnuPG (gpg)从证书到签名,一次搞定。

3. 你要是做程序开发的,可以利用signtool这样的命令行工具,写批处理,然后加入自己项目的make过程中自动加签。

❻ 大家谁知道怎么给软件加数字签名

数字签名需要Gworg提交认证后实名后才可以给软件进行签名。

❼ 软件数字签名怎么弄

您好!数字签名需要到数字证书签发机构CA去申请,沃通CA有提供软件数字签名证书产品,你可要用来签名内核代码
.sys文件、ActiveX文件、
.exe

.dll
文件、Java
Applets、J2ME
MIDlet、Office宏文件、火狐插件等。

❽ 如何将程序进行数字签名

具体如下:

1、通过makecert.exe生成需要的证书,用cmd命令打开窗口,输入命令D:证书创建工具makecert -$ "indivial" -r /sv "1.PVK" /n "CN=Windows,E=microsoft,O=微软" 1.cer,生成两个文件分别是1.cer和1.PVK。

2、需Signcode.exe(文件签名工具),打开,添加需要数字签名的程序。

3、自动选择自定义选项,下一步,然后点击从文件中选择1.cer文件,1.cer文件在第一个步骤你生成的目录中,然后下一步。

4、点击浏览按钮,添加文件1.PVK,1.PVK文件也是在第一步生成的目录中,点击下一步,哈希算法,自己随便选,可以选md5,也可以选sha1.,点击下一步。

5、默认点击下一步,出现数据描述框,自己可以填写,也可以不填。点击下一步。

6、填写时间戳服务器URL:http://timestamp.wosign.com/timestamp,也可以不选添加时间戳,点击下一步,完成,弹出签名成功框。

7、右键点击软件属性,检验数字签名是否成功。数字签名总过程就是这个样子,让软件更加安全可靠。

❾ 如何对EXE程序进行数字签名

方法一

1、购买或自己创立一个的数字签名证书文件。

有工具软件可以制作数字签名证书,比如openssl,但自签的,在别人的机器上,回出现签名无法校验的问题。除非人家信任,否则人家不会安装你的证书。

2、用工具软件对exe或其他任何文件,进行数字签名。 可以是免费的UI工具,比如:kSign;也可以类似signtool(微软的命令行工具);还可以操作系统的向导程序(比如微软Windows上的签名文件安装,导入并对文件数字签名的向导)。 xNix下,可以用GnuPG (gpg)从证书到签名,一次搞定。

3、你要是做程序开发的,可以利用signtool这样的命令行工具,写批处理,然后加入自己项目的make过程中自动加签。

阅读全文

与如何获得软件数字签名相关的资料

热点内容
电脑上怎么下载班智达的软件 浏览:901
无痕迹消除图片软件 浏览:495
免费小票软件 浏览:714
华为在哪里设置软件停止运行 浏览:691
用电脑键盘调节声音大小 浏览:1041
自动刷软件赚钱 浏览:1042
古装连续剧免费版 浏览:1200
工免费漫画 浏览:779
手机软件专门储存文件 浏览:1289
uos如何用命令安装软件 浏览:1063
有线耳机插电脑麦克风 浏览:442
侏罗纪世界3在线观看完整免费 浏览:779
单个软件怎么设置名称 浏览:511
凤凰网电脑版下载视频怎么下载视频怎么下载 浏览:1162
明白之后如何免费获得无人机 浏览:606
如何解禁软件菜单 浏览:600
副路由器连接电脑视频 浏览:1132
内置wifi电视如何装软件 浏览:842
手机换零免费雪碧 浏览:1339
国行苹果如何下载美版软件 浏览:970