关于驱动的测试签名的问题?
在驱动开发中,微软为了方便开发者测试编译后的驱动,默认在编译后的驱动添加上测试签名。之前了解过一些,经过尝试,也有其他方式搞定签名校验。但是,这个提问着重讨论的是测试签名,我有几个疑问:1.测试签名的证书在哪里下载?必须要微软的测试签名证书吗?有其他机构提供测试签名下载吗?
2.之前用的是第三方签名工具,如果用微软的官方签名工具,例如vs的工具,添加测试签名的命令(含时间戳)是什么?
之前了解过一些官方工具的使用,但是现在忘了……
注:本疑问提到的测试签名不包括黑签名/泄露的签名,仅仅是指编译后在测试模式下官方免费添加的签名。 测试签名证书可以从微软官方网站下载。当前下载地址为https://docs.microsoft.com/en-us/windows-hardware/drivers/dashboard/get-a-test-certificate-for-a-qualification-lab,
如果您使用的是Windows 10或Windows Server 2016及以上版本,Windows SDK安装包里已经包含了测试签名证书,您也可以直接从安装路径下的“Kits\10\bin<Windows SDK版本号>\x64”或“Kits\10\bin<Windows SDK版本号>\x86”路径下找到makecert.exe和pvk2pfx.exe进行测试证书生成。
目前没有其他机构提供测试签名证书。
如果您想用微软的官方签名工具进行测试驱动的签名,您可以使用Windows SDK中的makecert.exe和signtool.exe命令行工具。
添加测试签名(含时间戳)的命令如下:
使用 makecert.exe 生成证书:
makecert.exe -r -pe -ss PrivateCertStore -n "CN=TestCert" testcert.cer
其中“TestCert”是证书名称,“testcert.cer”是生成的证书文件存放地址。
使用 signtool.exe 对驱动程序进行签名:
signtool.exe sign /v /s PrivateCertStore /n "TestCert" /t http://timestamp.digicert.com Driver.sys 其中“Driver.sys”是您要签名的驱动文件名称。
该命令会使用指定的测试证书(TestCert)和时间戳,对指定的驱动程序进行签名。 1.如果就是自己测试用的话 可以直接在系统里面调成测试模式就可以 2.至于要签名可以下载签名工具(度娘可以搜索出来)相对于的证书微软官网也有的,经常测试的话 我还是建议第一种方式,发布版的软件签名可以购买 这好复杂啊 测试签名,涨知识了
页:
[1]