{"id":1221,"date":"2011-06-16T11:55:20","date_gmt":"2011-06-16T09:55:20","guid":{"rendered":"http:\/\/www.laurentmarot.fr\/wordpress\/?p=1221"},"modified":"2013-10-04T16:23:54","modified_gmt":"2013-10-04T14:23:54","slug":"introduction-a-la-notion-de-certificat","status":"publish","type":"post","link":"https:\/\/www.laurentmarot.fr\/wordpress\/?p=1221","title":{"rendered":"Introduction \u00e0 la notion de certificat"},"content":{"rendered":"<p>Les algorithmes de chiffrement asym\u00e9trique sont bas\u00e9s sur le partage entre les diff\u00e9rents utilisateurs d&rsquo;une <strong>cl\u00e9 publique<\/strong>. G\u00e9n\u00e9ralement le partage de cette cl\u00e9 se fait au travers d&rsquo;un <a href=\"http:\/\/www.commentcamarche.net\/contents\/ldap\/ldapintro.php3\">annuaire \u00e9lectronique<\/a> (souvent au format <a href=\"http:\/\/www.commentcamarche.net\/contents\/ldap\/ldapintro.php3\">LDAP<\/a>) ou bien d&rsquo;un site web.<\/p>\n<p>Toutefois, ce mode de partage a une grande lacune : <strong>rien ne garantit que la cl\u00e9 est bien celle de l&rsquo;utilisateur a qui elle est associ\u00e9e<\/strong>. En effet, un pirate peut corrompre la cl\u00e9 publique pr\u00e9sente dans l&rsquo;annuaire en la rempla\u00e7ant par sa cl\u00e9 publique. Ainsi, le pirate sera en mesure de d\u00e9chiffrer tous les messages ayant \u00e9t\u00e9 chiffr\u00e9s avec la cl\u00e9 pr\u00e9sente dans l&rsquo;annuaire.<\/p>\n<p>Ainsi, un certificat permet d&rsquo;associer une cl\u00e9 publique \u00e0 une entit\u00e9 (une personne, une machine, &#8230;) afin d&rsquo;en assurer la validit\u00e9. Le certificat est en quelque sorte la carte d&rsquo;identit\u00e9 de la cl\u00e9 publique, d\u00e9livr\u00e9 par un organisme appel\u00e9 <em>autorit\u00e9 de certification<\/em> (souvent not\u00e9e <strong>CA<\/strong> pour <em>Certification Authority<\/em>).<\/p>\n<p>L&rsquo;autorit\u00e9 de certification est charg\u00e9e de d\u00e9livrer les certificats, de leur assigner une date de validit\u00e9 (\u00e9quivalent \u00e0 la date limite de p\u00e9remption des produits alimentaires), ainsi que de r\u00e9voquer \u00e9ventuellement des certificats avant cette date en cas de compromission de la cl\u00e9 (ou du propri\u00e9taire). <a name=\"certificat\"><\/a><\/p>\n<h2>Structure d&rsquo;un certificat ?<\/h2>\n<p>Les certificats sont des petits fichiers divis\u00e9s en deux parties\u00a0:<\/p>\n<ul>\n<li>La partie contenant les informations \u00a0li\u00e9es \u00e0 l&rsquo;entit\u00e9 et \u00e0 la clef<\/li>\n<li>La partie contenant la signature de l&rsquo;autorit\u00e9 de certification<\/li>\n<\/ul>\n<p>La structure des certificats est normalis\u00e9e par le standard <strong>X.509<\/strong> de l&rsquo;<a href=\"http:\/\/www.itu.int\/\">UIT<\/a> (plus exactement X.509v3), qui d\u00e9finit les informations contenues dans le certificat\u00a0:<\/p>\n<ul>\n<li>La version de X.509 \u00e0 laquelle le certificat correspond\u00a0;<\/li>\n<li>Le num\u00e9ro de s\u00e9rie du certificat\u00a0;<\/li>\n<li>L&rsquo;algorithme de chiffrement utilis\u00e9 pour signer le certificat\u00a0;<\/li>\n<li>Le nom (DN, pour <em>Distinguished Name<\/em>) de l&rsquo;autorit\u00e9 de certification \u00e9mettrice\u00a0;<\/li>\n<li>La date de d\u00e9but de validit\u00e9 du certificat\u00a0;<\/li>\n<li>La date de fin de validit\u00e9 du certificat\u00a0;<\/li>\n<li>L&rsquo;objet de l&rsquo;utilisation de la cl\u00e9 publique\u00a0;<\/li>\n<li>La cl\u00e9 publique du propri\u00e9taire du certificat\u00a0;<\/li>\n<li>La signature de l&rsquo;\u00e9metteur du certificat (<em>thumbprint<\/em>).<\/li>\n<\/ul>\n<p>L&rsquo;ensemble de ces informations (informations + cl\u00e9 publique du demandeur) est sign\u00e9 par l&rsquo;autorit\u00e9 de certification, cela signifie qu&rsquo;une <a href=\"http:\/\/www.commentcamarche.net\/contents\/crypto\/signature.php3#hachage\">fonction de hachage<\/a> cr\u00e9e une empreinte de ces informations, puis ce condens\u00e9 est chiffr\u00e9 \u00e0 l&rsquo;aide de la cl\u00e9 priv\u00e9e de l&rsquo;autorit\u00e9 de certification; la cl\u00e9 publique ayant \u00e9t\u00e9 pr\u00e9alablement largement diffus\u00e9e afin de permettre aux utilisateurs de v\u00e9rifier la signature avec la cl\u00e9 publique de l&rsquo;<em>autorit\u00e9 de certification<\/em>.<\/p>\n<p><img decoding=\"async\" alt=\"Cr\u00e9ation du certificat\" src=\"http:\/\/static.commentcamarche.net\/www.commentcamarche.net\/pictures\/crypto-images-certificatcreation.gif\" \/><\/p>\n<p>Lorsqu&rsquo;un utilisateur d\u00e9sire communiquer avec une autre personne, il lui suffit de se procurer le certificat du destinataire. Ce certificat contient le nom du destinataire, ainsi que sa cl\u00e9 publique et est sign\u00e9 par l&rsquo;autorit\u00e9 de certification. Il est donc possible de v\u00e9rifier la validit\u00e9 du message en appliquant d&rsquo;une part la fonction de hachage aux informations contenues dans le certificat, en d\u00e9chiffrant d&rsquo;autre part la signature de l&rsquo;autorit\u00e9 de certification avec la cl\u00e9 publique de cette derni\u00e8re et en comparant ces deux r\u00e9sultats.<\/p>\n<p><img decoding=\"async\" alt=\"V\u00e9rification de la validit\u00e9 du certificat\" src=\"http:\/\/static.commentcamarche.net\/www.commentcamarche.net\/pictures\/crypto-images-certificatverif.gif\" \/> <a name=\"signatures\"><\/a><\/p>\n<h2>Signatures de certificats<\/h2>\n<p>On distingue diff\u00e9rents types de certificats selon le niveau de signature\u00a0:<\/p>\n<ul>\n<li>Les <strong>certificats auto-sign\u00e9s<\/strong> sont des certificats \u00e0 usage interne. Sign\u00e9s par un serveur local, ce type de certificat permet de garantir la confidentialit\u00e9 des \u00e9changes au sein d&rsquo;une organisation, par exemple pour le besoin d&rsquo;un intranet. Il est ainsi possible d&rsquo;effectuer une authentification des utilisateurs gr\u00e2ce \u00e0 des certificats auto-sign\u00e9s.<\/li>\n<li>Les <strong>certificats sign\u00e9s par un organisme de certification<\/strong> sont n\u00e9cessaires lorsqu&rsquo;il s&rsquo;agit d&rsquo;assurer la s\u00e9curit\u00e9 des \u00e9changes avec des utilisateurs anonymes, par exemple dans le cas d&rsquo;un site web s\u00e9curis\u00e9 accessible au grand public. Le certificateur tiers permet d&rsquo;assurer \u00e0 l&rsquo;utilisateur que le certificat appartient bien \u00e0 l&rsquo;organisation \u00e0 laquelle il est d\u00e9clar\u00e9 appartenir.<\/li>\n<\/ul>\n<p><a name=\"types\"><\/a><\/p>\n<h2>Types d&rsquo;usages<\/h2>\n<p>Les certificats servent principalement dans trois types de contextes\u00a0:<\/p>\n<ul>\n<li>Le <strong>certificat client<\/strong>, stock\u00e9 sur le poste de travail de l&rsquo;utilisateur ou embarqu\u00e9 dans un conteneur tel qu&rsquo;une carte \u00e0 puce, permet d&rsquo;identifier un utilisateur et de lui associer des droits. Dans la plupart des sc\u00e9narios il est transmis au serveur lors d&rsquo;une connexion, qui affecte des droits en fonction de l&rsquo;accr\u00e9ditation de l&rsquo;utilisateur. Il s&rsquo;agit d&rsquo;une v\u00e9ritable carte d&rsquo;identit\u00e9 num\u00e9rique utilisant une paire de cl\u00e9s asym\u00e9triques d&rsquo;une longueur de 512 \u00e0 1 024 bits.<\/li>\n<li>Le <strong>certificat serveur<\/strong> install\u00e9 sur un serveur web permet d&rsquo;assurer le lien entre le service et le propri\u00e9taire du service. Dans le cas d&rsquo;un site web, il permet de garantir que l&rsquo;<a href=\"http:\/\/www.commentcamarche.net\/contents\/internet\/url.php3\">URL<\/a> et en particulier le domaine de la page web appartiennent bien \u00e0 telle ou telle entreprise. Par ailleurs, il permet de s\u00e9curiser les transactions avec les utilisateurs gr\u00e2ce au protocole <a href=\"http:\/\/www.commentcamarche.net\/contents\/crypto\/ssl.php3\">SSL<\/a>.<\/li>\n<li>Le <strong>certificat VPN<\/strong> est un type de certificat install\u00e9 dans les \u00e9quipement r\u00e9seaux, permettant de chiffrer les flux de communication de bout en bout entre deux points (par exemple deux sites d&rsquo;une entreprise). Dans ce type de sc\u00e9nario, les utilisateurs poss\u00e8dent un certificat client, les serveurs mettent en \u0153uvre un certificat serveur et les \u00e9quipements de communication utilisent un certificat particulier (g\u00e9n\u00e9ralement un certificat <a href=\"http:\/\/www.commentcamarche.net\/contents\/initiation\/vpn.php3\">IPSec)<\/a>.<\/li>\n<\/ul>\n\n","protected":false},"excerpt":{"rendered":"<p>Les algorithmes de chiffrement asym\u00e9trique sont bas\u00e9s sur le partage entre les diff\u00e9rents utilisateurs d&rsquo;une cl\u00e9 publique. G\u00e9n\u00e9ralement le partage de cette cl\u00e9 se fait au travers d&rsquo;un annuaire \u00e9lectronique (souvent au format LDAP) ou bien d&rsquo;un site web. Toutefois, ce mode de partage a une grande lacune : rien ne garantit que la cl\u00e9 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[34],"tags":[],"_links":{"self":[{"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1221"}],"collection":[{"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1221"}],"version-history":[{"count":6,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1221\/revisions"}],"predecessor-version":[{"id":2887,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1221\/revisions\/2887"}],"wp:attachment":[{"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.laurentmarot.fr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}