Chaînes de certificats

Pour utiliser des certificats pour la sécurité, l’authenticité et la validité de chaque certificat reçu doivent être vérifiés. Cette vérification dépend du concept de confiance et de la délégation de confiance ; Pour plus d’informations, consultez Hiérarchie d’approbation.

Chaque certificat contient un champ d’objet qui identifie l’individu ou le groupe auquel le certificat a été émis. Chaque certificat contient également un champ émetteur qui identifie l’autorité de certification (CA) autorisée à certifier l’identité du sujet.

Une chaîne de certificats se compose de tous les certificats nécessaires pour certifier l’objet identifié par le certificat de fin. Dans la pratique, cela inclut le certificat final, les certificats d’autorités de certification intermédiaires et le certificat d’une autorité de certification racine approuvée par toutes les parties de la chaîne. Chaque autorité de certification intermédiaire de la chaîne contient un certificat émis par l’autorité de certification un niveau supérieur à celui-ci dans la hiérarchie d’approbation. L’autorité de certification racine émet un certificat pour lui-même.

Le processus de vérification de l’authenticité et de la validité d’un certificat nouvellement reçu implique la vérification de tous les certificats dans la chaîne de certificats de l’autorité de certification approuvée d’origine et universelle, par le biais de n’importe quelle autorité de certification intermédiaire, jusqu’au certificat qui vient d’être reçu, qui est appelé certificat final. Un nouveau certificat ne peut être approuvé que si chaque certificat de la chaîne de ce certificat est correctement émis et valide.

Le suivi de tous les certificats qui back-end d’un nouveau certificat peut devenir fastidieux. Par conséquent, la technologie CryptoAPI 2.0 fournit des fonctions qui automatisent la création de la chaîne de certificats qui sauvegardent tout certificat final donné. Ces fonctions vérifient et signalent également la validité de chaque certificat dans une chaîne.

Les fonctions de création et de vérification de chaîne de CryptoAPI 2.0 utilisent un moteur de chaîne pour créer et vérifier des chaînes de certificats. Un moteur de chaîne définit un espace de noms de magasin et un partitionnement de cache pour l’infrastructure de chaînage de certificats. CryptoAPI 2.0 fournit un moteur de chaîne par défaut pour tout processus d’application qui utilise uniquement les magasins système par défaut (par exemple, MY, Root, CA et Trust) pour la création et la mise en cache de chaînes. Une application peut définir son propre espace de noms de magasin ou avoir son propre cache partitionné en créant son propre moteur de chaîne. Pour obtenir un comportement de mise en cache optimal, nous vous recommandons de créer un moteur de chaîne unique au démarrage de l’application et d’utiliser ce moteur de chaîne tout au long de la durée de vie de l’application.

Pour obtenir la liste des fonctions, consultez Fonctions de vérification de la chaîne de certificats. Pour un programme qui génère des chaînes de certificats et vérifie les certificats, consultez l’exemple de programme C : création d’une chaîne de certificats.