To secure my web site with HTTPS, does it matter which company I source my SSL certificate from, or just that the browser recognizes it?
From the Area51 proposal.
Yes, it totally matters. You only can trust the transactions as much as you trust the certificate authority. For example, if you have a DoD-signed certificate, that's pretty trustworthy. If you have a certificate signed by Chungwa Telecom, then maybe not so much. Take a look at your browsers default CA certs sometime and think about how much you trust those parties.
I recommend taking a look at this paper for a full explanation of how malicious CAs can really wreak havoc on perceived trust: Certified Lies: Detecting and Defeating Government Interception Attacks Against SSL
I guess it really depends on the nature of your users.
99.9% of users will simply see that the browser doesn't give them any errors when they visit your site (assuming you bought the cert from a company that has their CA cert in your browser's cert store).
This does however point to a bigger problem with the PKI infrastructure as currently deployed:
Any known CA can create a certificate for any other site, and browsers will accept that certificate, even if the legitimate owner of the site already has a certificate from another CA.
While this is good in some ways, in that a site operator can change CA vendors if he chooses to, it also means that a compromised CA can be used to generate certs for arbitrary sites. This issue was raised when CNNIC's CA cert was added to Mozilla (and others) CA lists.
There seems to be an innate distrust of China (possibly related to "the great firewall"), but in truth, this does mean that any user in China, when trying to use an encrypted connection to a "subversive" site, should be checking that the certificate presented was NOT signed by the CNNIC CA cert.
There is a handy Firefox extension (Certificate Patrol) that monitors the certificates presented by various sites, and warns you if the certificate changes for any reason.
actually, where you get certificate matters a lot. Remember any one can create certificate and sign including hackers. so each browser has list of verified companies in order to compact forging certificates. so you should get your certificate from international recognized company like verisign and etc.
From one perspective, it doesn't matter much at all as long as the CA's root certs are loaded into all the major browsers. If you have an SSL cert from a CA that is trusted by those browsers, then almost all of your users will not care who issued the certificate.
For example, suppose you are building an internal app and all of your users are company employees. Your company runs an internal-only CA. Your IT department installs your company's CA cert on all employee systems. Thus whenever those employees visit your app, they will see the padlock and know that it is secure.
Similarly for an website that you are only using yourself. You could self-sign and it would be ok.
From another perspective, it absolutely matters who you choose. You definitely want a CA that has rigorous security procedures, for a couple of reasons:
As long as the browser recognizes it. The browser has a list of CA's that it trusts that handles the big ones. There are smaller ones that are trusted by the bigger CA's that are cheaper. The only trick to those is that you have to typically install extra certs on the web server called chained certs or intermediate certs so you browser can follow the trust chain from your CA to one that it knows. This is all transparent to the end user.
It matters: if you choose a CA so incompetent/dishonest that it gets kicked out of root cert store, then you better get in touch with another CA quickly.
It does NOT matter: any cert accepted by browsers will work equally well.
It DOES matter: informed "paranoid" users DO worry about CA that have done bad things in the past, so expect some users to reject or at least question you about COMODO certificates.
Anyway, the whole SSL PKI is useless!
mod edit in response to 'offensive' flag