Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Signed and Time stamped Executable failed executing and does not show proper details

Please note that this issue is only applicable for Windows Server 2008 SP2

I have developed one windows application. Prior distributing it I have signed and time stamped it using SHA1 and SHA256. This application is formed with multiple DLLs. I am signing each DLL during build process. I have used certificate from VeriSign. At the time of execution, when application is launched it verify the signature and time stamp of each DLL to ensure integrity using WinVerifyTrust API. I am getting "E_CERT_EXPIRED - Signer's Certificate was expired" error during validation.

Also, I am not able to see the time stamping details in property page of the executable. Please see below -

enter image description here

Now, that certificate is expired but according to this SO article What happens when a code signing certificate expires?. The executable should run perfectly without any problem.

I have also checked for this KB suspecting the cause but fix related to this KB is already applied. Can anybody share more light on this?

like image 391
Omkar Avatar asked Oct 06 '17 11:10

Omkar


1 Answers

You cannot sign with expired certificate, it not works (you see results yourself). What you can do is to sign with valid certificate and then signed application will not expire because of valid timestamp at the time of signing.

like image 74
Tamir Avatar answered Oct 24 '22 20:10

Tamir