Redirecting you to
Article de blog janv. 07, 2021

Qu'est-ce qu'un certificat X.509 et comment fonctionne-t-il ?

Un certificat X.509 est un certificat numérique basé sur la norme X.509 de l'Union internationale des télécommunications (UIT), largement acceptée, qui définit le format des certificats d'infrastructure à clé publique (PKI). Ils sont utilisés pour gérer l'identité et la sécurité dans les communications Internet et les réseaux informatiques. Ils sont discrets et omniprésents, et nous les rencontrons tous les jours lorsque nous utilisons des sites web, des applications mobiles, des documents en ligne et des appareils connectés.

Table des Matières

Un certificat X.509 est un certificat numérique basé sur la norme X.509 de l'Union internationale des télécommunications (UIT), largement acceptée, qui définit le format des certificats d'infrastructure à clé publique (PKI). Ils sont utilisés pour gérer l'identité et la sécurité dans les communications Internet et les réseaux informatiques. Ils sont discrets et omniprésents, et nous les rencontrons tous les jours lorsque nous utilisons des sites web, des applications mobiles, des documents en ligne et des appareils connectés.

Historique des versions

La première version de la norme X.509 a été publiée en 1988. Soucieux de formaliser les règles de délivrance des certificats, le secteur de la normalisation des télécommunications de l'UIT (ITU-T) a mis au point un système hiérarchique pour les noms distinctifs qui suivait les règles du service d'annuaire électronique pour X.500 et s'inspirait des systèmes utilisés pour attribuer les numéros de téléphone à l'échelle mondiale, tout en les appliquant aux exigences organisationnelles plus souples de l'internet.


En 1996, la version 3 de la norme a fait l'objet d'une mise à jour majeure avec l'ajout de multiples extensions qui sont encore utilisées aujourd'hui pour prendre en charge l'expansion et les nouvelles applications de l'utilisation de l'internet.

La version 9, définie en octobre 2019, est la version actuelle de la norme.

En outre, le groupe de travail sur l'infrastructure à clé publique de l'Internet Engineering Task Force (IETF), connu sous le nom de PKIX, a adapté la norme de certificat X.509 v3 dans le cadre du développement de sa propre norme de profil de certificat d'infrastructure à clé publique X.509 et de liste de révocation de certificats (CRL) (RFC 5280).

Les avantages des certificats X.509

Les certificats X.509 facilitant la sécurisation de la messagerie et de la navigation sur le web, leur utilisation présente des avantages considérables pour les organisations.

Établir la confiance

Les certificats numériques, également connus sous le nom de certificats de clé publique, permettent aux individus, aux organisations et même aux appareils d'établir la confiance dans le monde numérique. En tant que fondement de toutes les identités numériques, les certificats X.509 sont omniprésents et essentiels à tous les processus connectés, des sites web aux applications, en passant par les terminaux et les documents en ligne. Par exemple, sans ces certificats, nous ne pourrions pas être sûrs que www.amazon.com est bien le site web d'Amazon.

Ce niveau de confiance est établi à la fois par le fonctionnement des certificats X.509 et par leur mode d'émission. L'architecture d'utilisation des clés permet aux certificats de vérifier que :

  1. Une clé publique appartient au nom d'hôte/domaine, à l'organisation ou à la personne figurant dans le certificat

  2. Il a été signé par une autorité de certification (CA) émettrice de confiance, comme Sectigo, ou auto-signé.

Lorsqu'un certificat est signé par une autorité de certification de confiance, l'utilisateur du certificat peut être certain que le propriétaire du certificat ou le nom d'hôte/domaine a été validé, tandis que les certificats auto-signés peuvent être moins fiables car le propriétaire ne fait l'objet d'aucune validation supplémentaire avant l'émission.

Permettre la modularité

L'évolutivité est un autre avantage de cette approche de l'identité basée sur les certificats. L'architecture PKI est tellement évolutive qu'elle peut sécuriser des milliards de messages échangés quotidiennement par les organisations sur leurs propres réseaux et sur l'internet. En effet, les clés publiques peuvent être distribuées largement et ouvertement sans que des acteurs malveillants puissent découvrir la clé privée nécessaire au décryptage du message.

Comment fonctionnent les certificats X.509 ?

La norme X.509 repose sur un langage de description d'interface appelé Abstract Syntax Notation One (ASN.1), qui définit des structures de données pouvant être sérialisées et désérialisées de manière multiplateforme. S'appuyant sur l'ASN, le format de certificat X.509 utilise une paire de clés publique et privée pour crypter et décrypter un message.

La base de l'infrastructure à clé publique

La clé publique consiste en une chaîne de nombres aléatoires et peut être utilisée pour crypter un message. Seul le destinataire prévu peut déchiffrer et lire ce message crypté et il ne peut être déchiffré et lu qu'en utilisant la clé privée associée, qui est également constituée d'une longue chaîne de nombres aléatoires. Cette clé privée est secrète et n'est connue que du destinataire. Les clés publiques sont créées à l'aide d'un algorithme cryptographique complexe qui les associe à une clé privée en générant des combinaisons numériques aléatoires de longueurs variables afin qu'elles ne puissent pas être exploitées par une attaque par force brute. Les algorithmes les plus couramment utilisés pour générer des clés publiques sont les suivants :

  • Rivest–Shamir–Adleman (RSA)

  • Cryptographie à courbe elliptique (ECC)

  • Algorithme de signature numérique (DSA)

La taille de la clé ou la longueur des bits des clés publiques détermine la force de la protection. Par exemple, les clés RSA de 2048 bits sont souvent utilisées dans les certificats SSL, les signatures numériques et autres certificats numériques. Cette longueur de clé offre une sécurité cryptographique suffisante pour empêcher les pirates de décrypter l'algorithme. Les organismes de normalisation tels que le CA/Browser Forum définissent des exigences de base pour les tailles de clés prises en charge.

Illustration : Les certificats X.509 utilisent une paire de clés publique et privée pour l'authentification et la sécurité des communications internet et des réseaux informatiques.

Les certificats X.509 utilisent des paires de clés publiques et privées pour l'authentification de l'identité et la sécurisation des communications Internet.

Les certificats X.509 utilisent une paire de clés publique et privée pour l'authentification et la sécurité de l'identité pour les communications internet et les réseaux informatiques.

Champs de délivrance

Les champs des certificats X.509 contiennent des informations sur l'identité à laquelle le certificat est délivré ainsi que sur l'identité de l'autorité de certification émettrice. Les champs standard sont les suivants :

  • Version – la version X.509 qui s'applique au certificat
  • Numéro de série – l'identifiant unique du numéro de série fourni par l'autorité de certification qui distingue le certificat des autres.
  • Informations sur l'algorithme algorithme cryptographique utilisé par l'émetteur pour signer le certificat.
  • Nom distinctif de l'émetteur – nom de l'autorité de certification qui délivre le certificat.
  • Période de validité du certificat – la date et l'heure de début et de fin de sa validité et de sa fiabilité.
  • Nom distinctif du sujet – nom de l'identité à laquelle le certificat est délivré.
  • Informations sur la clé publique du sujet – la clé publique associée à l'identité.
Illustration : Les certificats X.509 utilisent une paire de clés publique et privée pour l'authentification et la sécurité des communications internet et des réseaux informatiques.

Extensions communes des certificats numériques

En plus de ses champs d'information standard, la version 3 de la norme X.509 a défini plusieurs extensions visant à prendre en charge des modes d'utilisation élargis de l'internet par les applications clientes. Deux extensions de certificats X.509 couramment utilisées aujourd'hui sont Subject Alternative Name (nom alternatif du sujet) et Key Usage (utilisation de la clé).

  • L'extension Subject Alternative Name permet à d'autres identités d'être associées à la clé publique d'un certificat. Il peut s'agir d'autres domaines, de noms DNS, d'adresses électroniques et d'adresses IP. Sur la base de cette extension, les certificats multi-domaines proposés par les autorités de certification sont souvent appelés certificats SAN.

  • L'utilisation des clés limite l'utilisation des clés à des fins particulières, telles que la « signature uniquement ».

Les certificats numériques appliquent des chaînes de confiance hiérarchiques

Pour renforcer la confiance dans une identité, plusieurs certificats numériques sont souvent combinés pour construire une chaîne de confiance hiérarchique qui fournit une série de couches de vérification. Comme indiqué précédemment, chaque certificat doit être signé par une autorité de certification émettrice dans le cadre du processus de vérification X.509. L'autorité de certification est nommée et stockée dans la racine du certificat. Des certificats intermédiaires supplémentaires peuvent être inclus dans la chaîne de confiance et doivent être validés.

Par exemple, lorsqu'un client de navigateur web lit le certificat, il doit pouvoir suivre le chemin hiérarchique de la certification, y compris tous les intermédiaires nécessaires à la validation qui sont récursivement liés à l'autorité de certification racine répertoriée dans le magasin de confiance du client, ce qui aboutit à une chaîne de confiance complète.

Illustration : Les certificats SSL/TLS combinent souvent des certificats d'AC intermédiaires pour créer une chaîne de confiance hiérarchique.

Listes de révocation de certificats (LRC)

La norme X.509 définit également l'utilisation d'une liste de révocation de certificats, qui identifie tous les certificats numériques qui ont été révoqués par l'autorité de certification émettrice avant la date d'expiration prévue.

Ces certificats révoqués ne doivent plus être fiables.

Les LCR constituent un moyen simple de diffuser des informations sur ces certificats non valides. Cependant, leur utilisation est de plus en plus délaissée par les navigateurs web et les clients les plus répandus au profit du protocole OCSP (Online Certificate Status Protocol) et de l'agrafage OCSP, qui offrent des fonctions de révocation complètes.

Codage des certificats PKI

Un élément notable qui n'est pas défini dans la norme X.509 est la manière dont le contenu du certificat doit être encodé pour être stocké dans des fichiers.

Deux schémas de codage sont couramment utilisés pour stocker les certificats numériques dans des fichiers :

  • Le schéma DER (Distinguished Encoding Rules) est le plus courant, car il concerne la plupart des objets de données. Les certificats encodés par DER sont des fichiers binaires et ne peuvent pas être lus par des éditeurs de texte, mais peuvent être traités par les navigateurs web et de nombreuses applications clientes.

  • Privacy Enhanced Mail (PEM) est un schéma de codage de courrier électronique crypté qui peut être utilisé pour convertir les certificats codés en DER en fichiers texte.

Applications courantes de l'infrastructure à clé publique X.509

De nombreux protocoles internet reposent sur X.509, et de nombreuses applications de la technologie PKI sont utilisées quotidiennement, notamment la sécurité des serveurs web, les signatures numériques et la signature de documents, ainsi que les identités numériques.

Sécurité des serveurs web avec les certificats SSL/TLS

L'infrastructure à clé publique est à la base des protocoles SSL (Secure Sockets Layer) et TLS (Transport Layer Security) qui constituent le fondement des connexions sécurisées HTTPS des navigateurs. Sans certificats SSL ou TLS pour établir des connexions sécurisées, les cybercriminels pourraient exploiter l'internet ou d'autres réseaux IP à l'aide de divers vecteurs d'attaque, tels que les attaques de type « man-in-the-middle », pour intercepter des messages et accéder à leur contenu.

Signatures numériques et signature de documents

Outre la sécurisation des messages, les certificats basés sur l'ICP peuvent être utilisés pour les signatures numériques et la signature de documents.

Les signatures numériques sont un type spécifique de signature électronique qui s'appuie sur l'ICP pour authentifier l'identité du signataire et l'intégrité de la signature et du document. Les signatures numériques ne peuvent en aucun cas être modifiées ou dupliquées, car la signature est créée en générant un hachage, qui est crypté à l'aide de la clé privée de l'expéditeur. Cette vérification cryptographique lie mathématiquement la signature au message original afin de garantir que l'expéditeur est authentifié et que le message lui-même n'a pas été modifié.

Signature de code

La signature de code permet aux développeurs d'applications d'ajouter une couche d'assurance en signant numériquement les applications, les pilotes et les programmes logiciels afin que les utilisateurs finaux puissent vérifier qu'un tiers n'a pas modifié ou compromis le code qu'ils reçoivent. Pour s'assurer que le code est sûr et fiable, ces certificats numériques incluent la signature du développeur du logiciel, le nom de l'entreprise et l'horodatage.

Certificats d'e-mail

Les certificats S/MIME valident les expéditeurs de courrier électronique et cryptent le contenu des courriels afin de protéger les utilisateurs contre les attaques de plus en plus sophistiquées d'ingénierie sociale et d'hameçonnage. En chiffrant/déchiffrant les messages électroniques et les pièces jointes et en validant l'identité, les certificats S/MIME garantissent aux utilisateurs que les messages électroniques sont authentiques et n'ont pas été modifiés.

Clés SSH

Les clés SSH sont une forme de certificat X.509 qui fournit un justificatif d'accès sécurisé utilisé dans le protocole Secure Shell (SSH). Le protocole SSH étant largement utilisé pour la communication dans les services en nuage, les environnements réseau, les outils de transfert de fichiers et les outils de gestion de la configuration, la plupart des organisations utilisent des clés SSH pour authentifier l'identité et protéger ces services d'une utilisation involontaire ou d'attaques malveillantes. Ces clés améliorent non seulement la sécurité, mais permettent également l'automatisation des processus connectés, l'authentification unique (SSO) et la gestion des identités et des accès à l'échelle requise par les entreprises d'aujourd'hui.

Identités numériques

Les certificats numériques X.509 permettent également une authentification efficace des identités numériques. À mesure que les données et les applications dépassent les réseaux traditionnels pour s'étendre aux appareils mobiles, aux clouds publics, aux clouds privés et aux appareils IoT, la sécurisation des identités devient plus importante que jamais. Les identités numériques ne se limitent pas aux appareils ; elles peuvent également être utilisées pour authentifier des personnes, des données ou des applications. Les certificats d'identité numérique basés sur cette norme permettent aux organisations d'améliorer la sécurité en remplaçant les mots de passe, que les attaquants sont devenus de plus en plus habiles à voler.

Comment obtenir un certificat X.509 ?

Un élément essentiel du déploiement des certificats X.509 est l'existence d'une autorité de certification ou d'un agent de confiance chargé d'émettre les certificats et de publier les clés publiques associées aux clés privées des personnes. Sans cette autorité de certification de confiance, il serait impossible pour les expéditeurs de savoir qu'ils utilisent la bonne clé publique associée à la clé privée du destinataire et non la clé associée à un acteur malveillant ayant l'intention d'intercepter des informations sensibles et de les utiliser à des fins malveillantes.

Des AC tierces de confiance comme Sectigo agissent en tant qu'autorités de certification, mais de nombreuses entreprises et fournisseurs de technologie choisissent également d'agir en tant que leur propre AC. Ils peuvent également décider d'utiliser des certificats auto-signés. Dans tous les cas, l'autorité de certification doit être digne de confiance pour vérifier et se porter garante de l'identité de tous les expéditeurs dont elle publie les clés publiques, s'assurer que ces clés publiques sont effectivement associées aux clés privées des expéditeurs et préserver les niveaux de sécurité de l'information au sein de sa propre organisation afin de se prémunir contre les attaques malveillantes.

Gestion des certificats X.509

L'un des aspects les plus critiques des certificats X.509 est la gestion efficace de ces certificats à grande échelle grâce à l'automatisation. En l'absence de personnel, de processus et de technologie de qualité, les entreprises s'exposent à des violations de la cybersécurité, à des interruptions, à des dommages à leur marque et à des défaillances d'infrastructures critiques.

Découvrez comment Sectigo Certificate Manager (SCM) Pro vous permet de gérer facilement les cycles de vie des certificats numériques publics et privés. Nous proposons également une solution d'entreprise SCM pour sécuriser chaque identité humaine et machine dans l'entreprise, le tout à partir d'une plateforme unique.