对于Windows内核驱动签名,微软明确要求使用EV代码签名证书,对于Windows 10经由CA权威机构签发的EV代码签名证书给驱动签名后还必须递交到 Windows Hardware Developer Center Dashboard入口去获得微软的二次数字签名才能正式发布。

对于Windows内核驱动签名,微软明确要求使用EV代码签名证书,对于Windows 10经由CA权威机构签发的EV代码签名证书给驱动签名后还必须递交到 Windows Hardware Developer Center Dashboard入口去获得微软的二次数字签名才能正式发布。

历史背景

2015年10月31日起Windows 10中普通代码签名证书无法用于内核模式驱动签名,必须用EV 代码签名证书签名。

2016年8月1日起所有Windows 10 内核模式驱动经过CA权威机构签发的EV代码签名证书驱动签名后,都必须递交到Windows Hardware Developer Center Dashboard入口去再获得微软的二次数字签名,否则签名会被提示不合法。

在此基础上,给Windows 10的内核驱动进行签名必须要购买EV代码签名证书,签名时还需要添加微软的交叉签名,签名成功后再通过微软开发者中心递交签名文件,这样一个完整的过程才能让你的驱动在Windows10中正常使用。

如何对内核驱动签名

对内核驱动的签名需要使用微软官方的WDK的SignTool进行签名,关于准备工具及证书信息参考:

准备交叉签名

对于内核驱动签名均需要提供微软给CA权威机构准备的交叉签名,下载对应的交叉签名交叉签名证书下载,下载后与EV代码签名证书放置在同一目录

SignTool签名

打开WDK的命令行SignTool工具,以Comodo EV Code Signing证书的签名为便(下载AddTrust_External_CA_Root.cer交叉签名),输入以下命令

signtool sign /v /ac "D:\AddTrust_External_CA_Root.cer" /s MY /n "Your Company Name" /t http://timestamp.comodoca.com/authenticode "D:\driver.sys"
signtool sign /v /ac "D:\AddTrust_External_CA_Root.cer" /s MY /n "Your Company Name" /as /fd sha256 /tr http://timestamp.comodoca.com/rfc3161 "D:\driver.sys" 

该命令是对驱动的双签名,双签名在过渡阶段能够兼容低版本操作系统,第一行是sha-1签名,第二行是sha-256签名,详细如下:

  • ac 配置交叉签名路径
  • /n 证书对应企业名称
  • /as /fd sha256 是针对驱动的sha-256签名
  • /t 针对过时的sha-1时间戳
  • /tr 是sha-256对应的时间戳

签名成功后需满足5级证书链接的基本条件,如下图

kernel code sign success b571a

测试签名

执行下方命令,看到和签名成功一样的结果即表示签名成功

signtool.exe verify /pa /v "D:\driver.sys"

*注意:对于上述签名成功的驱动文件,在当前Windows电脑上测试该签名文件,是无法正常测试的,请开发人员在开发环境测试成功之后,将此发行文件提交至Windows Hardware Developer Center Dashboard,经过微软二次签名后才能在正式版的Windows上运行

常见错误

1、用国内开发的一些签名工具不能给驱动文件签名吗?

由于EV代码签名证书的载体是加密后的U盘存储,并没有pfx证书文件格式,所以只能使用signtool进行签名

2、调用驱动文件时报577错误或31错误

自2016年8月1日起,签名后的驱动文件必须将此发行文件提交至Windows Hardware Developer Center Dashboard,经过微软二次签名后才能在正式版的Windows上运行,否则均提示证书签名无效

至此,Windows 内核驱动签名注意事项就介绍到这,关于更多详情参考参考微软官方说明:对内核驱动程序进行证明签名以便公开发布,或通过右下角联系客服进行详细了解。

 

相关文章

根CA权威机构,品牌信誉保障

来自全球CA机构的数字安全产品,为您的品牌、身份建立信任,为您的数据安全保障护航



全球可信SSL/TLS

全球可信SSL/TLS证书,全品类多样化选择,涵盖DV域名型、OV企业型、EV增强型、WildCard通配符、多域名证书,便捷签发,安全可靠


DV域名型SSL/TLS

Domain Validation SSL仅需证网站域名所有权,10分钟便捷签发,网络传输机密信息得到了极大的安全保障

OV企业型SSL/TLS

Organization Validation SSL需要验证企业或组织身份信息,保障信息安全同时,展示企业的真实性和可靠性

EV增强型SSL/TLS

Extended Validation SSL对企业、组织进行高级别认证,浏览器中展现企业详细信息,增强用户的信任度


 

Wildcard通配符SSL/TLS

Wildcard通配符版证书,表示申请一张证书即可覆盖所有子域名的安全需求,选用Wildcard通配符版证书能够极大地节约运营成本。

Multi-Domain多域名SSL/TLS

Multi-Domain多域名证书是指多个主域名共用一张证书,只需对企业或组织的真实信息进行一次验证即可完成多个域名证书签发。

 

数字签名服务

INFINISIGN提供完整的数字签名服务产品
包括标准代码签名、SmarScreen认证的EV增强型代码签名、支持PDF&Office的文档签名、S/MIME邮件签名


代码签名证书

代码签名证书(Code Signing Certificates)是CA机构提供给软件开发者可以进行代码软件数字签名的认证服务。代码签名可以减少软件的安全警告,保证代码完整性和不被恶意篡改及传播。

文档签名证书

文档签名证书(Document Signing Certificates)是CA机构验证提向文档添加电子数字签名的认证服务,实现保护敏感信息、证明所有权、防篡改目的,支持PDF、Office、OpenOffice等文档格式。

S/MIME邮件签名

S/MIME邮件签名证书是CA机构提供给个人、组织、企业等签发的数字签名证书,对电子邮件等进行数字签名和加密,用于保护商业资料及个人用户的信息安全。和代码签名证书、数字证书一样具有权威性。



为何选择我们?

INFINISIGN在软件&互联网行业拥有丰富的开发实施经验
同时拥有根CA机构的直接渠道优势、API接口,提供优惠、便捷的数字安全产品。


  • 超低廉的价格来自CA机构,绕过多级代理商,拥有实惠的价格

  • 全额全额退款来自企业的保障,支持1-7天的无理由全额退款

  • 入门安装/部署/迁移WEB应用入门提供数字证书的安装部署以及迁移WEB应用

  • 超快的CA认证高效的证书接口系统,完成较快的CA认证

  • 简单的证书归属权财务与归属权分离,CA提供证书全生命周期管理

  • 完善的售前售后服务7x10小时的售前售后服务,工单+IM座席持续守候


专属便捷的证书管理平台,便捷签发部署

专属的证书管理平台,简单易操作的申请配置流程,四步完成数字证书、数字签名产品安装部署


选购产品

根据预算、需求选购最合适的产品

配置证书

递交CSR证书请求文件及基本信息

验证信息

验证域名所有权,验证企业或组织信息

下载安装

下载签发证书,部署到服务器、签名