SignerSign() 失败。 (-2146869243/0x80096005)

SignerSign() failed. (-2146869243/0x80096005)

几个月来我一直在为已编译的应用程序签名,并且有一个调用 Windows 10 SDK signtool 的脚本。它在两台不同的计算机上运行良好,我的证书有效。今天,我刚开始收到上面列出的错误编号的 "Unexpected internal error"。我尝试禁用防病毒软件,这对 in this case 有帮助,但对我没有帮助。

我的应用程序是用 Delphi 编写的,但我认为这无关紧要,因为微软的 Developer Community under Visual Studio 也报告了同样的问题。我一直在使用 SDK 的 10.0.18362.0 版本,但出现此错误后,发现有更新并尝试使用 10.0.19041.0 版本,但出现相同的错误。

还有其他人遇到这个问题吗?有什么建议吗?

这里也一样。问题是 comodoca.com 时间戳服务器的终止。

我改用 DigiCert:

"C:\Program Files (x86)\Windows Kits\bin.0.18362.0\x64\signtool.exe" sign /tr http://timestamp.digicert.com ...

UPDATE 2(困惑地钉了它)comodoca.com 实际上仍然工作正常,你只需要在你的 signtool.exe 命令中添加一个 /td sha256 开关,像这样:

"C:\Program Files (x86)\Windows Kits\bin.0.18362.0\x64\signtool.exe" sign /tr http://timestamp.comodoca.com /td sha256 ...

似乎 DigiCert 正在限制他们给出的时间戳的数量,所以我不得不切换回来。顺便说一句,您仍然可以使用来自任何证书颁发机构的任何数字证书,它不必来自 DigiCert 就可以使用他们的时间戳服务器。

"C:\Program Files (x86)\Windows Kits\bin.0.18362.0\x64\signtool.exe" sign /tr http://timestamp.sectigo.com/?td=sha256 /td sha256 ....

/?td=sha256 确实有效,但建议使用他们的新域名 http://timestamp.sectigo.com 并且需要添加额外的参数 /td sha256