SignTool Error: File not found:

最近更新了手头维护的一个驱动程序,想要重新打上数字签名,结果老是报“SignTool Error: File not found:”这个错误,搞郁闷了,后来发现还是自己对公钥私钥的概念没搞清楚。

去年是参照M$官网上的说明,用 makecert 生成一个测试证书,然后再通过 signtool 来使用这个证书给驱动程序签名,同时将 .cer 文件随驱动程序一起分发,以方便 win7 x64 能自动加载这个驱动程序。

后来工作机的硬盘坏了后,找 IT 重新安装了系统,以为直接将原来生成的 .cer 文件导入就可以了,于是就发生了前面说的错误。

就俺现在的理解,.cer 相当于公钥,而 makecert 在生成 .cer 时,同时还生成了对应的私钥文件并且导入到系统中,所以后来直接将 .cer 导入其实是没用的,这个只能用来验证签名,而不能用来生成签名。

为了防止再发生这样的事情,应该在生成新证书后,连带私钥一起导出成 .pfx 文件并备份好,这样以后万一机器再出问题就可以重新导入了。

此条目发表在软件开发分类目录,贴了, 标签。将固定链接加入收藏夹。

留下评论