Jusqu’à maintenant pour avoir du SSL sur son site en gratuit ou quasi gratuit on avait le choix entre :

  1. les certificats auto-signés (qui font peur aux visiteurs)
  2. les certificats signés par CAcert (qui font aussi peur aux visiteurs; mais pas à tous)
  3. StartSSL avec sa partie freemium et son interface d’administration particulièrement moche

Puis viennent ensuite les autres; ceux qui sont payants et pas qu’un peu.

Les auto-signées

Faut-t-il mieux un certificat auto-signé que pas de certificat du tout ? Je pense que oui. Visiblement, les navigateurs pensent le contraire comme firefox :

Le certificat n’est pas sûr car il est auto-signé.

CACert.org

L’autorité de certification communautaire est toujours active en 2014 et délivre des certificats. Son inclusion dans les magasins des navigateurs et systèmes d’exploitation n’a pas bougé depuis ces dernières années. Presque personne ne la reconnait; c’est bien dommage car les autres autorités de certifications en place mériteraient un peu de concurrence.

StartSSL

Une Autorité de Certification qui casse les prix. C’est plutôt bien pour nous consommateurs, hormis l’interface qui est vraiment mal fichue. En mode gratuit, on a droit à un seul sous-domaine, ce qui est un bon début. Et on doit apporter une preuve qu’on est propriétaire du domaine en répondant à un mail à postmaster@domain.tld ce qui est pas terrible - terrible.

L’avenir

Le monde évolue et deux projets intéressants pointent leur nez :

letsencrypt.org

L’autorité de certification Let’s Encrypt devrait arriver mi-2015 avec la promesse de faire des certificats gratuits mais surtout facile à générer ! Un futur remplacement pour StartSSL ?

Les deux principaux freins à l’adoption du SSL de partout sont :

  • A. la complexité du processus:
    1. prouver qu’on possède le domaine
    2. générer le certificat
    3. garder les clefs en sécurité quelque part
    4. configurer le serveur web
    5. renouveler chaque année avant l’expiration
  • B. le prix

Donc en proposant un logiciel qui s’occupe de bien simplifier la complexité du processus et qui nous offre un service gratuit on devrait faire bondir le taux d’adoption d’SSL sur le web.

No validation emails, no complicated configuration editing, no expired certificates breaking your website. And of course, because Let’s Encrypt provides certificates for free, no need to arrange payment. https://letsencrypt.org/howitworks/

Avec Mozilla, Akamai, Cisco et l’EFF en sponsors on espère que les moyens vont être donnés pour que ce projet soit un succès.

DANE

Avec DANE (DNS-based Authentication of Named Entities), le navigateur va chercher le certificat directement dans les enregistrements DNS et non plus sur le serveur web.

Il y a quatre modes de fonctionnement :

  • type 0 : Un certificat d’une AC (notre fournisseur) est présente dans l’enregistrement
  • type 1 : Le certificat du domaine (le notre) est présente dans l’enregistrement
  • type 2 : Le certificat de l’AC à utiliser est présente dans l’enregistrement (et ça court-circuite les AC pré-enregistrées dans le magasin du navigateur)
  • type 3 : Le certificat du domaine (auto-signé) est présent dans l’enregistrement

Les types 0 et 1 utilisent le système déjà en place; celui avec le cartel des Autorités de Certifications et en renforce la sécurité sur certains points.

Le type 2 est particulièrement intéressant pour les grandes entreprises. Elles peuvent ainsi forcer l’utilisation de leur autorité de certification dans leur intranet sans avoir à diffuser des certificats par GPO (dans les domaine Active Directory) — ce qui devient vite complexe pour les parc de machines hétérogènes (Mac OS X, Linux, Android, …).

Le type 2 permettrait également de forcer l’utilisation d’une autorités de certification comme CACert.org (et le rendre ainsi plus attrayant)1.

Le type 3 permettrait d’être autonome. Et serait bien approprié pour la plus part des sites : on pourrait enfin auto-signer son certificat et ne pas avoir d’alertes du navigateur.

Les obstacles à l’application de DANE :

  • il faut avoir du DNSSEC — mais c’est entrain de devenir la norme
  • il faut que les navigateurs le supportent — et espérons qu’ils le fassent comme il faut pour le type 3 sans se laisser manipuler par le lobby des AC.
  • place toute notre confiance dans le DNS.

En conclusion

  • Aujourd’hui -> StartSSL
  • Demain (mi-2015) -> Let’s encrypt
  • Après demain -> DANE en type 3

Pointeurs

  1. https://lists.cacert.org/wws/arc/cacert-sysadm/2014-07/msg00005.html