Fonctions de chiffrement
Les fonctions de chiffrement sont classées en fonction de l’utilisation comme suit :
- Fonctions CryptXML
- Fonctions de signataire
- Fonctions de chiffrement de base
- Fonctions de magasin de certificats et de certificats
- Fonctions MakeCert
- Fonctions de vérification de certificat
- Fonctions de message
- Fonctions auxiliaires
- Fonctions de sauvegarde et de restauration des services de certificat
- Fonctions de rappel
- Fonctions de définition de catalogue
- Fonctions de catalogue
- Fonctions WinTrust
- Fonctions de localisateur d’objets
Fonctions CryptXML
Les fonctions XML de chiffrement fournissent une API permettant de créer et de représenter des signatures numériques à l’aide de données au format XML. Pour plus d’informations sur les signatures au format XML, consultez la spécification de syntaxe et de traitement XML-Signature à l’adresse https://go.microsoft.com/fwlink/p/?linkid=139649.
Fonction | Description |
---|---|
A_SHAFinal | Calcule le hachage final des données entrées par la fonction MD5Update. |
A_SHAInit | Lance le hachage d’un flux de données. |
A_SHAUpdate | Ajoute des données à un objet de hachage spécifié. |
CryptXmlCreateReference | Crée une référence à une signature XML. |
CryptXmlAddObject | Ajoute l’élément Object à la signature dans le contexte de document ouvert pour l’encodage. |
CryptXmlClose | Ferme un handle d’objet XML de chiffrement. |
CryptXmlDigestReference | Utilisé par une application pour assimiler la référence résolue. Cette fonction applique des transformations avant de mettre à jour le digest. |
CryptXmlDllCloseDigest | Libère les CRYPT_XML_DIGEST allouées par la fonction CryptXmlDllCreateDigest . |
CryptXmlDllCreateDigest | Crée un objet digest pour la méthode spécifiée. |
CryptXmlDllCreateKey | Analyse l’élément KeyValue et crée un handle de clé BCrypt de l’API Cryptography : Nouvelle génération (CNG) pour vérifier une signature. |
CryptXmlDllDigestData | Place les données dans la synthèse. |
CryptXmlDllEncodeAlgorithm | Encode les éléments SignatureMethod ou DigestMethod pour les algorithmes agiles avec des paramètres par défaut. |
CryptXmlDllEncodeKeyValue | Encode un élément KeyValue . |
CryptXmlDllFinalizeDigest | Récupère la valeur digest. |
CryptXmlDllGetAlgorithmInfo | Décode l’algorithme XML et retourne des informations sur l’algorithme. |
CryptXmlDllGetInterface | Récupère un pointeur vers les fonctions d’extension de chiffrement pour l’algorithme spécifié. |
CryptXmlDllSignData | Signe les données. |
CryptXmlDllVerifySignature | Vérifie une signature. |
CryptXmlEncode | Encode les données de signature à l’aide de la fonction de rappel de l’enregistreur XML fournie. |
CryptXmlGetAlgorithmInfo | Décode la structure CRYPT_XML_ALGORITHM et retourne des informations sur l’algorithme. |
CryptXmlGetDocContext | Retourne le contexte de document spécifié par le handle fourni. |
CryptXmlGetReference | Retourne l’élément Reference spécifié par le handle fourni. |
CryptXmlGetSignature | Retourne un élément De signature XML. |
CryptXmlGetStatus | Retourne une structure CRYPT_XML_STATUS qui contient status informations sur l’objet spécifié par le handle fourni. |
CryptXmlGetTransforms | Retourne des informations sur le moteur de chaîne de transformation par défaut. |
CryptXmlImportPublicKey | Importe la clé publique spécifiée par le handle fourni. |
CryptXmlOpenToEncode | Ouvre une signature numérique XML pour encoder et retourne un handle de l’élément Signature ouvert. Le handle encapsule un contexte de document avec une structure CRYPT_XML_SIGNATURE unique et reste ouvert jusqu’à ce que la fonction CryptXmlClose soit appelée. |
CryptXmlOpenToDecode | Ouvre une signature numérique XML pour décoder et retourne le handle du contexte de document qui encapsule une structure CRYPT_XML_SIGNATURE . Le contexte de document peut inclure un ou plusieurs éléments Signature . |
CryptXmlSetHMACSecret | Définit le secret HMAC sur le handle avant d’appeler la fonction CryptXmlSign ou CryptXmlVerify . |
CryptXmlSign | Crée une signature de chiffrement d’un élément SignedInfo . |
CryptXmlVerifySignature | Effectue une validation de signature de chiffrement d’un élément SignedInfo . |
PFN_CRYPT_XML_WRITE_CALLBACK | Crée une transformation pour un fournisseur de données spécifié. |
PFN_CRYPT_XML_CREATE_TRANSFORM | Écrit des données XML de chiffrement. |
PFN_CRYPT_XML_DATA_PROVIDER_READ | Lit les données XML de chiffrement. |
PFN_CRYPT_XML_DATA_PROVIDER_CLOSE | Libère le fournisseur de données XML de chiffrement. |
PFN_CRYPT_XML_ENUM_ALG_INFO | Énumère les entrées de CRYPT_XML_ALGORITHM_INFO prédéfinies et inscrites. |
Fonctions de signataire
Fournit des fonctions pour signer et horodatage des données.
Fonction | Description |
---|---|
SignerFreeSignerContext | Libère une structure SIGNER_CONTEXT allouée par un appel précédent à la fonction SignerSignEx . |
SignError | Appelle la fonction GetLastError et convertit le code de retour en HRESULT. |
SignerSign | Signe le fichier spécifié. |
SignerSignEx | Signe le fichier spécifié et retourne un pointeur vers les données signées. |
SignerSignEx2 | Signe et horodaille le fichier spécifié, ce qui autorise plusieurs signatures imbriquées. |
SignerTimeStamp | Horodatage de l’objet spécifié. Cette fonction prend en charge l’horodatage Authenticode. Pour effectuer l’horodatage RFC 3161 (Public Key Infrastructure) X.509, utilisez la fonction SignerTimeStampEx2 . |
SignerTimeStampEx | Horodatage de l’objet spécifié et retourne éventuellement un pointeur vers une structure SIGNER_CONTEXT qui contient un pointeur vers un objet BLOB. Cette fonction prend en charge l’horodatage Authenticode. Pour effectuer l’horodatage RFC 3161 (Public Key Infrastructure) X.509, utilisez la fonction SignerTimeStampEx2 . |
SignerTimeStampEx2 | Horodatage de l’objet spécifié et retourne éventuellement un pointeur vers une structure SIGNER_CONTEXT qui contient un pointeur vers un objet BLOB. Cette fonction peut être utilisée pour effectuer des horodatages d’heure de l’infrastructure à clé publique X.509, conformes À la norme RFC 3161. |
SignerTimeStampEx3 | Horodatage de l’objet spécifié et prend en charge la définition d’horodatages sur plusieurs signatures. |
Fonctions de chiffrement de base
Les fonctions de chiffrement de base fournissent les moyens les plus flexibles de développer des applications de chiffrement. Toutes les communications avec un fournisseur de services de chiffrement (CSP) se produisent via ces fonctions.
Un csp est un module indépendant qui effectue toutes les opérations de chiffrement. Au moins un fournisseur de solutions cloud est requis pour chaque application qui utilise des fonctions de chiffrement. Une seule application peut parfois utiliser plusieurs csp.
Si plusieurs csp sont utilisés, celui à utiliser peut être spécifié dans les appels de fonction de chiffrement CryptoAPI. Un fournisseur csp, le fournisseur de chiffrement de base Microsoft, est fourni avec cryptoAPI. Ce fournisseur csp est utilisé comme fournisseur par défaut par de nombreuses fonctions CryptoAPI si aucun autre FOURNISSEUR de solutions cloud n’est spécifié.
Chaque fournisseur de solutions cloud fournit une implémentation différente de la prise en charge de chiffrement fournie à CryptoAPI. Certains fournissent des algorithmes de chiffrement plus forts ; d’autres contiennent des composants matériels, tels que des cartes à puce. En outre, certains fournisseurs de solutions cloud peuvent parfois communiquer directement avec les utilisateurs, par exemple lorsque des signatures numériques sont effectuées à l’aide de la clé privée de signature de l’utilisateur.
Les fonctions de chiffrement de base se trouvent dans les grands groupes suivants :
- Fonctions du fournisseur de services
- Génération de clés et fonctions Exchange
- Fonctions d’encodage et de décodage d’objets
- Fonctions de chiffrement et de déchiffrement des données
- Fonctions de hachage et de signature numérique
Fonctions du fournisseur de services
Les applications utilisent les fonctions de service suivantes pour se connecter et déconnecter un fournisseur de services de chiffrement (CSP).
Fonction | Description |
---|---|
CryptAcquireContext |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Acquiert un handle pour le conteneur de clé de l’utilisateur actuel au sein d’un fournisseur de solutions cloud particulier. |
CryptContextAddRef |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Incrémente le nombre de références sur un handle HCRYPTPROV . |
CryptEnumProviders |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Énumère les fournisseurs sur un ordinateur. |
CryptEnumProviderTypes |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Énumère les types de fournisseurs pris en charge sur l’ordinateur. |
CryptGetDefaultProvider |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Détermine le csp par défaut pour l’utilisateur actuel ou pour l’ordinateur pour un type de fournisseur spécifié. |
CryptGetProvParam |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Récupère les paramètres qui régissent les opérations d’un fournisseur de solutions cloud. |
CryptInstallDefaultContext |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Installe un contexte HCRYPTPROV précédemment acquis à utiliser comme contexte par défaut. |
CryptReleaseContext |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Libère le handle acquis par la fonction CryptAcquireContext . |
CryptSetProvider et CryptSetProviderEx |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Spécifie le fournisseur de services de configuration par défaut de l’utilisateur pour un type csp particulier. |
CryptSetProvParam |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Spécifie les attributs d’un fournisseur de solutions Cloud. |
CryptUninstallDefaultContext |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Supprime un contexte par défaut précédemment installé par CryptInstallDefaultContext. |
FreeCryptProvFromCertEx | Libère le handle à un fournisseur de services de chiffrement (CSP) ou à une clé CNG (Cryptography API: Next Generation). |
Fonctions De génération de clés et Exchange
Les fonctions de génération et d’échange de clés échangent des clés avec d’autres utilisateurs et créent, configurent et détruisent des clés de chiffrement.
Fonction | Description |
---|---|
CryptDeriveKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Crée une clé dérivée d’un mot de passe. |
CryptDestroyKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Détruit une clé. |
CryptDuplicateKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Effectue une copie exacte d’une clé, y compris l’état de la clé. |
CryptExportKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Transfère une clé du fournisseur de solutions Cloud vers un objet BLOB de clé dans l’espace mémoire de l’application. |
CryptGenKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Crée une clé aléatoire. |
CryptGenRandom |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Génère des données aléatoires. |
CryptGetKeyParam |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Récupère les paramètres d’une clé. |
CryptGetUserKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Obtient un handle pour l’échange de clés ou la clé de signature. |
CryptImportKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Transfère une clé d’un objet BLOB de clé vers un fournisseur de solutions Cloud. |
CryptSetKeyParam |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Spécifie les paramètres d’une clé. |
Fonctions d’encodage et de décodage d’objet
Il s’agit de fonctions d’encodage et de décodage généralisées. Ils sont utilisés pour encoder et décoder des certificats, des listes de révocation de certificats (CRL), des demandes de certificat et des extensions de certificat.
Fonction | Description |
---|---|
CryptDecodeObject | Décode une structure de type lpszStructType. |
CryptDecodeObjectEx | Décode une structure de type lpszStructType. CryptDecodeObjectEx prend en charge l’option d’allocation de mémoire en une seule passe. |
CryptEncodeObject | Encode une structure de type lpszStructType. |
CryptEncodeObjectEx | Encode une structure de type lpszStructType. CryptEncodeObjectEx prend en charge l’option d’allocation de mémoire en un seul passage. |
Fonctions de chiffrement et de déchiffrement des données
Les fonctions suivantes prennent en charge les opérations de chiffrement et de déchiffrement. CryptEncrypt et CryptDecrypt nécessitent une clé de chiffrement avant d’être appelés. Pour ce faire, utilisez la fonction CryptGenKey, CryptDeriveKey ou CryptImportKey . L’algorithme de chiffrement est spécifié lors de la création de la clé. CryptSetKeyParam peut définir des paramètres de chiffrement supplémentaires.
Fonction | Description |
---|---|
CryptDecrypt |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Déchiffre une section de texte de chiffrement à l’aide de la clé de chiffrement spécifiée. |
CryptEncrypt |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Chiffre une section de texte en clair à l’aide de la clé de chiffrement spécifiée. |
CryptProtectData | Effectue le chiffrement des données dans une structure de DATA_BLOB . |
CryptProtectMemory | Chiffre la mémoire pour protéger les informations sensibles. |
CryptUnprotectData | Effectue un déchiffrement et une case activée d’intégrité des données dans un DATA_BLOB. |
CryptUnprotectMemory | Déchiffre la mémoire chiffrée à l’aide de CryptProtectMemory. |
Fonctions de hachage et de signature numérique
Ces fonctions calculent les hachages des données et créent et vérifient également des signatures numériques. Les hachages sont également appelés synthèses de messages.
Fonction | Description |
---|---|
CryptCreateHash |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Crée un objet de hachage vide. |
CryptDestroyHash |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Détruit un objet de hachage. |
CryptDuplicateHash | Dupliquer un objet de hachage. |
CryptGetHashParam | Récupère un paramètre d’objet de hachage. |
CryptHashData |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Hache un bloc de données, en l’ajoutant à l’objet de hachage spécifié. |
CryptHashSessionKey |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Hache une clé de session en l’ajoutant à l’objet de hachage spécifié. |
CryptSetHashParam |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Définit un paramètre d’objet de hachage. |
CryptSignHash |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Signe l’objet de hachage spécifié. |
CryptUIWizDigitalSign | Affiche un Assistant qui signe numériquement un document ou un objet BLOB. |
CryptUIWizFreeDigitalSignContext | Libère un pointeur vers une structure CRYPTUI_WIZ_DIGITAL_SIGN_CONTEXT . |
CryptVerifySignature |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Vérifie une signature numérique, avec un handle pour l’objet de hachage. |
PFNCFILTERPROC | Filtre les certificats qui apparaissent dans l’Assistant Signature numérique affiché par la fonction CryptUIWizDigitalSign . |
Fonctions de magasin de certificats et de certificats
Les fonctions de magasin de certificats et de certificats gèrent l’utilisation, le stockage et la récupération des certificats, des listes de révocation de certificats (CRL) et des listes d’approbation de certificats (CTL). Ces fonctions sont divisées en groupes suivants :
- Fonctions du magasin de certificats
- Fonctions de maintenance du magasin de certificats et de certificats
- Fonctions de certificat
- Fonctions de liste de révocation de certificats
- Fonctions de liste d’approbation de certificats
- Fonctions de propriété étendues
- Fonctions MakeCert
Fonctions du magasin de certificats
Un site utilisateur peut, au fil du temps, collecter de nombreux certificats. En règle générale, un site possède des certificats pour l’utilisateur du site, ainsi que d’autres certificats qui décrivent les personnes et entités avec lesquelles l’utilisateur communique. Pour chaque entité, il peut y avoir plusieurs certificats. Pour chaque certificat individuel, il doit y avoir une chaîne de vérification des certificats qui fournit un suivi vers un certificat racine approuvé. Les magasins de certificats et leurs fonctions associées fournissent des fonctionnalités permettant de stocker, de récupérer, d’énumérer, de vérifier et d’utiliser les informations stockées dans les certificats.
Fonction | Description |
---|---|
CertAddStoreToCollection | Ajoute un magasin de certificats frère à un magasin de certificats de collection. |
CertCloseStore | Ferme un handle de magasin de certificats. |
CertControlStore | Permet à une application d’être avertie lorsqu’il existe une différence entre le contenu d’un magasin mis en cache et le contenu du magasin qui est conservé dans le stockage. Il permet également la désynchronisation du magasin mis en cache, si nécessaire, et fournit un moyen de valider les modifications apportées dans le magasin mis en cache dans le stockage persistant. |
CertDuplicateStore | Dupliquer un handle de magasin en incrémentant le nombre de références. |
CertEnumPhysicalStore | Énumère les magasins physiques d’un magasin système spécifié. |
CertEnumSystemStore | Énumère tous les magasins système disponibles. |
CertEnumSystemStoreLocation | Énumère tous les emplacements qui ont un magasin système disponible. |
CertGetStoreProperty | Obtient une propriété de magasin. |
CertOpenStore | Ouvre un magasin de certificats à l’aide d’un type de fournisseur de magasin spécifié. |
CertOpenSystemStore | Ouvre un magasin de certificats système basé sur un protocole de sous-système. |
CertRegisterPhysicalStore | Ajoute un magasin physique à une collection de magasins système du Registre. |
CertRegisterSystemStore | Inscrit un magasin système. |
CertRemoveStoreFromCollection | Supprime un magasin de certificats frère d’un magasin de collections. |
CertSaveStore | Enregistre le magasin de certificats. |
CertSetStoreProperty | Définit une propriété de magasin. |
CertUnregisterPhysicalStore | Supprime un magasin physique d’une collection de magasins système spécifiée. |
CertUnregisterSystemStore | Annule l’inscription d’un magasin système spécifié. |
CryptUIWizExport | Présente un Assistant qui exporte un certificat, une liste d’approbation de certificats (CTL), une liste de révocation de certificats (CRL) ou un magasin de certificats. |
CryptUIWizImport | Présente un Assistant qui importe un certificat, une liste d’approbation de certificats (CTL), une liste de révocation de certificats (CRL) ou un magasin de certificats. |
Fonctions de maintenance du magasin de certificats et de certificats
CryptoAPI fournit un ensemble de fonctions générales de maintenance des certificats et des magasins de certificats.
Fonction | Description |
---|---|
CertAddSerializedElementToStore | Ajoute le certificat sérialisé ou l’élément de liste de révocation de certificats au magasin. |
CertCreateContext | Crée le contexte spécifié à partir des octets encodés. Le nouveau contexte n’est pas placé dans un magasin. |
CertEnumSubjectInSortedCTL | Énumère les éléments TrustedSubjects dans un contexte CTL trié. |
CertFindSubjectInCTL | Recherche l’objet spécifié dans une CTL. |
CertFindSubjectInSortedCTL | Recherche l’objet spécifié dans une CTL triée. |
OpenPersonalTrustDBDialog et OpenPersonalTrustDBDialogEx | Affiche la boîte de dialogue Certificats . |
Fonctions de certificat
La plupart des fonctions de certificat ont des fonctions associées pour traiter les listes de révocation de certificats et les listes de révocation de certificats. Pour plus d’informations sur les fonctions CRL et CTL associées, consultez Fonctions de liste de révocation de certificats et Fonctions de liste d’approbation de certificats.
Fonction | Description |
---|---|
CertAddCertificateContextToStore | Ajoute un contexte de certificat au magasin de certificats. |
CertAddCertificateLinkToStore | Ajoute un lien dans un magasin de certificats à un contexte de certificat dans un autre magasin. |
CertAddEncodedCertificateToStore | Convertit le certificat encodé en contexte de certificat, puis ajoute le contexte au magasin de certificats. |
CertAddRefServerOcspResponse | Incrémente le nombre de références pour un handle HCERT_SERVER_OCSP_RESPONSE . |
CertAddRefServerOcspResponseContext | Incrémente le nombre de références pour une structure CERT_SERVER_OCSP_RESPONSE_CONTEXT . |
CertCloseServerOcspResponse | Ferme un descripteur de réponse de serveur OCSP (Certificate status Protocol) en ligne. |
CertCreateCertificateContext | Crée un contexte de certificat à partir d’un certificat encodé. Le contexte créé n’est pas placé dans un magasin de certificats. |
CertCreateSelfSignCertificate | Crée un certificat auto-signé |
CertDeleteCertificateFromStore | Supprime un certificat du magasin de certificats. |
CertDuplicateCertificateContext | Duplique un contexte de certificat en incrémentant son nombre de références. |
CertEnumCertificatesInStore | Énumère les contextes de certificat dans le magasin de certificats. |
CertFindCertificateInStore | Recherche le premier ou le prochain contexte de certificat dans le magasin de certificats qui répond à un critère de recherche. |
CertFreeCertificateContext | Libère un contexte de certificat. |
CertGetIssuerCertificateFromStore | Obtient un contexte de certificat à partir du magasin de certificats pour le premier ou le prochain émetteur du certificat d’objet spécifié. |
CertGetServerOcspResponseContext | Récupère un contexte de réponse ocsp (certificat en ligne status protocol) non bloquant et valide pour le handle spécifié. |
CertGetSubjectCertificateFromStore | Obtient à partir du magasin de certificats le contexte du certificat d’objet, qui est identifié de manière unique par son émetteur et son numéro de série. |
CertGetValidUsages | Retourne un tableau d’utilisations qui se compose de l’intersection des utilisations valides pour tous les certificats d’un tableau de certificats. |
CertOpenServerOcspResponse | Ouvre un handle pour une réponse OCSP (Certificate status Protocol) en ligne associée à une chaîne de certificats de serveur. |
CertRetrieveLogoOrBiometricInfo | Effectue une récupération d’URL du logo ou des informations biométriques spécifiées dans l’extension de certificat szOID_LOGOTYPE_EXT ou szOID_BIOMETRIC_EXT . |
CertSelectCertificate | Présente une boîte de dialogue qui permet à l’utilisateur de sélectionner des certificats à partir d’un ensemble de certificats qui correspondent à un critère donné. |
CertSelectCertificateChains | Récupère les chaînes de certificats en fonction des critères de sélection spécifiés. |
CertSelectionGetSerializedBlob | Fonction d’assistance utilisée pour récupérer un objet BLOB de certificat sérialisé à partir d’une structure de CERT_SELECTUI_INPUT . |
CertSerializeCertificateStoreElement | Sérialise le certificat codé d’un contexte de certificat et une représentation encodée de ses propriétés. |
CertVerifySubjectCertificateContext | Effectue les vérifications de vérification activées sur le certificat sujet à l’aide de l’émetteur. |
CryptUIDlgCertMgr | Affiche une boîte de dialogue qui permet à l’utilisateur de gérer les certificats. |
CryptUIDlgSelectCertificate | Affiche une boîte de dialogue qui permet à un utilisateur de sélectionner un certificat. |
CryptUIDlgSelectCertificateFromStore | Affiche une boîte de dialogue qui autorise la sélection d’un certificat à partir d’un magasin spécifié. |
CryptUIDlgViewCertificate | Présente une boîte de dialogue qui affiche un certificat spécifié. |
CryptUIDlgViewContext | Affiche un certificat, une liste de révocation de certificats ou une liste de révocation de certificats. |
CryptUIDlgViewSignerInfo | Affiche une boîte de dialogue qui contient les informations de signataire d’un message signé. |
GetFriendlyNameOfCert | Récupère le nom complet d’un certificat. |
RKeyCloseKeyService | Ferme un handle de service de clé. |
RKeyOpenKeyService | Ouvre un handle de service de clé sur un ordinateur distant. |
RKeyPFXInstall | Installe un certificat sur un ordinateur distant. |
Fonctions de liste de révocation de certificats
Ces fonctions gèrent le stockage et la récupération des listes de révocation de certificats (CRL).
Fonction | Description |
---|---|
CertAddCRLContextToStore | Ajoute un contexte de liste de révocation de certificats au magasin de certificats. |
CertAddCRLLinkToStore | Ajoute un lien dans un magasin à un contexte de liste de révocation de certificats dans un autre magasin. |
CertAddEncodedCRLToStore | Convertit la liste de révocation de certificats encodée en contexte de liste de révocation de certificats, puis ajoute le contexte au magasin de certificats. |
CertCreateCRLContext | Crée un contexte de liste de révocation de certificats à partir d’une liste de révocation de certificats encodée. Le contexte créé n’est pas placé dans un magasin de certificats. |
CertDeleteCRLFromStore | Supprime une liste de révocation de certificats du magasin de certificats. |
CertDuplicateCRLContext | Duplique un contexte de liste de révocation de certificats en incrémentant le nombre de références. |
CertEnumCRLsInStore | Énumère les contextes de liste de révocation de certificats dans un magasin. |
CertFindCertificateInCRL | Recherche le certificat spécifié dans la liste de révocation de certificats (CRL). |
CertFindCRLInStore | Recherche le premier contexte de liste de révocation de certificats dans le magasin de certificats qui correspond à un critère spécifique. |
CertFreeCRLContext | Libère un contexte de liste de révocation de certificats. |
CertGetCRLFromStore | Obtient le premier contexte de liste de révocation de certificats du magasin de certificats pour le certificat émetteur spécifié. |
CertSerializeCRLStoreElement | Sérialise la liste de révocation de certificats encodée du contexte de liste de révocation de certificats et ses propriétés. |
Fonctions de liste d’approbation de certificats
Ces fonctions gèrent le stockage et la récupération des listes d’approbation de certificats (CTL).
Fonction | Description |
---|---|
CertAddCTLContextToStore | Ajoute un contexte CTL au magasin de certificats. |
CertAddCTLLinkToStore | Ajoute un lien dans un magasin à un contexte de liste de révocation de certificats dans un autre magasin. |
CertAddEncodedCTLToStore | Convertit la CTL encodée en contexte CTL, puis ajoute le contexte au magasin de certificats. |
CertCreateCTLContext | Crée un contexte CTL à partir d’une liste d’approbation de certificats encodée. Le contexte créé n’est pas placé dans un magasin de certificats. |
CertDeleteCTLFromStore | Supprime une CTL du magasin de certificats. |
CertDuplicateCTLContext | Duplique un contexte CTL en incrémentant le nombre de références. |
CertEnumCTLsInStore | Énumère les contextes CTL dans le magasin de certificats. |
CertFindCTLInStore | Recherche le premier contexte CTL ou le suivant dans le magasin de certificats qui correspond à un critère spécifique. |
CertFreeCTLContext | Libère un contexte CTL. |
CertModifyCertificatesToTrust | Modifie l’ensemble des certificats dans une CTL pour un usage donné. |
CertSerializeCTLStoreElement | Sérialise la CTL encodée du contexte CTL et ses propriétés. |
Fonctions de propriété étendues
Les fonctions suivantes fonctionnent avec des propriétés étendues de certificats, de listes de révocation de certificats et de listes de révocation de certificats.
Fonction | Description |
---|---|
CertEnumCertificateContextProperties | Énumère les propriétés du contexte de certificat spécifié. |
CertEnumCRLContextProperties | Énumère les propriétés du contexte de liste de révocation de certificats spécifié. |
CertEnumCTLContextProperties | Énumère les propriétés du contexte CTL spécifié. |
CertGetCertificateContextProperty | Récupère les propriétés du certificat. |
CertGetCRLContextProperty | Récupère les propriétés de liste de révocation de certificats. |
CertGetCTLContextProperty | Récupère les propriétés CTL. |
CertSetCertificateContextProperty | Définit les propriétés du certificat. |
CertSetCRLContextProperty | Définit les propriétés de liste de révocation de certificats. |
CertSetCTLContextProperty | Définit les propriétés de la CTL. |
Fonctions MakeCert
Les fonctions suivantes prennent en charge l’outil MakeCert .
Fonction | Description |
---|---|
FreeCryptProvFromCert | Libère le handle vers un fournisseur de services de chiffrement (CSP) et supprime éventuellement le conteneur temporaire créé par la fonction GetCryptProvFromCert . |
GetCryptProvFromCert | Obtient un handle pour un fournisseur de solutions Cloud et une spécification de clé pour un contexte de certificat. |
PvkFreeCryptProv | Libère le handle dans un csp et supprime éventuellement le conteneur temporaire créé par la fonction PvkGetCryptProv . |
PvkGetCryptProv | Obtient un handle pour un fournisseur de solutions Cloud en fonction d’un nom de fichier de clé privée ou d’un nom de conteneur de clé. |
PvkPrivateKeyAcquireContextFromMemory | Crée un conteneur temporaire dans le csp et charge une clé privée à partir de la mémoire dans le conteneur. |
PvkPrivateKeySave | Enregistre une clé privée et sa clé publique correspondante dans un fichier spécifié. |
SignError | Appelle GetLastError et convertit le code de retour en HRESULT. |
Fonctions de vérification de certificat
Les certificats sont vérifiés à l’aide de CTL ou de chaînes de certificats. Des fonctions sont fournies pour les deux éléments suivants :
- Fonctions de vérification à l’aide de CTL
- Fonctions de vérification de la chaîne de certificats
Fonctions de vérification à l’aide de CTL
Ces fonctions utilisent des CTL dans le processus de vérification. Vous trouverez d’autres fonctions pour l’utilisation des CTL dans Fonctions de liste de certificats de confiance et Fonctions de propriété étendue.
Les fonctions suivantes utilisent des CTL directement pour la vérification.
Fonction | Description |
---|---|
CertVerifyCTLUsage | Vérifie l’utilisation d’une CTL. |
CryptMsgEncodeAndSignCTL | Encode et signe une CTL en tant que message. |
CryptMsgGetAndVerifySigner | Récupère et vérifie une CTL à partir d’un message. |
CryptMsgSignCTL | Signe un message qui contient une CTL. |
Fonctions de vérification de la chaîne de certificats
Les chaînes de certificats sont conçues pour fournir des informations d’approbation sur les certificats individuels.
Nom de fonction | Description |
---|---|
CertCreateCertificateChainEngine | Crée un moteur de chaîne non défini par défaut pour une application. |
CertCreateCTLEntryFromCertificateContextProperties | Crée une entrée CTL dont les attributs sont les propriétés du contexte de certificat. |
CertDuplicateCertificateChain | Duplique une chaîne de certificats en incrémentant le nombre de références de la chaîne et en retournant un pointeur vers la chaîne. |
CertFindChainInStore | Recherche le premier contexte de chaîne de certificats ou le suivant dans un magasin. |
CertFreeCertificateChain | Libère une chaîne de certificats en réduisant son nombre de références. |
CertFreeCertificateChainEngine | Libère un moteur de chaîne de certificats non défini par défaut. |
CertFreeCertificateChainList | Libère le tableau de pointeurs vers des contextes de chaîne. |
CertGetCertificateChain | Génère un contexte de chaîne à partir d’un certificat de fin et en revenant à un certificat racine approuvé, si possible. |
CertIsValidCRLForCertificate | Vérifie une liste de révocation de certificats pour déterminer si elle inclurait un certificat spécifique si ce certificat était révoqué. |
CertSetCertificateContextPropertiesFromCTLEntry | Définit les propriétés du contexte de certificat à l’aide des attributs de l’entrée CTL. |
CertVerifyCertificateChainPolicy | Vérifie une chaîne de certificats pour vérifier sa validité, y compris sa conformité aux critères de stratégie de validité spécifiés. |
Fonctions de message
Les fonctions de message CryptoAPI se composent de deux groupes de fonctions : les fonctions de message de bas niveau et les fonctions de message simplifiées.
Les fonctions de message de bas niveau créent et fonctionnent directement avec les messages PKCS #7. Ces fonctions encodent les données PKCS #7 pour la transmission et décodent les données PKCS #7 reçues. Ils déchiffrent et vérifient également les signatures des messages reçus. Pour obtenir une vue d’ensemble des messages standard et de bas niveau PKCS #7, consultez Messages de bas niveau.
Les fonctions de message simplifiées sont à un niveau supérieur et encapsulent plusieurs fonctions de message de bas niveau et fonctions de certificat dans des fonctions uniques qui effectuent une tâche spécifique d’une manière spécifique. Ces fonctions réduisent le nombre d’appels de fonction nécessaires pour accomplir une tâche, ce qui simplifie l’utilisation de CryptoAPI. Pour obtenir une vue d’ensemble des messages simplifiés, consultez Messages simplifiés.
- Fonctions de message de bas niveau
- Fonctions de message simplifiées
Fonctions de message de bas niveau
Les fonctions de message de bas niveau fournissent les fonctionnalités nécessaires pour encoder les données en vue de la transmission et pour décoder les messages PKCS #7 reçus. Des fonctionnalités sont également fournies pour déchiffrer et vérifier les signatures des messages reçus. L’utilisation de ces fonctions de message de bas niveau dans la plupart des applications n’est pas recommandée. Pour la plupart des applications, l’utilisation de fonctions de message simplifié, qui encapsulent plusieurs fonctions de message de bas niveau dans un seul appel de fonction, est recommandée.
Fonction | Description |
---|---|
CryptMsgCalculateEncodedLength | Calcule la longueur d’un message de chiffrement encodé. |
CryptMsgClose | Ferme un handle d’un message de chiffrement. |
CryptMsgControl | Exécute une fonction de contrôle spéciale après la dernière mise à jour CryptMsgUpdate d’un message de chiffrement encodé ou décodé. |
CryptMsgCountersign | Contresigne une signature déjà existante dans un message. |
CryptMsgCountersignEncoded | Contresigne une signature déjà existante (encodée SignerInfo, comme défini par PKCS #7). |
CryptMsgDuplicate | Duplique un handle de message de chiffrement en incrémentant le nombre de références. Le nombre de références effectue le suivi de la durée de vie du message. |
CryptMsgGetParam | Acquiert un paramètre après l’encodage ou le décodage d’un message de chiffrement. |
CryptMsgOpenToDecode | Ouvre un message de chiffrement pour le décodage. |
CryptMsgOpenToEncode | Ouvre un message de chiffrement pour l’encodage. |
CryptMsgUpdate | Mises à jour le contenu d’un message de chiffrement. |
CryptMsgVerifyCountersignatureEncoded | Vérifie une contre-signature en termes de structure SignerInfo (telle que définie par PKCS #7). |
CryptMsgVerifyCountersignatureEncodedEx | Vérifie que le paramètre pbSignerInfoCounterSignature contient le hachage chiffré du champ encryptedDigest de la structure de paramètres pbSignerInfo . |
Fonctions de message simplifiées
les fonctions de message simplifiées encapsulent les fonctions de message de bas niveau dans une seule fonction pour accomplir une tâche spécifiée.
Fonction | Description |
---|---|
CryptDecodeMessage | Décode un message de chiffrement. |
CryptDecryptAndVerifyMessageSignature | Déchiffre le message spécifié et vérifie le signataire. |
CryptDecryptMessage | Déchiffre le message spécifié. |
CryptEncryptMessage | Chiffre le message pour le ou les destinataires. |
CryptGetMessageCertificates | Retourne le magasin de certificats qui contient les certificats et les listes de révocation des certificats du message. |
CryptGetMessageSignerCount | Retourne le nombre de signataires dans le message signé. |
CryptHashMessage | Crée un hachage du message. |
CryptSignAndEncryptMessage | Signe le message, puis le chiffre pour le ou les destinataires. |
CryptSignMessageWithKey | Signe à la fonction un message à l’aide de la clé privée d’un fournisseur de solutions Cloud spécifiée dans les paramètres. |
CryptSignMessage | Signe le message. |
CryptVerifyDetachedMessageHash | Vérifie un message haché qui contient un hachage détaché. |
CryptVerifyDetachedMessageSignature | Vérifie un message signé qui contient une ou plusieurs signatures détachées. |
CryptVerifyMessageHash | Vérifie un message haché. |
CryptVerifyMessageSignature | Vérifie un message signé. |
CryptVerifyMessageSignatureWithKey | Vérifie la signature d’un message signé à l’aide des informations de clé publique spécifiées. |
Fonctions auxiliaires
Les fonctions auxiliaires sont regroupées comme suit :
- Gestion des données Functions
- Fonctions de conversion de données
- Fonctions d’utilisation des clés améliorées
- Fonctions d’identificateur de clé
- Fonctions de support OID
- Fonctions de récupération d’objet à distance
- Fonctions PFX
Gestion des données Functions
Les fonctions CryptoAPI suivantes gèrent les données et les certificats.
Fonction | Description |
---|---|
CertCompareCertificate | Compare deux certificats pour déterminer s’ils sont identiques. |
CertCompareCertificateName | Compare deux noms de certificat pour déterminer s’ils sont identiques. |
CertCompareIntegerBlob | Compare deux objets BLOB entiers. |
CertComparePublicKeyInfo | Compare deux clés publiques pour déterminer si elles sont identiques. |
CertFindAttribute | Recherche le premier attribut identifié par son identificateur d’objet (OID). |
CertFindExtension | Recherche la première extension identifiée par son OID. |
CertFindRDNAttr | Recherche le premier attribut RDN identifié par son OID dans la liste des noms uniques relatifs. |
CertGetIntendedKeyUsage | Acquiert les octets d’utilisation de clé prévus à partir du certificat. |
CertGetPublicKeyLength | Acquiert la longueur de bits de la clé publique/privée à partir de l’objet BLOB de clé publique. |
CertIsRDNAttrsInCertificateName | Compare les attributs dans le nom du certificat avec le CERT_RDN spécifié pour déterminer si tous les attributs y sont inclus. |
CertIsStrongHashToSign | Détermine si l’algorithme de hachage spécifié et la clé publique dans le certificat de signature peuvent être utilisés pour effectuer une signature forte. |
CertVerifyCRLRevocation | Vérifie que le certificat sujet ne figure pas dans la liste de révocation de certificats (CRL). |
CertVerifyCRLTimeValidity | Vérifie la validité temporelle d’une liste de révocation de certificats. |
CertVerifyRevocation | Vérifie que le certificat d’objet ne figure pas dans la liste de révocation de certificats. |
CertVerifyTimeValidity | Vérifie la validité temporelle d’un certificat. |
CertVerifyValidityNesting | Vérifie que la validité temporelle de l’objet est imbriquée dans la validité temporelle de l’émetteur. |
CryptExportPKCS8 | Cette fonction est remplacée par la fonction CryptExportPKCS8Ex . |
CryptExportPKCS8Ex | Exporte la clé privée au format PKCS #8. |
CryptExportPublicKeyInfo | Exporte les informations de clé publique associées à la clé privée correspondante du fournisseur. |
CryptExportPublicKeyInfoEx | Exporte les informations de clé publique associées à la clé privée correspondante du fournisseur. Cette fonction diffère de CryptExportPublicKeyInfo en ce que l’utilisateur peut spécifier l’algorithme de clé publique, remplaçant ainsi la valeur par défaut fournie par le fournisseur de solutions Cloud. |
CryptExportPublicKeyInfoFromBCryptKeyHandle | Exporte les informations de clé publique associées à la clé privée correspondante d’un fournisseur. |
CryptFindCertificateKeyProvInfo | Énumère les fournisseurs de chiffrement et leurs conteneurs de clés pour rechercher la clé privée qui correspond à la clé publique d’un certificat. |
CryptFindLocalizedName | Recherche le nom localisé pour un nom spécifié, par exemple, recherche le nom localisé pour le nom de magasin du système racine. |
CryptHashCertificate |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Hache le contenu encodé. |
CryptHashCertificate2 | Hachage d’un bloc de données à l’aide d’un fournisseur de hachage de nouvelle génération (CNG) d’API de chiffrement. |
CryptHashPublicKeyInfo |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Calcule le hachage des informations de clé publique encodées. |
CryptHashToBeSigned |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Calcule le hachage des informations « à signer » dans le contenu signé encodé (CERT_SIGNED_CONTENT_INFO). |
CryptImportPKCS8 |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Importe la clé privée au format PKCS #8 vers un fournisseur de services de chiffrement (CSP). |
CryptImportPublicKeyInfo |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Convertit et importe les informations de clé publique dans le fournisseur et retourne un handle de la clé publique. |
CryptImportPublicKeyInfoEx |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Convertit et importe les informations de clé publique dans le fournisseur et retourne un handle de la clé publique. Des paramètres supplémentaires (par rapport à ceux spécifiés par CryptImportPublicKeyInfo) qui peuvent être utilisés pour remplacer les valeurs par défaut sont fournis pour compléter CERT_PUBLIC_KEY_INFO. |
CryptImportPublicKeyInfoEx2 | Importe une clé publique dans un fournisseur asymétrique CNG. |
CryptMemAlloc | Alloue de la mémoire pour une mémoire tampon. Cette mémoire est utilisée par toutes les fonctions Crypt32.lib qui retournent des mémoires tampons allouées. |
CryptMemFree | Libère la mémoire allouée par CryptMemAlloc ou CryptMemRealloc. |
CryptMemRealloc | Libère la mémoire actuellement allouée pour une mémoire tampon et alloue de la mémoire pour une nouvelle mémoire tampon. |
CryptQueryObject |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Récupère des informations sur le contenu d’un objet BLOB ou d’un fichier. |
CryptSignAndEncodeCertificate | Encode les informations « à signer », signe ces informations encodées et encode les informations encodées signées et encodées. |
CryptSignCertificate | Signe les informations « à signer » dans le contenu encodé et signé. |
CryptSIPAddProvider | Ajoute un package d’interface objet (SIP). |
CryptSIPCreateIndirectData | Retourne une structure SIP_INDIRECT_DATA qui contient un hachage de la structure de SIP_SUBJECTINFO fournie, l’algorithme de synthèse et un attribut d’encodage. Le hachage peut être utilisé comme référence indirecte aux données. |
CryptSIPGetCaps | Récupère les fonctionnalités d’un SIP. |
CryptSIPGetSignedDataMsg | Récupère une signature Authenticode à partir du fichier. |
CryptSIPLoad | Charge la bibliothèque de liens dynamiques qui implémente un package d’interface objet et affecte des fonctions d’exportation de bibliothèque appropriées à une structure de SIP_DISPATCH_INFO . |
CryptSIPPutSignedDataMsg | Stocke une signature Authenticode dans le fichier cible. |
CryptSIPRemoveProvider | Supprime un SIP ajouté par un appel précédent à la fonction CryptSIPAddProvider . |
CryptSIPRemoveSignedDataMsg | Supprime une signature Authenticode spécifiée. |
CryptSIPRetrieveSubjectGuid | Récupère un GUID en fonction des informations d’en-tête dans un fichier spécifié. |
CryptSIPRetrieveSubjectGuidForCatalogFile | Récupère le GUID d’objet associé au fichier spécifié. |
CryptSIPVerifyIndirectData | Valide les données de hachage indirectes par rapport à l’objet fourni. |
CryptUpdateProtectedState | Migre les clés master de l’utilisateur actuel une fois que l’identificateur de sécurité (SID) de l’utilisateur a changé. |
CryptVerifyCertificateSignature | Vérifie la signature d’un certificat d’objet ou d’une liste de révocation de certificats à l’aide des informations de clé publique. |
CryptVerifyCertificateSignatureEx | Version étendue de CryptVerifyCertificateSignature. |
GetEncSChannel | Stocke le contenu de la DLL Schannel chiffrée en mémoire. |
pCryptSIPGetCaps | Implémenté par un SIP pour signaler les fonctionnalités. |
Fonctions de conversion de données
Les fonctions CryptoAPI suivantes convertissent les membres de la structure de certificat en différents formulaires.
Fonction | Description |
---|---|
CertAlgIdToOID | Convertit un identificateur d’algorithme CryptoAPI (ALG_ID) en chaîne OID (Abstract Syntax Notation One). |
CertGetNameString | Acquiert le nom de l’objet ou de l’émetteur à partir d’un certificat et le convertit en chaîne de caractères null. |
CertNameToStr | Convertit un objet BLOB de nom de certificat en chaîne sans fin. |
CertOIDToAlgId | Convertit la chaîne d’identificateur d’objet ASN.1 en identificateur d’algorithme CSP. |
CertRDNValueToStrStr | Convertit une valeur de nom en chaîne terminée par null. |
CertStrToName | Convertit une chaîne X.500 terminée par null en nom de certificat encodé. |
CryptBinaryToString | Convertit une séquence binaire en chaîne mise en forme. |
CryptFormatObject | Met en forme les données encodées et retourne une chaîne Unicode. |
CryptStringToBinary | Convertit une chaîne mise en forme en séquence binaire. |
Fonctions d’utilisation des clés améliorées
Les fonctions suivantes traitent de l’extension d’utilisation améliorée des clés (EKU) et de la propriété étendue EKU des certificats. L’extension EKU et la propriété étendue spécifient et limitent les utilisations valides d’un certificat. Les extensions font partie du certificat lui-même. Elles sont définies par l’émetteur du certificat et sont en lecture seule. Les propriétés étendues au certificat sont des valeurs associées à un certificat qui peuvent être définies dans une application.
Fonction | Description |
---|---|
CertAddEnhancedKeyUsageIdentifier | Ajoute un identificateur d’utilisation à la propriété EKU d’un certificat. |
CertGetEnhancedKeyUsage | Obtient, à partir d’un certificat, des informations sur l’extension ou la propriété EKU. |
CertRemoveEnhancedKeyUsageIdentifier | Supprime l’identificateur d’utilisation de la propriété étendue EKU d’un certificat. |
CertSetEnhancedKeyUsage | Définit la propriété EKU pour un certificat. |
Fonctions d’identificateur de clé
Les fonctions d’identificateur de clé permettent à l’utilisateur de créer, définir, récupérer ou localiser un identificateur de clé ou ses propriétés.
Un identificateur de clé est l’identificateur unique d’une paire de clés publique/privée. Il peut s’agir de n’importe quel identificateur unique, mais il s’agit généralement du hachage SHA1 de 20 octets d’une structure CERT_PUBLIC_KEY_INFO encodée. Un identificateur de clé peut être obtenu via le CERT_KEY_IDENTIFIER_PROP_ID du certificat. L’identificateur de clé permet d’utiliser cette paire de clés pour chiffrer ou déchiffrer des messages sans utiliser le certificat.
Les identificateurs de clé ne sont pas associés à des listes de contrôle d’accès ou à des listes de contrôle de contrôle d’accès.
Un identificateur de clé peut avoir les mêmes propriétés qu’un contexte de certificat. Pour plus d’informations, consultez CertCreateContext.
Fonction | Description |
---|---|
CryptCreateKeyIdentifierFromCSP |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Crée un identificateur de clé à partir de l’objet BLOB de clé publique d’un fournisseur de solutions cloud. |
CryptEnumKeyIdentifierProperties | Énumère les identificateurs de clé et leurs propriétés. |
CryptGetKeyIdentifierProperty |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Acquiert une propriété spécifique à partir d’un identificateur de clé spécifié. |
CryptSetKeyIdentifierProperty |
Important : Cette API est déconseillée. Les logiciels nouveaux et existants doivent commencer à utiliser les API de nouvelle génération de chiffrement. Microsoft peut supprimer cette API dans les versions ultérieures. Définit une propriété d’un identificateur de clé spécifié. |
Fonctions de prise en charge OID
Ces fonctions fournissent la prise en charge de l’identificateur d’objet (OID). Ces fonctions installent, inscrivent et distribuent vers OID et les fonctions spécifiques au type d’encodage.
Les fonctions CryptoAPI suivantes utilisent ces fonctions de prise en charge OID :
- CryptEncodeObject
- CryptEncodeObjectEx
- CryptDecodeObject
- CryptDecodeObjectEx
- CertVerifyRevocation
- CertOpenStore
Pour obtenir une vue d’ensemble de ce processus, consultez Extension des fonctionnalités CryptoAPI.
Les fonctions suivantes fonctionnent avec les OID.
Fonction | Description |
---|---|
CryptEnumOIDFunction | Énumère les fonctions OID inscrites identifiées par leur type d’encodage, leur nom de fonction et leur OID. |
CryptEnumOIDInfo | Énumère les informations OID inscrites identifiées par leur groupe et appelle pfnEnumOIDInfo pour obtenir des correspondances. |
CryptFindOIDInfo | Utilise la clé et le groupe spécifiés pour rechercher des informations OID. |
CryptFreeOIDFunctionAddress | Libère le nombre de handles qui a été incrémenté et retourné par CryptGetOIDFunctionAddress ou CryptGetDefaultOIDFunctionAddress. |
CryptGetDefaultOIDDllList | Acquiert la liste des entrées DLL par défaut inscrites pour le jeu de fonctions et le type d’encodage spécifiés. |
CryptGetDefaultOIDFunctionAddress | Acquiert la première fonction ou la fonction suivante installée par défaut, ou charge la DLL qui contient la fonction par défaut. |
CryptGetOIDFunctionAddress | Recherche dans la liste des fonctions installées un type d’encodage et une correspondance OID. Si aucune correspondance n’y est trouvée, le Registre est recherché pour rechercher une correspondance. |
CryptGetOIDFunctionValue | Acquiert la valeur pour le type d’encodage, le nom de fonction, l’OID et le nom de la valeur spécifiés. |
CryptInitOIDFunctionSet | Initialise et retourne un handle du jeu de fonctions OID identifié par le nom de fonction fourni. |
CryptInstallOIDFunctionAddress | Installe un ensemble d’adresses de fonction OID pouvant être appelées. |
CryptRegisterDefaultOIDFunction | Inscrit la DLL qui contient la fonction par défaut à appeler pour le type d’encodage et le nom de fonction spécifiés. |
CryptRegisterOIDFunction | Inscrit la DLL qui contient la fonction à appeler pour le type d’encodage, le nom de fonction et l’OID spécifiés. |
CryptRegisterOIDInfo | Inscrit les informations OID spécifiées dans la structure CRYPT_OID_INFO , en les faisant persister dans le Registre. |
CryptSetOIDFunctionValue | Définit la valeur pour le type d’encodage, le nom de la fonction, l’OID et le nom de la valeur spécifiés. |
CryptUnregisterDefaultOIDFunction | Supprime l’inscription de la DLL qui contient la fonction par défaut à appeler pour le type d’encodage et le nom de fonction spécifiés. |
CryptUnregisterOIDFunction | Supprime l’inscription de la DLL qui contient la fonction à appeler pour le type d’encodage, le nom de la fonction et l’OID spécifiés. |
CryptUnregisterOIDInfo | Supprime l’inscription pour les informations OID spécifiées. |
Fonctions de récupération d’objets distants
Les fonctions suivantes permettent à l’utilisateur de récupérer un objet PKI (Public Key Infrastructure), d’acquérir l’URL d’un certificat, d’une CTL ou d’une CRL, ou d’extraire une URL d’un objet.
Fonction | Description |
---|---|
CryptGetObjectUrl | Acquiert l’URL de l’objet distant à partir d’un certificat, DTL ou CRL. |
CryptRetrieveObjectByUrl | Récupère l’objet PKI à partir d’un emplacement spécifié par une URL. |
Fonctions PFX
Les fonctions suivantes prennent en charge les objets BLOB au format PFX (Personal Information Exchange).
Fonction | Description |
---|---|
PFXExportCertStore | Les exportations à partir du certificat référencé stockent les certificats et, le cas échéant, leurs clés privées associées. |
PFXExportCertStoreEx | Les exportations à partir du certificat référencé stockent les certificats et, le cas échéant, leurs clés privées associées. |
PFXImportCertStore | Importe un objet BLOB PFX et retourne le handle d’un magasin qui contient des certificats et toutes les clés privées associées. |
PFXIsPFXBlob | Tente de décoder la couche externe d’un objet BLOB en tant que paquet PFX. |
PFXVerifyPassword | Tente de décoder la couche externe d’un objet BLOB en tant que paquet PFX et de le déchiffrer avec le mot de passe donné. |
Fonctions de sauvegarde et de restauration des services de certificat
Les services de certificats incluent des fonctions de sauvegarde et de restauration de la base de données des services de certificats. Ces fonctions de sauvegarde et de restauration des services de certificat sont contenues dans Certadm.dll. Contrairement aux autres éléments d’API associés à Certificate Services, ces fonctions ne sont pas encapsulées dans un objet qui peut être utilisé pour appeler des méthodes de classe. Au lieu de cela, les API de sauvegarde et de restauration sont appelées en chargeant d’abord la bibliothèque Certadm.dll dans la mémoire en appelant LoadLibrary , puis en déterminant l’adresse des fonctions en appelant GetProcAddress. Une fois que vous avez terminé d’appeler les fonctions de sauvegarde et de restauration des services de certificat, appelez FreeLibrary pour libérer Certadm.dll ressources de la mémoire.
Notes
Les fonctions de sauvegarde et de restauration fournies par Certadm.dll ne sauvegardent pas ou ne restaurent pas les clés privées du service de certificats. Pour plus d’informations sur la sauvegarde des clés privées des services de certificats, consultez Sauvegarde et restauration de la clé privée des services de certificat.
Pour appeler les fonctions de sauvegarde et de restauration, vous devez disposer de privilèges de sauvegarde et de restauration. Pour plus d’informations, consultez Définition des privilèges de sauvegarde et de restauration.
Notes
Si CoInitializeEx a été précédemment appelé dans le même thread que celui utilisé pour appeler les API de sauvegarde et de restauration des services de certificats, l’indicateur COINIT_APARTMENTTHREADED doit avoir été passé à CoInitializeEx. Autrement dit, lorsque vous utilisez le même thread, vous ne pouvez pas appeler l’API de sauvegarde et de restauration des services de certificats si le thread a précédemment passé l’indicateur COINIT_MULTITHREADED dans un appel à CoInitializeEx.
Les API de sauvegarde des services de certificat sont définies dans Certbcli.h. Toutefois, lorsque vous créez votre programme, utilisez Certsrv.h comme fichier include.
Les API suivantes sont exportées par Certadm.dll.
Fonction | Description |
---|---|
CertSrvBackupClose | Ferme un fichier ouvert. |
CertSrvBackupEnd | Met fin à une session de sauvegarde. |
CertSrvBackupFree | Libère une mémoire tampon allouée par les API de sauvegarde et de restauration. |
CertSrvBackupGetBackupLogs | Retourne une liste de fichiers journaux qui doivent être sauvegardés. |
CertSrvBackupGetDatabaseNames | Retourne une liste de fichiers de base de données qui doivent être sauvegardés. |
CertSrvBackupGetDynamicFileList | Récupère la liste des noms de fichiers dynamiques des services de certificats qui doivent être sauvegardés pour le contexte de sauvegarde donné. |
CertSrvBackupOpenFile | Ouvre un fichier en vue de sa sauvegarde. |
CertSrvBackupPrepare | Prépare la base de données pour la sauvegarde en ligne. |
CertSrvBackupRead | Lit le contenu d’un fichier ouvert. |
CertSrvBackupTruncateLogs | Tronque les fichiers journaux. |
CertSrvIsServerOnline | Détermine si un serveur des services de certificats est en ligne (en cours d’exécution active). |
CertSrvRestoreEnd | Termine une session de restauration. |
CertSrvRestoreGetDatabaseLocations | Récupère les emplacements de base de données (utilisés pour les scénarios de sauvegarde et de restauration). |
CertSrvRestorePrepare | Commence une session de restauration. |
CertSrvRestoreRegister | Inscrit une opération de restauration. |
CertSrvRestoreRegisterComplete | Termine une opération de restauration précédemment inscrite. |
CertSrvRestoreRegisterThroughFile | Inscrit une opération de restauration. |
CertSrvServerControl | Envoie une commande de contrôle au instance Des services de certificats. |
Fonctions de rappel
Les fonctions de rappel de cette section sont utilisées pour inscrire ou installer des fournisseurs de magasins de certificats définis par l’application et pour fournir des fonctionnalités associées via des fonctions de rappel. Les fonctions de rappel sont implémentées par une application et sont appelées par les fonctions CryptoAPI . Les fonctions de rappel permettent à l’application de contrôler, en partie, la façon dont les fonctions CryptoAPI manipulent les données.
Fonction de rappel | Utilisation |
---|---|
CertChainFindByIssuerCallback | Fonction de rappel définie par l’application qui permet à l’application de filtrer les certificats qui peuvent être ajoutés à la chaîne de certificats. |
CertDllOpenStoreProv | Définit la fonction d’ouverture du fournisseur de magasin. |
CertEnumPhysicalStoreCallback | Fonction de rappel utilisée par la fonction CertEnumPhysicalStore pour mettre en forme et présenter des informations sur chaque magasin physique trouvé. |
CertEnumSystemStoreCallback | Fonction de rappel utilisée par la fonction CertEnumSystemStore pour mettre en forme et présenter des informations sur chaque magasin physique trouvé. |
CertEnumSystemStoreLocationCallback | Fonction de rappel utilisée par la fonction CertEnumSystemStoreLocation pour mettre en forme et présenter des informations sur chaque magasin physique trouvé. |
CertStoreProvCloseCallback | Détermine ce qui se passe lorsque le nombre de références d’un magasin ouvert devient égal à zéro. |
CertStoreProvControl | Permet à une application d’être avertie lorsqu’il existe une différence entre le contenu d’un magasin mis en cache en cours d’utilisation et le contenu de ce magasin, car il est conservé dans le stockage. |
CertStoreProvDeleteCertCallback | Détermine les actions à entreprendre avant la suppression d’un certificat d’un magasin de certificats. |
CertStoreProvDeleteCRLCallback | Détermine les actions à entreprendre avant la suppression d’une liste de révocation de certificats d’un magasin de certificats. |
CertStoreProvDeleteCTL | Détermine si une CTL peut être supprimée. |
CertStoreProvFindCert | Recherche le premier certificat ou le certificat suivant dans un magasin qui correspond aux critères spécifiés. |
CertStoreProvFindCRL | Recherche la première liste de révocation de certificats ou la suivante dans un magasin qui correspond aux critères spécifiés. |
CertStoreProvFindCTL | Recherche la première CTL ou la suivante dans un magasin qui correspond aux critères spécifiés. |
CertStoreProvFreeFindCert | Libère un contexte de certificat précédemment trouvé. |
CertStoreProvFreeFindCRL | Libère un contexte de liste de révocation de certificats précédemment trouvé. |
CertStoreProvFreeFindCTL | Libère un contexte de CTL précédemment trouvé. |
CertStoreProvGetCertProperty | Récupère une propriété spécifiée d’un certificat. |
CertStoreProvGetCRLProperty | Récupère une propriété spécifiée d’une liste de révocation de certificats. |
CertStoreProvGetCTLProperty | Récupère une propriété spécifiée d’une CTL. |
CertStoreProvReadCertCallback | Actuellement non utilisé, mais peut être exporté vers les fournisseurs de services cloud futurs. |
CertStoreProvReadCRLCallback | Actuellement non utilisé, mais peut être exporté vers les fournisseurs de services cloud futurs. |
CertStoreProvReadCTL | Lisez la copie du contexte de la CTL du fournisseur et, le cas échéant, créez un contexte de CTL. |
CertStoreProvSetCertPropertyCallback | Détermine les actions à effectuer avant un appel à CertSetCertificateContextProperty ou CertGetCertificateContextProperty. |
CertStoreProvSetCRLPropertyCallback | Détermine les actions à effectuer avant un appel à CertSetCRLContextProperty ou CertGetCRLContextProperty. |
CertStoreProvSetCTLProperty | Détermine si une propriété peut être définie sur une CTL. |
CertStoreProvWriteCertCallback | Détermine les actions à effectuer avant d’ajouter un certificat à un magasin. |
CertStoreProvWriteCRLCallback | Détermine les actions à effectuer avant d’ajouter une liste de révocation de certificats à un magasin. |
CertStoreProvWriteCTL | Détermine si une CTL peut être ajoutée au magasin. |
CRYPT_ENUM_KEYID_PROP | Fonction de rappel utilisée par la fonction CryptEnumKeyIdentifierProperties . |
CRYPT_ENUM_OID_FUNCTION | Fonction de rappel utilisée par la fonction CryptEnumOIDFunction . |
CRYPT_ENUM_OID_INFO | Fonction de rappel utilisée par la fonction CryptEnumOIDInfo . |
CryptGetSignerCertificateCallback | Fonction de rappel utilisée avec la structure CRYPT_VERIFY_MESSAGE_PARA pour obtenir et vérifier le certificat d’un signataire de message. |
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC | Fonction de rappel utilisée par la fonction CryptImportPKCS8 . |
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC | Fonction de rappel utilisée lors de la création de la structure CRYPT_ENCRYPTED_PRIVATE_KEY_INFO . |
PCRYPT_RESOLVE_HCRYPTPROV_FUNC | Fonction de rappel utilisée par la fonction CryptImportPKCS8 . |
PFN_CDF_PARSE_ERROR_CALLBACK | Fonction définie par l’utilisateur appelée pour les erreurs de fonction de définition de catalogue lors de l’analyse d’un fichier de définition de catalogue (CDF). |
PFN_CERT_CREATE_CONTEXT_SORT_FUNC | Appelée pour chaque entrée de contexte triée lors de la création d’un contexte. |
PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY | Fonction installable d’identificateur d’objet CNG (OID) pour l’importation d’une clé de chiffrement de contenu (CEK) déjà déchiffrée. |
PFN_CMSG_CNG_IMPORT_KEY_AGREE | Importe une clé de chiffrement de contenu pour un destinataire de transport de clé d’un message enveloppé. |
PFN_CMSG_CNG_IMPORT_KEY_TRANS | Une fonction installable CNG OID pour l’importation et le déchiffrement d’une clé de chiffrement de contenu (CEK, key-transport-recipient, encrypted). |
PFN_CMSG_EXPORT_KEY_AGREE | Chiffre et exporte la clé de chiffrement de contenu pour un destinataire de contrat de clé d’un message enveloppé. |
PFN_CMSG_EXPORT_KEY_TRANS | Chiffre et exporte la clé de chiffrement de contenu pour un destinataire de transport de clé d’un message enveloppé. |
PFN_CMSG_EXPORT_MAIL_LIST | Chiffre et exporte la clé de chiffrement de contenu pour un destinataire de liste de diffusion d’un message enveloppé. |
PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY | Génère la clé symétrique utilisée pour chiffrer le contenu d’un message enveloppé. |
PFN_CMSG_IMPORT_KEY_AGREE | Importe une clé de chiffrement de contenu pour un destinataire de transport de clé d’un message enveloppé. |
PFN_CMSG_IMPORT_KEY_TRANS | Importe une clé de chiffrement de contenu pour un destinataire de transport de clé d’un message enveloppé. |
PFN_CMSG_IMPORT_MAIL_LIST | Importe une clé de chiffrement de contenu pour un destinataire de transport de clé d’un message enveloppé. |
PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC | Appelé par CryptExportPublicKeyInfoEx pour exporter un objet BLOB à clé publique et l’encoder. |
PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC | Appelé pour décoder et retourner l’identificateur de l’algorithme de hachage et éventuellement les paramètres de signature. |
PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC | Appelé pour signer et encoder un hachage calculé. |
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC | Appelé pour déchiffrer une signature encodée et la comparer à un hachage calculé. |
PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC | Appelé par CryptImportPublicKeyInfoEx2 pour décoder l’identificateur de l’algorithme de clé publique , charger le fournisseur d’algorithme et importer la paire de clés. |
PFNCCERTDISPLAYPROC | Fonction de rappel définie par l’utilisateur qui permet à l’appelant de la fonction CryptUIDlgSelectCertificate de gérer l’affichage des certificats que l’utilisateur sélectionne pour afficher. |
PFNCMFILTERPROC | Filtre chaque certificat pour déterminer s’il apparaîtra dans la boîte de dialogue de sélection de certificat affichée par la fonction CertSelectCertificate . |
PFNCMHOOKPROC | Appelé avant que les messages ne soient traités par la boîte de dialogue de sélection de certificat générée par la fonction CertSelectCertificate . |
Fonctions de définition de catalogue
Ces fonctions sont utilisées pour créer un catalogue. Toutes ces fonctions sont appelées par MakeCat.
Fonction | Description |
---|---|
CryptCATCDFClose | Ferme un fichier de définition de catalogue et libère la mémoire de la structure CRYPTCATCDF correspondante. |
CryptCATCDFEnumAttributesWithCDFTag | Énumère les attributs des fichiers membres dans la section CatalogFiles d’un fichier CDF. |
CryptCATCDFEnumCatAttributes | Énumère les attributs au niveau du catalogue dans la section CatalogHeader d’un CDF. |
CryptCATCDFEnumMembersByCDFTagEx | Énumère les membres de fichier individuels dans la section CatalogFiles d’un fichier CDF. |
CryptCATCDFOpen | Ouvre un CDF existant pour la lecture et initialise une structure CRYPTCATCDF . |
Fonctions de catalogue
Ces fonctions sont utilisées pour gérer un catalogue.
Fonction | Description |
---|---|
CryptCATAdminAcquireContext | Acquiert un handle dans un contexte d’administrateur de catalogue. Ce handle peut être utilisé par les appels suivants aux fonctions CryptCATAdminAddCatalog, CryptCATAdminEnumCatalogFromHash et CryptCATAdminRemoveCatalog . |
CryptCATAdminAcquireContext2 | Acquiert un handle dans un contexte d’administrateur de catalogue pour un algorithme de hachage et une stratégie de hachage donnés. |
CryptCATAdminAddCatalog | Ajoute un catalogue à la base de données du catalogue. |
CryptCATAdminCalcHashFromFileHandle | Calcule le hachage d’un fichier. |
CryptCATAdminCalcHashFromFileHandle2 | Calcule le hachage d’un fichier à l’aide de l’algorithme spécifié. |
CryptCATAdminEnumCatalogFromHash | Énumère les catalogues qui contiennent un hachage spécifié. |
CryptCATAdminReleaseCatalogContext | Libère un handle dans un contexte de catalogue précédemment retourné par la fonction CryptCATAdminAddCatalog . |
CryptCATAdminReleaseContext | Libère le handle précédemment attribué par la fonction CryptCATAdminAcquireContext . |
CryptCATAdminRemoveCatalog | Supprime un fichier de catalogue et supprime l’entrée de ce catalogue de la base de données de catalogue Windows. |
CryptCATAdminResolveCatalogPath | Récupère le chemin complet du catalogue spécifié. |
CryptCATCatalogInfoFromContext | Récupère les informations du catalogue à partir d’un contexte de catalogue spécifié. |
CryptCATClose | Ferme un handle de catalogue ouvert précédemment par la fonction CryptCATOpen . |
CryptCATEnumerateAttr | Énumère les attributs associés à un membre d’un catalogue. |
CryptCATEnumerateCatAttr | Énumère les attributs associés à un catalogue. |
CryptCATEnumerateMember | Énumère les membres d’un catalogue. |
CryptCATGetAttrInfo | Récupère des informations sur un attribut d’un membre d’un catalogue. |
CryptCATGetMemberInfo | Récupère les informations de membre à partir du PKCS #7 du catalogue. En plus de récupérer les informations de membre pour une balise de référence spécifiée, cette fonction ouvre un contexte membre. |
CryptCATOpen | Ouvre un catalogue et retourne un handle de contexte au catalogue ouvert. |
IsCatalogFile | Récupère une valeur booléenne qui indique si le fichier spécifié est un fichier catalogue. |
Fonctions WinTrust
Les fonctions suivantes sont utilisées pour effectuer diverses opérations d’approbation.
Fonction | Description |
---|---|
WintrustAddActionID | Ajoute une action de fournisseur d’approbation au système de l’utilisateur. |
WintrustGetRegPolicyFlags | Récupère les indicateurs de stratégie pour un fournisseur de stratégie. |
WintrustAddDefaultForUsage | Spécifie l’identificateur d’utilisation par défaut et les informations de rappel d’un fournisseur |
WintrustGetDefaultForUsage | Récupère l’identificateur d’utilisation par défaut et les informations de rappel. |
WintrustLoadFunctionPointers | Charge les points d’entrée de fonction pour un GUID d’action spécifié. |
WintrustRemoveActionID | Supprime une action ajoutée par la fonction WintrustAddActionID . |
WintrustSetDefaultIncludePEPageHashes | Définit le paramètre par défaut qui détermine si les hachages de page sont inclus lors de la création de données indirectes sip (Subject Interface Package) pour les fichiers exécutables portables. |
WintrustSetRegPolicyFlags | Définit des indicateurs de stratégie pour un fournisseur de stratégie. |
WinVerifyTrust | Effectue une action de vérification d’approbation sur un objet spécifié. |
WinVerifyTrustEx | Effectue une action de vérification d’approbation sur un objet spécifié et prend un pointeur vers une structure WINTRUST_DATA. |
WTHelperCertCheckValidSignature | Vérifie si une signature est valide. |
WTHelperCertFindIssuerCertificate | Recherche un certificat d’émetteur à partir des magasins de certificats spécifiés qui correspond au certificat d’objet spécifié. |
WTHelperCertIsSelfSigned | Vérifie si un certificat est auto-signé. |
WTHelperGetFileHash | Vérifie la signature d’un fichier signé et obtient la valeur de hachage et l’identificateur d’algorithme pour le fichier. |
WTHelperGetProvCertFromChain | Récupère un certificat de fournisseur d’approbation à partir de la chaîne de certificats. |
WTHelperGetProvPrivateDataFromChain | Reçoit une structure CRYPT_PROVIDER_PRIVDATA de la chaîne à l’aide de l’ID de fournisseur. |
WTHelperGetProvSignerFromChain | Récupère un signataire ou un contre-signeur par index à partir de la chaîne. |
WTHelperProvDataFromStateData | Récupère les informations du fournisseur d’approbation à partir d’un handle spécifié. |
Fonctions de localisateur d’objets
Les fonctions de rappel suivantes peuvent être implémentées par un fournisseur personnalisé destiné à être appelé par le package de sécurité Schannel (Secure Channel) pour récupérer des certificats.
Fonction | Description |
---|---|
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH | Spécifie qu’un objet a changé. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET | Récupère un objet. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE | Libère le fournisseur. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD | Libère le mot de passe utilisé pour chiffrer un tableau d’octets PFX. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE | Libère l’objet retourné par le fournisseur. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER | Libère de la mémoire pour un identificateur d’objet. |
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE | Initialise le fournisseur. |