Are there technical disadvantages in using free ssl certificates?

At the byte level, X.509 is X.509 and there is no reason why the free SSL certificates would be any better or worse than the non-free -- the price is not written in the certificate. Any certificate provider can fumble the certificate generation, regardless of whether he gets paid for it or not.

The hard part of a certificate is outside of it: it is in the associated procedures, i.e. everything that is in place to manage the certificates: how the key holder is authenticated by the CA, how revocation can be triggered and corresponding information propagated, what kind of legal guarantee is offered by the CA, its insurance levels, its continuity plans...

For the certificate buyer, the big value in a particular CA is where the CA succeeded in placing its root key (browsers, operating systems...). The vendors (Microsoft, Mozilla...) tend to require quite a lot of administrativia and legal stuff from the CA before accepting to include the CA root key in their products, and such things are not free. Therefore, a CA which could get its root key distributed but emits certificates for free has a suspicious business plan. This is why the free-cert dealers also offer paid certificates with some extra characteristics (certs which last longer, certs with wildcard names, extra authentication procedures...): at some point, the CA operators must have an incoming cash flow. But, ultimately, that's the CA problem, not yours. If they are willing to give away certificates for free and Microsoft is OK with including their root key as a "trusted by default key" then there is no problem for you in using such certificates.

Edit: and now there is Let's Encrypt, which is a free CA that got accepted by major browsers. Their business plan is not suspicious -- in fact, they don't have a business plan at all. They operate as a non-profit entity and they live from donations. Their found a nice niche: they got buy-in from major browser vendors who went on a crusade to kill non-HTTPS Web, and needed a free certificate issuer to convince admins of small Web sites to switch; and now, no browser vendor may leave because it would make them look complacent with regards to security.


I've been using startssl for free certificate for a for about a year and half now with only very tiny issues [...] [removed most of post from 2012 as it is irrelevant now]

EDIT 2016: There are no technical problems using a certificate from a free SSL certificate, as long as that certificate authority is trusted by your users. Please note, your example StartSSL is no longer trusted by most browsers.

Users of free certificates should be aware that free certificates are necessarily issued in an automatic fashion that will issue a certificate for a domain once you can provide an assurance you control that domain. They do not provide validation that you actually are an organization (organization validation), or do extended checks and audits against official records (extended validation). That is if someone manages to get control of a domain with a similar name, they could get valid SSL certificates for that similarly named domain. (E.g., someone manages to register america.com and tricks you into going to https://bank.of.america.com for your banking purposes and then does a man-in-the-middle attack with https://www.bankofamerica.com in order to get access to your account.) Granted, many paid certificates only provide automatic domain validation. The idea behind EV certificates is you can see in the location bar the name of the CA validated organization that exists and owns that domain.

Typically, this means you want a certificate authority that most major browsers and OSes implicitly trust by default. One of the first free certificate providers (CAcert) never obtained by default trust in most major browsers and operating systems and as a result their certificates are less useful, unless you know users of your site have installed and trusted the CAcert root certificate. The provider of free entry level SSL certs in your example (StartSSL), used to be trusted by most major browsers and operating systems. However, most major browsers are removing the trust for StartSSL (unrelated to their issuing of free certificates -- see below). However, another free certificate provider now exists that is trusted by most major browsers and operating systems called Let's Encrypt.

The reason StartSSL is no longer trusted is that StartCom (the company behind StartSSL) sold their CA to a Chinese CA company (WoSign) without disclosing the sale publicly. They also issued a certificate for a github domain without authorization and began backdating signing certificates to avoid browser restrictions. Major browser vendors (including Mozilla, Google, Apple) have begun no longer trusting certificates issued by them in their products (including Firefox, Chrome, Safari).

For more information:

https://blog.mozilla.org/security/2016/10/24/distrusting-new-wosign-and-startcom-certificates/

https://support.apple.com/en-us/HT204132

https://security.googleblog.com/2016/10/distrusting-wosign-and-startcom.html


The main technical disadvantage would only be that if a free CA is not widely accepted by browser or operating system makers, then the certificates they generate may also not be trusted. Also, if there are any issues with the CA that cause their root certificate to be invalidated, then you could run in to issues. That said, you could potentially run in to the same issues with any CA and it isn't necessarily really a technical issue directly.