Que contient un certificat SSL ? Comment lire n'importe quel certificat avec un décodeur de certificat
À première vue, un certificat SSL/TLS ressemble à un bloc de texte illisible. Pourtant, votre nom de domaine, l'identité de l'émetteur, sa période de validité et bien d'autres informations y sont inscrits dans une structure claire. Pour les rendre lisibles, il vous suffit d'un décodeur de certificat (certificate decoder). Dans cet article, nous expliquons en termes simples ce que contient exactement un certificat, à quoi sert chaque champ et quand décoder le vôtre.
Qu'est-ce qu'un décodeur de certificat ?
Un décodeur de certificat est un outil qui prend un certificat au format PEM (le texte commençant par -----BEGIN CERTIFICATE-----) et affiche tous ses champs de façon lisible. Surtout, notre décodeur de certificat s'exécute à 100% dans votre navigateur : votre certificat reste dans votre navigateur et n'est jamais envoyé à un serveur. C'est essentiel pour votre vie privée, car un certificat peut révéler des détails sur vos domaines et votre infrastructure.
Les champs d'un certificat SSL
Subject (Sujet)
Le Subject indique qui le certificat représente. Son champ le plus important est le CN (Common Name), c'est-à-dire le nom de domaine principal. Les autres champs sont O (organisation), OU (unité), L (localité/ville), ST (région/état) et C (code pays). Les certificats gratuits comme Let's Encrypt ne contiennent généralement que le CN, sans informations d'organisation.
Issuer (Émetteur)
L'Issuer montre qui a signé le certificat, c'est-à-dire quelle autorité de certification (CA) l'a délivré. Pour les certificats Let's Encrypt, l'Issuer est généralement un certificat intermédiaire de Let's Encrypt. Comprendre la différence entre Subject et Issuer est essentiel : le Subject est votre site, l'Issuer est l'organisme de confiance qui se porte garant. S'ils sont identiques, vous détenez un certificat auto-signé.
Validité (Validity)
Chaque certificat possède une date de début (not before) et une date de fin (not after). En dehors de cette fenêtre, le certificat est invalide et les navigateurs affichent un avertissement. Les certificats Let's Encrypt sont valables 90 jours ; il est donc essentiel de surveiller la date d'expiration et de renouveler à temps.
SAN (Subject Alternative Names)
La liste SAN contient tous les noms de domaine couverts par le certificat. Les navigateurs modernes ne regardent plus seulement le CN, mais la liste SAN. Ainsi, pour que example.com et www.example.com soient tous deux couverts, les deux doivent figurer dans les SAN. Dans un certificat générique (wildcard), vous verrez ici *.example.com.
Numéro de série et algorithme de signature
Le numéro de série est l'identifiant unique que la CA attribue à chaque certificat ; il sert à rechercher un certificat dans les listes de révocation. L'algorithme de signature indique comment le certificat a été signé ; aujourd'hui, vous verrez généralement SHA-256 with RSA ou un algorithme basé sur ECDSA.
Clé publique (type et taille)
La clé publique est le fondement du chiffrement. Son type peut être RSA ou EC (courbe elliptique). La taille indique la robustesse : pour RSA, 2048 bits est le minimum considéré comme sûr et 4096 bits est plus robuste ; une clé ECDSA de 256 bits offre une protection solide à peu près équivalente à RSA 3072. Une clé plus grande n'est pas toujours plus rapide, les clés EC offrent une sécurité élevée pour une petite taille.
Empreintes (SHA-1 / SHA-256)
Une empreinte est un condensé unique calculé sur l'ensemble du certificat. Elle sert à confirmer que deux parties détiennent le même certificat. Par exemple, lors d'un pinning dans une application mobile ou d'une vérification avec une équipe de support, vous comparez l'empreinte SHA-256. SHA-1 étant désormais jugé faible, préférez SHA-256 pour la vérification.
Quand décoder un certificat ?
- Pour vérifier ce que la CA a délivré : confirmez que le certificat reçu contient bien le domaine souhaité.
- Pour contrôler les SAN et l'expiration : assurez-vous que tous vos sous-domaines sont couverts et que le certificat n'expire pas bientôt.
- Pour comparer une empreinte : prouvez que le certificat présent sur le serveur est bien celui attendu.
- Lors d'un dépannage : diagnostiquez des erreurs comme "le mauvais certificat est servi".
Comment l'utiliser
- Ouvrez votre fichier de certificat (
.crt,.pemoufullchain.pem) dans un éditeur de texte. - Copiez le bloc compris entre
-----BEGIN CERTIFICATE-----et-----END CERTIFICATE-----. - Collez-le dans le décodeur de certificat et examinez les champs décodés.
Si vous n'avez pas encore de certificat, vous pouvez créer un certificat Let's Encrypt gratuit de 90 jours en quelques minutes avec notre assistant pour obtenir un certificat, puis vérifier le résultat avec le décodeur.
Résumé
Un certificat SSL se compose du Subject, de l'Issuer, de la fenêtre de validité, des SAN, du numéro de série, de l'algorithme de signature, de la clé publique et des empreintes. Lire ces champs ne demande aucune expertise particulière, seulement le bon outil. Un décodeur de certificat affiche toutes ces informations en quelques secondes et en toute confidentialité, car votre certificat reste dans votre navigateur. Avant de renouveler, de déployer ou de dépanner, décodez rapidement votre certificat pour vous assurer que tout est correct.