Reputation: 503
I'm planning on signing one of my software with a code signing certificate, because when a user downloads it a tries to run it, Windows 10 will show a full screen warning that it might be dangerous.
The certificate is quite expensive, and the EV certificates promise that they get rid of the warning immediately, but not in a straightforward way, I cannot really trust them.
So my question is how long does it take for windows to stop showing the warning after I buy a standard cert and sign my code, and what do I exactly need to do to make the process faster?
Thanks.
Upvotes: 16
Views: 4285
Reputation: 3753
It seems to be made of 2 parts - application reputation and certificate (thumbprint) reputation.
SmartScreen builds reputation both for the program and for the code signing certificate thumbprint. Application may establish reputation after a certain time and number of downloads (worldwide) and certificate thumbprint as it seems takes a bit longer to establish a reputation.
According to Microsoft, once the certificate thumbprint has gained enough reputation, any future signed executable using that certificate will no longer issue a warning so it makes sense to purchase 3-year certificate rather than 1-year to keep the thumbprint the same for as long as possible.
Microsoft does not publish how many installations are required to gain thumbprint nor software reputation. The only way to gain instant reputation is EV certificate.
Update: Since 2023, new OV certificate requirement is that it can only be used from hardware token, so this makes it more expensive than it used to be which was OV certificate advantage before. So now with only a step away from a EV certificate, OV makes less sense now than back in the days when you could just download it as .PFX file and store it without a token.
Upvotes: 5
Reputation: 6171
Unfortunately, this is difficult to answer, since Microsoft itself refuses to publish any details about this. According to inofficial numbers reported by various sources (see below), it usually takes between 2 and 8 weeks
until the warning will permanently go away. It seems that the exact duration also depends on the reputation of the website from which your app is downloaded.
The inofficial numbers are:
18 days
and about 430 app installs
. Source: one of my own certificates (Dec 2022)42 days
and about 1.400 app installs
. Source: one of my own certificates (Feb 2021)16 days
and about 2.000 app installs
. Source: one of my own certificates (May 2020)One month
and more than 10.000 downloads
. Source: here (Jan 2020)a few weeks
and a month
. Source: here (Dec 2019)2-3 weeks
. Source: here (Dec 2019)3.000 downloads
. Source: here (Dec 2013)Also see my other answer here to get the whole picture about these Microsoft SmartScreen warnings and what you can do and should know about it.
Upvotes: 10
Reputation: 1
last time in 2021-12-1 ,I bought an OV code certificate. After about 3 months,it still displayed "microsoft defender smartscreen". I summited it to https://www.microsoft.com/en-us/wdsi/filesubmission. Fill in "Detection name *" use "Windows Defender SmartScreen prevented an unrecognized app from start warn". About 2 days later microsoft defender smartscreen
disappeared。
Upvotes: 0
Reputation: 41
Last time in 2017 my OV code signing certificate gained enough reputation in about 1 month and about 300 downloads.
It was a bit scary to publish a newly signed installer that shows a blue window of the Smart Screen, but I minimized the harm of that Smart screen warning: on my website I've got a webpages in different languages, so I placed the new installer on localized pages for languages that don't give much sales, like Portuguese/Romanian/Hungarian. I guess I lost some sales, but not too many.
And after 1 month or so all future signed installers were not causing a Smart Screen warning. That time I got a certificate for 4 years and lived happily all these 4 years.
Now I need to reissue the code signing certificate. Cannot renew because of the company name modification. And I want to get the new code signing certificate for maximal number of years.
But unfortunatelly certification centers give certificates now for 39 months max. Some of them allow you to pay for 4 or 5 years: they explain that after 3 years they will make a technical re-issue of the certificate for the rest 1 or 2 years. Maybe it is a good idea, maybe not, but I decided to purchase 3 year certificate.
I found that Microsoft gave the following recommendations:
· When using a new certificate (or even renewing a cert), use the same information (Name, email contact address, etc.) that was used for an older, established certificate
· Use the new certificate to sign an already established application
· Sign a new application with an already established certificate
· Ensure that applications signed with the new certificate are accessible (rather than remaining on an intranet, for example)
· Do not create many different certificates for signing applications. Use a limited number of certificates, and ensure that applications that are signed with them are not vulnerable to compromise
· Consider renewing the certificate a little early and signing a few of your applications with it before your existing certificate expires
The last advice is very important, because it is better to have a valid certificate, till the new one gain reputation.
Upvotes: 3
Reputation: 503
I forgot about this question but got resolved since then.
It took a couple of days, and couple of downloads, but it have gone away.
Since then we moved to EV cert for a different reason, but standard ones are still fine.
Upvotes: 12