Compare Revisions
Certificats d’authentification pour les sites web sécurisés
Revision 275306:
Revision 275306 by Mozinet on
Revision 292045:
Revision 292045 by Y.D. on
Keywords:
sécurité certificat authentification PKI
sécurité certificat authentification PKI
Search results summary:
Les sites web peuvent s’identifier auprès de Firefox à l’aide d’un certificat. Découvrez comment Firefox vérifie l’authenticité des sites que vous visitez.
Les sites web peuvent s’identifier auprès de Firefox à l’aide d’un certificat. Découvrez comment Firefox vérifie l’authenticité des sites que vous visitez.
Content:
Les certificats TLS (''[https://fr.wikipedia.org/wiki/Transport_Layer_Security Transport Layer Security]'', sécurité de la couche de transport) vérifient l’intégrité à la fois du propriétaire et des informations des sites web que vous consultez. Cet article explique comment cela fonctionne.
__TOC__
=Sites web qui utilisent des certificats=
Les sites web dont l’adresse commence par '''https''' utilisent des certificats TLS. Ces sites sont sûrs seulement dans la mesure où ils remplissent deux conditions :
*l’administrateur ou l’administratrice du site web possède le nom du site web ou en connaît le propriétaire ;
*le site web chiffre la connexion entre votre navigateur et lui pour empêcher qu’elle soit espionnée.
=Chaîne de confiance=
Les navigateurs, tel Firefox, vérifient les certificats via une hiérarchie appelée une '''chaîne de confiance'''. Elle définit une structure à l’intention des navigateurs et d’autres programmes qui leur permet de vérifier l’intégrité d’un certificat. Le diagramme suivant illustre la chaîne de confiance :
;[[Image:chain-of-trust]]
Il s’agit d’une liste composée de trois certificats :
*le certificat racine '''(certificat approuvé)'''
*le certificat intermédiaire
*le certificat du serveur '''(entité finale)'''
Définissons-les. Le certificat racine appartient à une [https://fr.wikipedia.org/wiki/Autorit%C3%A9_de_certification autorité de certification] (AC) qui délivre des certificats TLS auquel le navigateur fait confiance intrinsèquement. Le certificat intermédiaire sert de truchement entre l’AC racine et le site web. Le certificat du serveur appartient à la personne qui administre le site.
Ces certificats contiennent les informations suivantes :
*des détails sur l’autorité de certification (AC)
*une paire de clés asymétriques :
**une clé privée qui signe de façon chiffrée le prochain certificat de la chaîne ; le certificat du serveur dispose en d’une pour d’autres tâches ;
**une clé publique pour déchiffrer la signature du certificat suivant dans la chaîne pour vérifier son identité : le certificat du serveur l’utilise pour d’autres tâches.
Nous pouvons maintenant décrire comment Firefox détermine la sécurité d’un site web.
==Vérification de l’intégrité des certificats par Firefox==
Voici la démarche que Firefox emploie la chaîne de confiance pour vérifier les certificats TLS :
#Firefox télécharge le certificat du site web que vous visitez.
#Firefox vérifie le certificat en utilisant sa base de données interne des autorités de certification (AC).
#*Il se sert de la clé publique du certificat racine de l’AC pour s’assurer que le certificat racine et le certificat intermédiaire sont correctement signés en descendant la chaîne.
#Firefox vérifie auprès de l’AC pour être sûr que le site web auquel vous vous connectez correspond bien au site web du certificat serveur.
#Firefox génère une clé symétrique (unique) pour chiffrer le trafic HTTP de la connexion.
#Firefox chiffre la clé symétrique avec la clé publique du certificat du serveur.
#La clé privée, qui se trouve sur le serveur web, déchiffre les données de la connexion.
=Afficher un certificat=
Pour afficher un certificat, suivez ces instructions :
#Cliquez sur l’icône de cadenas.
#;[[Image:padlock-icon]]
#Cliquez sur {button Connexion sécurisée}
#;[[Image:connection-secure]]
#Cliquez sur {button Plus d’informations}
#;[[Image:more-information]]
#Dans la fenêtre popup, cliquez sur {button Afficher le certificat}
Firefox ouvre alors la page ''about:certificate'' montrant le certificat du site web sur lequel vous vous trouvez :
;[[Image:about-certificate-page]]
Les trois onglets présentent, de gauche à droite, le certificat du serveur, le certificat intermédiaire et le certificat racine.
=Contenu d’un certificat=
Les certificats TLS contiennent les informations suivantes :
*'''Nom du sujet :''' contient le nom du site web et des attributs optionnels comme des informations sur l’organisation qui détient le certificat.
*'''Nom de l’émetteur :''' identifie l’entité qui a émis le certificat.
*'''Validité :''' affiche la période de validité du certificat.
*'''Nom alternatif du sujet du certificat :''' énumère les adresses de sites web pour lesquels le certificat est valide.
*'''Informations sur la clé publique :''' énumère les attributs de la clé publique du certificat.
*'''Numéro de série :''' identifie de façon unique le certificat.
*'''Algorithme de signature :''' algorithme créé pour générer la signature.
*'''Empreintes numériques :''' hachage du fichier du certificat au format binaire [https://wiki.openssl.org/index.php/DER DER (lien en anglais)].
*'''Utilisations de la clé''' et '''Utilisations étendues de la clé :''' spécifient l’utilisation possible du certificat par les gens, comme confirmer la propriété d’un site web (''Web Server Authentication'', authentification du serveur web).
*'''Identifiant de clé du sujet :''' un identifiant généré à partir de la clé publique du certificat TLS, moyen d’identifier le certificat.
*'''Identifiant de clé de l’autorité :''' un identifiant généré à partir de la clé publique du certificat TLS, moyen d’identifier la clé publique correspondant à la clé privée utilisée pour signer le certificat.
*'''Points de terminaison CRL :''' l’emplacement de la [https://fr.wikipedia.org/wiki/Liste_de_r%C3%A9vocation_de_certificats liste de révocation des certificats, (''Certificate Revocation List'', CRL)] de l’AC émettrice.
*'''Informations sur l’autorité :''' contient la méthode de validation pour les fichiers de l’autorité du certificat et le certificat intermédiaire.
*'''Politiques du certificat :''' contient le type de validation du certificat et un lien vers la [https://csrc.nist.gov/glossary/term/certification_practice_statement déclaration des pratiques de certification (''Certification Practices Statement'', (CPS)] de l’autorité de certification.
*'''SCT intégrés :''' énumère les [https://www.globalsign.com/en/blog/what-is-certificate-transparency horodatages des certificats signés] (''Signed Certificate Timestamps'', SCT).
=Certificats problématiques=
Lorsque vous naviguez sur un site web dont l’adresse commence par '''https''' et qu’il y a un problème avec le certificat TLS, vous voyez une page d’erreur. Quelques erreurs de certificat courantes sont décrites dans [[What does "Your connection is not secure" mean?]]
Pour afficher le certificat qui pose problème, suivez ces instructions :
#Sur la page d’avertissement '''La connexion n’est pas sécurisée''', cliquez sur {button Avancé…}
#;[[Image:bad-cert-advanced]]
#Cliquez sur '''Afficher le certificat'''.
#;[[Image:view-bad-certificate]]
#Le mauvais certificat s’affiche.
<!-- cette fonctionnalité semble abandonnée
=Rapporter des erreurs de certificat=
Les pages d’erreur de certificat contiennent une option permettant de rapporter l’erreur à Mozilla. Partager l’adresse et l’identification (le certificat d’authentification numérique) du site non approuvé nous aide à identifier et bloquer les sites malveillants afin de vous protéger au mieux.
-->
<!-- see discussion
=Supprimer les certificats=
Vous pouvez supprimer des certificats en procédant comme suit :
#[[Template:optionspreferences]]
#Cliquez sur {menu Vie privée et sécurité} dans le panneau de gauche.
#Faites défiler jusqu’à la section '''Certificats'''.
#Cliquez sur le bouton {button Afficher les certificats…}
#;La fenêtre '''Gestionnaire de certificats''' s’affiche avec l’onglet {menu Vos certificats} sélectionné par défaut, qui contient une liste des certificats associés.
#Cliquez sur un certificat de la liste.
#Cliquez sur le bouton {button Supprimer…} en bas de la fenêtre contextuelle.
#;Une fenêtre de confirmation s’affiche.
#Cliquez sur le bouton {button OK}
#;Le certificat ne s’affiche plus dans l’onglet {menu Vos certificats}
-->
Les certificats TLS (''[https://developer.mozilla.org/docs/Web/Security/Transport_Layer_Security Transport Layer Security]'', sécurité de la couche de transport) des sites web sécurisés vérifient à la fois l’intégrité de leur possession et celle des informations que vous recevez de ces sites. Cet article explique comment cela fonctionne.
__TOC__
=Sites web qui utilisent des certificats=
Les sites web dont l’adresse commence par '''https''' utilisent des certificats de serveur TLS. Ces sites sont sûrs seulement dans la mesure où ils fournissent l’assurance que sont remplies deux conditions :
*l’administrateur ou l’administratrice du site web possède le nom de domaine ou en détient le contrôle, garantissant que l’on se connecte au site légitime et non à une copie contrefaite ou malveillante ;
*les échanges de données via TLS entre le navigateur et le site web sont chiffrées pour offrir une protection contre l’espionnage ou la falsification par des tiers non autorisés.
=Chaîne de confiance=
Les navigateurs, tel Firefox, vérifient les certificats via une hiérarchie appelée une '''chaîne de confiance'''. Elle définit une structure à l’intention des navigateurs et d’autres programmes qui leur permet de vérifier l’intégrité d’un certificat. Il s’agit d’une liste composée de trois certificats :
*le certificat racine '''(certificat approuvé)'''
*le certificat intermédiaire
*le certificat de serveur TLS '''(entité finale)'''
;[[Image:chain-of-trust]] <!-- Localizers: "chain-of-trust" image is optional -->
Définissons-les. Le certificat racine appartient à une [https://fr.wikipedia.org/wiki/Autorit%C3%A9_de_certification autorité de certification] (AC) qui délivre des certificats de serveur TLS auquel le navigateur fait confiance intrinsèquement. Le certificat intermédiaire sert de truchement entre l’AC racine et le site web. Le certificat de serveur TLS est délivré à l’entité ou l’organisation qui prouve son contrôle sur le domaine du site web.
Les certificats de serveur TLS s’appuient sur la cryptographie à clés publiques dans laquelle une paire de clés asymétriques contient deux clés mathématiquement associées :
*une clé privée : cette clé est gardée secrète par son propriétaire et sert aux opérations de chiffrement telle la signature de données (y compris des certificats) ou le déchiffrement des informations chiffrées grâce à la clé publique
*une clé publique : cette clé est partagée publiquement et sert à vérifier les signatures créées par la clé privée et à chiffrer des informations que seule la clé privée est en mesure de déchiffrer
Les certificats de clé publique contiennent les informations suivantes :
*des détails sur l’autorité de certification (AC) qui a émis le certificat
*une clé publique appartenant à l’organisation qui a reçu le certificat
*des détails permettant d’identifier l’organisation qui détient la clé privée (voir [[#w_contenu-dun-certificat|Contenu d’un certificat]] ci-dessous, pour TLS, c’est principalement le nom de domaine du site web)
Nous pouvons maintenant décrire comment Firefox détermine la sécurité d’un site web.
==Vérification de l’intégrité des certificats par Firefox==
Voici comment Firefox utilise la chaîne de confiance pour vérifier les certificats de serveur TLS :
#Firefox télécharge le certificat du site web que vous visitez.
#Firefox vérifie le certificat en utilisant sa base de données interne des autorités de certification (AC) de confiance.
#*Il se sert de la clé publique du certificat racine de l’AC pour s’assurer que le certificat racine et le certificat intermédiaire sont correctement signés en descendant la chaîne vers le certificat de serveur TLS que le site a fourni.
#Firefox vérifie les informations contenues dans le certificat pour être sûr que le site web auquel vous vous connectez correspond bien au site web listé dans le certificat.
#Firefox génère une clé symétrique (unique) pour chiffrer le trafic HTTP de la connexion.
#Firefox chiffre la clé symétrique avec la clé publique du serveur trouvée dans le certificat du serveur.
#La clé privée, qui se trouve sur le serveur web, déchiffre les données nécessaires à la connexion pour terminer ce qui est connu comme la négociation TLS (''TLS handshake'' en anglais).
Une communication sécurisée peut alors s’établir entre Firefox et le site web.
=Afficher un certificat=
Pour afficher un certificat, suivez ces instructions :
#Cliquez sur l’icône de cadenas [[Image:Fx89Padlock]] dans la barre d’adresse.
#Dans le [[Site Information panel| panneau des informations pour le site]] qui s’ouvre, cliquez sur {button Connexion sécurisée}
#;[[Image:Fx134SiteInfo-ConnectionSecure]]
#Dans le panneau suivant, cliquez sur {button Plus d’informations}
#;[[Image:Fx134SiteInfo-MoreInfo]]
#Dans la [[Firefox Page Info window|fenêtre ''Informations sur la page'']] qui s’ouvre, cliquez sur {button Afficher le certificat}
#;[[Image:Fx134SiteInfo-ViewCert]]
Firefox ouvre alors la page ''about:certificate'' montrant des informations sur le certificat du site web sur lequel vous vous trouvez :
;[[Image:Fx134SiteInfo-AboutCert]]
Les trois onglets présentent, de gauche à droite, le certificat de serveur TLS, le certificat intermédiaire et le certificat racine.
=Contenu d’un certificat=
Les certificats de serveur TLS contiennent les informations suivantes :
*'''Nom du sujet :''' contient des attributs optionnels comme le nom du site web et d’autres informations sur l’organisation qui détient le certificat.
*'''Nom de l’émetteur :''' identifie l’entité AC qui a émis le certificat.
*'''Validité :''' affiche la période de validité du certificat.
*'''Nom alternatif du sujet du certificat :''' énumère les adresses de sites web pour lesquels le certificat est valide.
*'''Informations sur la clé publique :''' énumère les attributs de la clé publique du certificat.
*'''Numéro de série :''' identifie de façon unique le certificat.
*'''Algorithme de signature :''' algorithme créé pour générer la signature.
*'''Empreintes numériques :''' hachage du fichier du certificat au format binaire [https://wiki.openssl.org/index.php/DER DER (lien en anglais)].
*'''Utilisations de la clé''' et '''Utilisations étendues de la clé :''' spécifient l’utilisation possible du certificat par les gens, comme réaliser l’authentification TLS du serveur web.
*'''Identifiant de clé du sujet :''' un identifiant généré à partir de la clé publique du certificat TLS, comme moyen d’identifier le certificat.
*'''Identifiant de clé de l’autorité :''' un identifiant généré à partir de la clé publique de l’AC, moyen d’identifier la clé publique correspondant à la clé privée utilisée pour signer le certificat.
*'''Points de terminaison CRL :''' les emplacements de la [https://fr.wikipedia.org/wiki/Liste_de_r%C3%A9vocation_de_certificats liste de révocation des certificats, (''Certificate Revocation List'', CRL)] de l’AC émettrice.
*'''Informations sur l’autorité :''' contient la méthode de validation pour les fichiers de l’autorité du certificat et le certificat intermédiaire.
*'''Politiques du certificat :''' contient des pointeurs vers le type de certificat TLS (c’est-à-dire des informations vérifiées quand le certificat a été émis).
*'''SCT intégrés :''' énumère les [https://www.globalsign.com/en/blog/what-is-certificate-transparency horodatages des certificats signés] (''Signed Certificate Timestamps'', SCT).
=Certificats problématiques=
Lorsque vous naviguez sur un site web dont l’adresse commence par '''https''' et qu’il y a un problème avec le certificat TLS, une page d’erreur s’affiche. Quelques erreurs de certificat courantes sont décrites dans l’article [[What does "Your connection is not secure" mean?]]
Pour afficher le certificat qui pose problème, suivez ces instructions :
#Sur la page d’avertissement, cliquez sur {button Avancé…}
#;[[Image:Fx134SecurityWarning]]
#Cliquez sur '''Afficher le certificat'''.
#;[[Image:Fx134SecurityWarning-ViewCert]]
#Le mauvais certificat s’affiche.
<!-- cette fonctionnalité semble abandonnée
=Rapporter des erreurs de certificat=
Les pages d’erreur de certificat contiennent une option permettant de rapporter l’erreur à Mozilla. Partager l’adresse et l’identification (le certificat d’authentification numérique) du site non approuvé nous aide à identifier et bloquer les sites malveillants afin de vous protéger au mieux.
-->
<!-- see discussion
=Supprimer les certificats=
Vous pouvez supprimer des certificats en procédant comme suit :
#[[Template:optionspreferences]]
#Cliquez sur {menu Vie privée et sécurité} dans le panneau de gauche.
#Faites défiler jusqu’à la section '''Certificats'''.
#Cliquez sur le bouton {button Afficher les certificats…}
#;La fenêtre '''Gestionnaire de certificats''' s’affiche avec l’onglet {menu Vos certificats} sélectionné par défaut, qui contient une liste des certificats associés.
#Cliquez sur un certificat de la liste.
#Cliquez sur le bouton {button Supprimer…} en bas de la fenêtre contextuelle.
#;Une fenêtre de confirmation s’affiche.
#Cliquez sur le bouton {button OK}
#;Le certificat ne s’affiche plus dans l’onglet {menu Vos certificats}
-->