Certificates
Last updated
Last updated
Utilisez Trickest pour construire et automatiser facilement des workflows alimentés par les outils communautaires les plus avancés au monde. Accédez dès aujourd'hui :
Un certificat de clé publique est une identité numérique utilisée en cryptographie pour prouver que quelqu'un possède une clé publique. Il inclut les détails de la clé, l'identité du propriétaire (le sujet) et une signature numérique d'une autorité de confiance (l'émetteur). Si le logiciel fait confiance à l'émetteur et que la signature est valide, une communication sécurisée avec le propriétaire de la clé est possible.
Les certificats sont principalement délivrés par des autorités de certification (CA) dans une configuration d'infrastructure à clé publique (PKI). Une autre méthode est le réseau de confiance, où les utilisateurs vérifient directement les clés les uns des autres. Le format commun des certificats est X.509, qui peut être adapté à des besoins spécifiques comme décrit dans la RFC 5280.
Dans les certificats x509, plusieurs champs jouent des rôles critiques pour garantir la validité et la sécurité du certificat. Voici un aperçu de ces champs :
Le Numéro de version indique la version du format x509.
Le Numéro de série identifie de manière unique le certificat au sein du système d'une autorité de certification (CA), principalement pour le suivi des révocations.
Le champ Sujet représente le propriétaire du certificat, qui peut être une machine, un individu ou une organisation. Il inclut des détails d'identification détaillés tels que :
Nom commun (CN) : Domaines couverts par le certificat.
Pays (C), Localité (L), État ou Province (ST, S, ou P), Organisation (O) et Unité organisationnelle (OU) fournissent des détails géographiques et organisationnels.
Le Nom distinctif (DN) encapsule l'identification complète du sujet.
L'Émetteur détaille qui a vérifié et signé le certificat, y compris des sous-champs similaires au Sujet pour la CA.
La Période de validité est marquée par les horodatages Non Avant et Non Après, garantissant que le certificat n'est pas utilisé avant ou après une certaine date.
La section Clé publique, cruciale pour la sécurité du certificat, spécifie l'algorithme, la taille et d'autres détails techniques de la clé publique.
Les extensions x509v3 améliorent la fonctionnalité du certificat, spécifiant l'Utilisation de la clé, l'Utilisation étendue de la clé, le Nom alternatif du sujet et d'autres propriétés pour affiner l'application du certificat.
L'Utilisation de la clé identifie les applications cryptographiques de la clé publique, comme la signature numérique ou le chiffrement de clé.
L'Utilisation étendue de la clé restreint davantage les cas d'utilisation du certificat, par exemple, pour l'authentification du serveur TLS.
Le Nom alternatif du sujet et la Contrainte de base définissent les noms d'hôte supplémentaires couverts par le certificat et s'il s'agit d'un certificat d'entité finale ou d'une CA, respectivement.
Des identifiants comme l'Identifiant de clé du sujet et l'Identifiant de clé de l'autorité garantissent l'unicité et la traçabilité des clés.
L'Accès aux informations de l'autorité et les Points de distribution de la liste de révocation (CRL) fournissent des chemins pour vérifier l'autorité de délivrance et vérifier l'état de révocation du certificat.
Les SCT de pré-certificat CT offrent des journaux de transparence, cruciaux pour la confiance du public dans le certificat.
OCSP (RFC 2560) implique un client et un répondant travaillant ensemble pour vérifier si un certificat de clé publique numérique a été révoqué, sans avoir besoin de télécharger le CRL complet. Cette méthode est plus efficace que le CRL traditionnel, qui fournit une liste de numéros de série de certificat révoqués mais nécessite le téléchargement d'un fichier potentiellement volumineux. Les CRL peuvent inclure jusqu'à 512 entrées. Plus de détails sont disponibles ici.
La transparence des certificats aide à lutter contre les menaces liées aux certificats en garantissant que l'émission et l'existence des certificats SSL sont visibles pour les propriétaires de domaines, les AC et les utilisateurs. Ses objectifs sont :
Empêcher les AC d'émettre des certificats SSL pour un domaine sans la connaissance du propriétaire du domaine.
Établir un système d'audit ouvert pour suivre les certificats émis par erreur ou de manière malveillante.
Protéger les utilisateurs contre les certificats frauduleux.
Les journaux de certificats sont des enregistrements publics, vérifiables et en ajout seulement de certificats, maintenus par des services réseau. Ces journaux fournissent des preuves cryptographiques à des fins d'audit. Les autorités d'émission et le public peuvent soumettre des certificats à ces journaux ou les interroger pour vérification. Bien que le nombre exact de serveurs de journaux ne soit pas fixe, il est censé être inférieur à mille à l'échelle mondiale. Ces serveurs peuvent être gérés de manière indépendante par des AC, des FAI ou toute entité intéressée.
Pour explorer les journaux de transparence des certificats pour un domaine, visitez https://crt.sh/.
Différents formats existent pour stocker des certificats, chacun ayant ses propres cas d'utilisation et compatibilité. Ce résumé couvre les principaux formats et fournit des conseils sur la conversion entre eux.
Format le plus largement utilisé pour les certificats.
Nécessite des fichiers séparés pour les certificats et les clés privées, encodés en Base64 ASCII.
Extensions courantes : .cer, .crt, .pem, .key.
Principalement utilisé par Apache et des serveurs similaires.
Un format binaire de certificats.
Ne contient pas les déclarations "BEGIN/END CERTIFICATE" que l'on trouve dans les fichiers PEM.
Extensions courantes : .cer, .der.
Souvent utilisé avec les plates-formes Java.
Stocké en Base64 ASCII, avec les extensions .p7b ou .p7c.
Contient uniquement des certificats et des certificats de chaîne, excluant la clé privée.
Pris en charge par Microsoft Windows et Java Tomcat.
Un format binaire qui encapsule les certificats de serveur, les certificats intermédiaires et les clés privées dans un seul fichier.
Extensions : .pfx, .p12.
Principalement utilisé sur Windows pour l'importation et l'exportation de certificats.
Les conversions PEM sont essentielles pour la compatibilité :
x509 vers PEM
PEM to DER
DER to PEM
DER en PEM
PEM vers P7B
Conversion de PKCS7 en PEM
Conversions PFX sont cruciales pour la gestion des certificats sur Windows:
PFX vers PEM
PFX to PKCS#8 implique deux étapes :
Convertir PFX en PEM
Convert PEM to PKCS8
Convertir PEM en PKCS8
P7B vers PFX nécessite également deux commandes :
Convertir P7B en CER
Convertir un certificat CER et une clé privée en format PFX
Utilisez Trickest pour construire facilement et automatiser des workflows alimentés par les outils communautaires les plus avancés au monde. Accédez-y aujourd'hui :