说实话,我自己也不知道在哪里放这个,但是我把它放在这里,因为签名过程需要VS的signtool。关于签名和数字证书,我有点困惑。
如果我错了,请纠正我。
1)签名有两种类型:代码签名和驱动程序签名。驱动程序必须执行后者,而最终用户软件只需要进行代码签名。
2)驾驶员签名需要来自VeriSign,GlobalSign等来源的数字证书。在进行代码签名时,我们可以使用自己生成的公钥生成自己的证书。
我是否理解正确的事情?
答案 0 :(得分:2)
有两种类型的签名:代码签名和驱动程序签名。 驱动程序必须执行后者,而最终用户软件只需要执行 代码签名。
这2种类型是:代码签名和EV代码签名。驱动程序需要稍后再加上其他验证和批准,但仅在Windows 10驱动程序附带时才需要。
驱动程序签名需要来自以下来源的数字证书: VeriSign,GlobalSign。在进行代码签名时,我们可以生成自己的代码 使用我们自己生成的公共密钥的证书。
(用于驱动程序的)EV签名来自同一家公司,但是它们包含了每次签名都需要的硬件令牌,
Windows 10驱动程序需要以下条件:
EV (Extended Validation) 代码签名,requires a hardware token的价格要比常规代码签名证书高。
Submission to Microsoft是由他们签名的计数器代码。为此,需要签名者(必须使用Microsoft硬件程序register签名)。 此要求自2016年1月起。
关于此过程,tutorial非常好。
答案 1 :(得分:1)
前段时间我使用内核模式代码签名演练http://msdn.microsoft.com/en-us/library/windows/hardware/gg487328.aspx(可以下载为doc文件)学习了驱动程序签名。我从未听说过内核模式驱动程序的代码签名。对于驱动程序,有两种签名类型:test-sign和release-sign。测试符号用于开发过程,Win7和Vista 64位仅允许在特殊模式下测试签名的驱动程序。发布标志用于生产发布,需要购买数字证书。发布签名的驱动程序可以在任何Windows版本中安装,没有任何限制。
内核模式代码签名演练包含有关内核模式驱动程序的测试和发布签名的逐步说明。