首页 > 解决方案 > SignTool 未找到已安装的证书

问题描述

我有一个过期的签名代码证书,我有一个新的来替换它。我删除了旧的,通过 .pfx 使用密码导入证书并将其标记为可导出。我在我的个人商店下导入了它。它显示为代码签名的预期目的。此证书未过期,有效期至 2022 年 1 月 27 日。但是,每当我尝试使用 signtool.exe(通过构建后事件)对其进行签名时,它都会显示No certificates were found that met all the given criteria. 我尝试了 signtool 的调试,但证书似乎在那里,所以我不确定它为什么不使用它。这是我的命令行:

"$(SIGNTOOL)" sign /debug /fd sha256 /tr "http://timestamp.digicert.com" /td sha256 /n "**the cert name**" /a "$(TargetPath)"

查看调试输出它说:

3>  The following certificates were considered:

...Other certificates...

3>      Issued to: **the cert name**
3>  
3>      Issued by: Sectigo RSA Code Signing CA
3>  
3>      Expires:   Thu Jan 27 17:59:59 2022
3>  
3>      SHA1 hash: 8E90C5953CAFA7DA07A20F99548E3E23A6E22FAD

...Other certificates...

这表明它似乎找到了它,但它仍然说没有任何匹配...我还验证了它是 sha256,这就是它在此证书的属性中显示的内容。

那么为什么它不签署代码呢?

标签: digital-signaturesigntool

解决方案


推荐阅读