I have just purchased a code signing certificate from Comodo. I have built a small MS Access database that I want to deploy with Inno Setup Installer. The script runs fine but I am completely new to code signing.
How can I go about signing my installation file? Do I need an external software to sign the certificate or can I do it from within Inno Setup?
I have tried to search for answers to similar questions but none was able to show me what I need to get started, and how to go about it.
Self-signed code signing certificates must be used for testing only, here's why… While you technically can self-sign a Code Signing certificate, a self-signed code signing certificate won't work for its intended purpose.
There are no free code signing certificates. And be dubious of anyone that says they can offer you free code signing certificate for free. The short answer is there are compliance constraints that prevent it, and economic incentives to abide those constraints.
Code Signing Certificates are used by software developers to digitally sign applications, drivers, executables and software programs as a way for end-users to verify that the code they receive has not been altered or compromised by a third party.
What you do is quite simple, try and follow allong
signtool.exe sign /tr http://timestamp.digicert.com /td sha256 /fd sha256 /a $p
Note the $p at the end, Inno Setup needs this... You should now have this, and note that I have added the path to signtool.exe in my path variables and that I am using DigiCert's time server to time-stamp my signature.
In the script, you now add the following code to the setup segment
SignTool=MsSign $f
this line, tells the compiler to use code signing, it will use the variable I've called MsSign, and will sign the output generated by the setup.
it should look like this 
When you look at the generated EXE you will see the digital signature 
Now this works for me because I have prepared my signature store in such a way that the command line can get the signature and I have only one code sign signature so I will not need to name it, your parameters may be different than mine are, and that's okay as long as in the end, your setup works and your code gets signed.
Hope to have helped and remember you need that $p in the variable
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With