您的位置:首页 > 其它

内核驱动签名sys文件签名指南

2013-05-10 10:26 344 查看
本文来自:维瑞-技术中心-内核驱动签名指南 http://www.willrey.com/support/digital_signatures_for_kernel.html

sys内核驱动签名指南

Vista Non-PnP Kernel-Mode Boot Driver签名指南

Boot Start Driver 是指在操作系统启动时,就加载的驱动。由于系统刚刚启动,所以不会像加载其他PnP 类型驱动那样,用签名的Catalog文件判断驱动的合法性。有关这方面的详细说明请参考微软文档 “Digital Signatures for Kernel Modules on Systems Running WindowsVista”(64bitDriverSigning.doc)。

注意:以下操作环境是WDK 6000版本的Vista X64 Free Build Environment。

要注意的是对64位Windows机驱动,尽量使用VeriSign代码签名证书,从 维瑞 获得两个证书文件 myprivate.pvk和 myspc.spc。

使用 pvk2pfx.exe 将这两个文件转换成 personal information exchange (.pfx) 文件

pvk2pfx -pvk myprivate.pvk -pi pvkpassword -spc myspc.spc -pfx mypfx.pfx -f

将pfx文件导入当前用户个人证书库,这步非常关键,很多签名不成功或签名的root不对的原因都和这步有关。

开始-〉运行-〉mmc,启动控制台程序

选择菜单“文件-〉添加/删除管理单元”

单击“添加”按钮

在“可用的独立管理单元”列表中选择“证书”,然后单击“添加”按钮

选择“我得用户帐户”,然后单击“完成”按钮

单击“关闭”按钮

单击“确定”按钮

完成以上步骤后,在控制台软件的左侧显示证书树形列表。见下图:



选择“个人”目录,右键单击,选择“所有任务-〉导入”



根据“证书导入向导”的提示,生成的.pfx文件导入当前个人目录下。

导入成功后,可以看到购买的证书信息。

签名命令

SignTool sign /v /ac MSCV-VSClass3.cer /s my /t http://timestamp.verisign.com/scripts/timstamp.dll mydrv.sys

MSCV-VSClass3.cer是 Verisign公司和微软的交叉根证书,可从微软网站上下载,或从维瑞下载

/s my 就是我们的个人证书库

/t 加签名的时间戳

Mydrv.sys 是要嵌入签名的驱动文件

注意:做这步时,一定要保证网络通畅。否则访问时间戳网址会失败,时间戳服务对代码签名很重要。

执行后的输出结果如下图所示,这只代表签名已经成功嵌入。



验证签名

内核驱动签名完成后,执行下面的步骤验证签名是否正确

SignTool verify /v /kp mydrv.sys

如果出现如下信息,说明嵌入签名成功

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: