Gestion des clés
Norme de l'UIT-T qui définit le format des certificats à clé publique : une structure signée par une autorité de certification qui associe une clé publique à une identité. C'est le format qu'utilisent TLS, S/MIME, la signature de code et à peu près toutes les PKI en circulation.
Contenu d'un certificat : Un certificat X.509 v3 contient un sujet, un émetteur, une période de validité, un numéro de série, la clé publique et des extensions (noms DNS dans subjectAltName, usages autorisés, contraintes de base). Le tout est signé par l'émetteur ; modifier un seul octet invalide la signature.
Chaîne de confiance : Le certificat d'un site est signé par une autorité intermédiaire, elle-même signée par une racine présente dans le magasin de confiance du système ou du navigateur. Le client remonte la chaîne et vérifie chaque signature ; un seul maillon cassé suffit à tout refuser.
Encodage : La structure est décrite en ASN.1 et encodée en DER, un format binaire. On la croise surtout en PEM : le même DER passé en Base64 et encadré par les lignes BEGIN CERTIFICATE et END CERTIFICATE.
Expiration et révocation : Un certificat compromis se révoque via une CRL ou OCSP, mais beaucoup de clients vérifient la révocation avec la rigueur d'un contrôle de billets dans un train vide. D'où la tendance actuelle aux certificats de courte durée, renouvelés automatiquement.
Ce qui arrive si on s'en passe
Sans certificat X.509, une clé publique reçue n'est qu'une suite d'octets : rien n'atteste à qui elle appartient. Un client TLS qui ne vérifie pas la chaîne de certificats jusqu'à une autorité de confiance accepte la clé de n'importe quel interlocuteur, y compris celle d'un intermédiaire placé sur le chemin réseau. Le chiffrement reste actif, mais il protège alors une conversation avec l'attaquant, qui peut lire et modifier le trafic. En S/MIME comme en signature de code, la signature ne peut plus être rattachée à une identité vérifiable : un message ou un binaire signé avec une clé quelconque devient impossible à distinguer d'un envoi légitime. On perd aussi la date d'expiration et la révocation (listes CRL, OCSP) : une clé compromise reste acceptée sans limite, puisqu'aucune structure ne permet de la déclarer invalide.
Explication de la marmotte
Imagine une carte d'identité pour un site web. Elle indique le nom du site, sa date d'expiration et un cadenas numérique qui n'appartient qu'à lui. Le problème, c'est que n'importe qui pourrait fabriquer une fausse carte. Alors un organisme de confiance, un peu comme la mairie qui délivre les vraies cartes d'identité, y appose un tampon impossible à imiter. Ton navigateur connaît à l'avance la liste de ces organismes. Quand tu visites le site de ta banque, il vérifie le tampon : s'il est authentique et pas périmé, il affiche le petit cadenas. Sinon, il t'avertit que quelqu'un essaie peut-être de se faire passer pour ce site.
Où ce terme est utilisé
- Jetons d'accès liés au certificat client : ce que mTLS ajoute à OAuth (10 occurrences)
- DigiNotar 2011 : compromission d'une autorité de certification (4 occurrences)
- EST : enrôler des certificats X.509 par transport sécurisé (3 occurrences)
- Extensions X.509 v3 Key Usage EKU et Basic Constraints (3 occurrences)
- La révocation qui ne marche pas (3 occurrences)
- Relier une clé à une identité: certificats et PKI (3 occurrences)
- Attestation matérielle HSM des clés générées (2 occurrences)
- Héritage, politique et limites de la cryptographie (2 occurrences)
- L'heure comme dépendance de sécurité (2 occurrences)
- Messageries, courrier sécurisé et groupes chiffrés (2 occurrences)
