As I was trying out my new certificate, I got the following error:
SignTool Error: An unexpected internal error has occurred.
Error information: "Error: SignerSign() failed." (-2146869243/0x80096005)
Last time I had this error, I simply gave up and used other timeserver. This time I had a bit more time and wanted to understand from where the error was coming. After a bit of checking, I think I got it now. It’s the digest algorithm.
SignTool still uses SHA-1 as default. Some servers (e.g.
timestamp.digicert.com) are ok with that. However, some servers (e.g.
timestamp.sectigo.com) are not that generous. They simply refuse to use weak SHA-1 for their signature.
Solution is simple – just add
/td sha256 to the list of codesign arguments.