案例对象:北京某知明阿里系旗下网络科技有限公司。
问题:该公司自主开发了一款网络数据流过滤器服务型驱动,驱动文件.sys在使用了代码证书签名后,可以在大部分win7,win8,win8.1都能正常通过数字签名验证起动驱动服务,但在部分windows 7旗舰版和windows 10 1607以后版本,驱动服务就是启动不了,显示没有进行数字签名。
分析:在接到该客户问题咨询后,本公司技术人员,仔细对驱动签名的方法,并搭建测试环境分析看到的问题,终合分析出现原因是:
1. windows 10 1607以后版本,对核心驱动有进一步要求,必须进过微软认证获得微软数字签名;
2. 部分windows 7旗舰版数字签名验证不通是因为部分win7对代码证书签名算法有一定要求,必须sha1。
解决方案:针对客户希望驱动能够在所有的windows系统上通过签名验证,本公司推出了中级解决方案进行双签名,这样经过认证后的驱动可以在所有的windows能过签名验证。