Structures de chiffrement

Les structures suivantes sont utilisées par les fonctions de chiffrement. Les structures de chiffrement sont classées en fonction de l’utilisation comme suit :

CryptXML Structures

Les structures suivantes sont utilisées par les fonctions CryptXML.

Structure Description
CRYPT_XML_ALGORITHM Spécifie l’algorithme utilisé pour signer ou transformer le message.
CRYPT_XML_ALGORITHM_INFO Contient des informations sur l’algorithme.
CRYPT_XML_BLOB Contient un tableau arbitraire d’octets.
CRYPT_XML_CRYPTOGRAPHIC_INTERFACE Passé au pointeur de la fonction CryptXmlDllGetInterface pour exposer les fonctions CryptXML implémentées.
CRYPT_XML_DATA_BLOB Contient des données encodées XML.
CRYPT_XML_DATA_PROVIDER Spécifie l’interface du fournisseur de données XML.
CRYPT_XML_DOC_CTXT Définit les informations de contexte du document.
CRYPT_XML_ISSUER_SERIAL Contient une paire nom unique-numéro de série émise par X.509 .
CRYPT_XML_KEY_DSA_KEY_VALUE Définit une valeur de clé DSA ( Digital Signature Algorithm ). La structure CRYPT_XML_KEY_DSA_KEY_VALUE est utilisée comme élément de l’union de valeur de clé dans la structure CRYPT_XML_KEY_VALUE .
CRYPT_XML_KEY_ECDSA_KEY_VALUE Définit une valeur de clé ECDSA (Elliptic Curve Digital Signature Algorithm). La structure CRYPT_XML_KEY_ECDSA_KEY_VALUE est utilisée comme élément de l’union de valeur de clé dans la structure CRYPT_XML_KEY_VALUE .
CRYPT_XML_KEY_INFO Encapsule les données d’informations clés.
CRYPT_XML_KEY_INFO_ITEM Encapsule les données d’informations clés qui correspondent à un élément KeyInfo . L’élément KeyInfo permet au destinataire d’obtenir la clé nécessaire pour valider la signature.
CRYPT_XML_KEY_RSA_KEY_VALUE Définit une valeur de clé RSA. La structure CRYPT_XML_KEY_RSA_KEY_VALUE est utilisée comme élément de l’union de valeur de clé dans la structure CRYPT_XML_KEY_VALUE .
CRYPT_XML_KEY_VALUE Contient une clé publique unique qui peut être utile pour valider la signature.
CRYPT_XML_KEYINFO_PARAM Est utilisé par la fonction CryptXmlSign pour spécifier les membres de l’élément KeyInfo à encoder.
CRYPT_XML_OBJECT Décrit un élément Object dans la signature.
CRYPT_XML_PROPERTY Contient des informations sur une propriété CryptXML.
CRYPT_XML_REFERENCE Contient les informations utilisées pour remplir l’élément Reference .
CRYPT_XML_REFERENCES Définit un tableau de structures CRYPT_XML_REFERENCE .
CRYPT_XML_SIGNATURE Contient les informations utilisées pour remplir l’élément Signature .
CRYPT_XML_SIGNED_INFO Retourne des informations sur le status de validation de signature, un résumé status des informations sur un élément SignedInfo ou un résumé status des informations sur un tableau d’éléments Reference.
CRYPT_XML_TRANSFORM_CHAIN_CONFIG Définit les transformations définies par l’application qui sont autorisées à être utilisées dans la signature numérique XML.
CRYPT_XML_TRANSFORM_INFO Contient des informations utilisées lors de l’application de la transformation de données.
CRYPT_XML_X509DATA Représente la séquence de choix dans l’élément X509Data .
CRYPT_XML_X509DATA_ITEM Représente des données X.509 qui doivent être encodées dans un élément nommé X509Data.

 

Structures de chiffrement général

Les structures suivantes sont utilisées par les fonctions de chiffrement de base.

Structure Description
CMS_DH_KEY_INFO Utilisé avec le paramètre KP_CMS_DH_KEY_INFO dans la fonction CryptSetKeyParam pour contenir les informations de clé Diffie-Hellman .
CMS_KEY_INFO Cette structure n’est pas utilisée.
CRYPT_AES_128_KEY_STATE Spécifie les informations de clé symétrique 128 bits pour un chiffrement AES (Advanced Encryption Standard ).
CRYPT_AES_256_KEY_STATE Spécifie les informations de clé symétrique 256 bits pour un chiffrement AES.
CRYPT_ALGORITHM_IDENTIFIER Contient l’identificateur d’objet (OID) de l’algorithme et tous les paramètres nécessaires pour cet algorithme.
CRYPT_ATTRIBUTE Spécifie un attribut qui a une ou plusieurs valeurs.
CRYPT_ATTRIBUTE_TYPE_VALUE Contient une valeur d’attribut unique.
CRYPT_ATTRIBUTES Contient un tableau d’attributs.
CRYPT_BIT_BLOB Contient un tableau d’octets.
CRYPT_BLOB_ARRAY Contient un tableau de structures CRYPT_DATA_BLOB .
CRYPT_CONTENT_INFO Contient des données encodées au format de données ContentInfo PKCS #7.
CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY Contient des informations représentant la séquence de certificats Netscape.
CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA Utilisé avec la fonction CryptInstallDefaultContext pour contenir un tableau de chaînes d’identificateur d’objet.
CRYPT_ECC_CMS_SHARED_INFO Représente des informations sur la clé de chiffrement de clé lors de l’utilisation du chiffrement ECC (Elliptic Curve Cryptography) dans le type de contenu EnvelopedData de la syntaxe de message de chiffrement (CMS).
CRYPT_ENCRYPTED_PRIVATE_KEY_INFO Contient les informations d’une clé privée PKCS #8 chiffrée.
CRYPT_ENROLLMENT_NAME_VALUE_PAIR Cette structure est utilisée pour créer des demandes de certificat pour le compte d’un utilisateur.
CRYPT_INTEGER_BLOB Contient les données de différents types d’objets binaires volumineux sous des noms appropriés pour le type.
CRYPT_KEY_LIMITS Prend en charge la fonction CryptGetLocalKeyLimits non implémentée et n’est pas utilisée. Il sera supprimé dans une version ultérieure de Wincrypt.h.
CRYPT_KEY_PROV_INFO Contient des champs passés en tant qu’arguments à CryptAcquireContext pour acquérir un handle pour un conteneur de clés particulier au sein d’un fournisseur de services de chiffrement (CSP) particulier, ou pour créer ou détruire un conteneur de clés.
CRYPT_KEY_PROV_PARAM Contient les données à passer en tant qu’arguments à CryptSetProvParam.
CRYPT_KEY_SIGN_MESSAGE_PARA Contient des informations sur le fournisseur de solutions Cloud et les algorithmes utilisés pour signer un message.
CRYPT_KEY_VERIFY_MESSAGE_PARA Contient les informations nécessaires pour vérifier les messages signés sans certificat pour le signataire.
CRYPT_MASK_GEN_ALGORITHM Identifie l’algorithme utilisé pour générer un masque de signature RSA PKCS #1 v2.1.
CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE Contient des pointeurs vers des fonctions implémentées par un fournisseur d’emplacement d’objet.
CRYPT_PKCS8_EXPORT_PARAMS Contient des informations identifiant une clé privée et un pointeur vers une fonction de rappel.
CRYPT_PKCS8_IMPORT_PARAMS Contient une clé privée PKCS #8 et deux pointeurs vers des fonctions de rappel.
CRYPT_PKCS12_PBE_PARAMS Contient les paramètres utilisés pour créer une clé de chiffrement, un vecteur d’initialisation (IV) ou une clé MAC ( Message Authentication Code ) pour un algorithme de chiffrement basé sur un mot de passe PKCS #12 .
CRYPT_PRIVATE_KEY_INFO Contient les informations d’une clé privée PKCS #8.
CRYPT_PSOURCE_ALGORITHM Identifie l’algorithme et (éventuellement) la valeur de l’étiquette pour un chiffrement de clé RSAES-OAEP.
CRYPT_RETRIEVE_AUX_INFO Contient des informations de synchronisation de temps facultatives à passer à la fonction CryptRetrieveObjectByUrl .
CRYPT_RSA_SSA_PSS_PARAMETERS Contient les paramètres d’une signature RSA PKCS #1 v2.1.
CRYPT_RSAES_OAEP_PARAMETERS Contient les paramètres d’un chiffrement de clé RSAES-OAEP.
CRYPT_SEQUENCE_OF_ANY Contient une liste arbitraire de objets BLOB encodés.
CRYPT_SMART_CARD_ROOT_INFO Contient les carte intelligentes et les ID de session associés à un contexte de certificat.
CRYPT_TIME_STAMP_REQUEST_INFO Cette structure est utilisée pour l’horodatage.
CRYPT_URL_INFO Contient des informations sur les regroupements d’URL.
CRYPT_X942_OTHER_INFO Contient des informations de génération de clé supplémentaires.
CRYPTNET_URL_CACHE_FLUSH_INFO Contient les informations d’expiration utilisées par le service CUC (Cryptnet URL Cache) pour conserver une entrée de cache d’URL.
CRYPTNET_URL_CACHE_PRE_FETCH_INFO Contient les informations de mise à jour utilisées par le service CUC (Cryptnet URL Cache) pour gérer une entrée de cache d’URL.
CRYPTNET_URL_CACHE_RESPONSE_INFO Contient des informations de réponse utilisées par le service CUC (Cryptnet URL Cache) pour gérer une entrée de cache d’URL.
CRYPT_INTEGER_BLOB Cette structure est utilisée pour un tableau arbitraire d’octets.
CRYPTPROTECT_PROMPTSTRUCT Fournit le texte d’une invite et des informations sur le moment et l’emplacement où cette invite doit être affichée lors de l’utilisation des fonctions CryptProtectData et CryptUnprotectData .
CRYPTUI_INITDIALOG_STRUCT Prend en charge la structure CRYPTUI_VIEWCERTIFICATE_STRUCT .
CRYPTUI_SELECTCERTIFICATE_STRUCT Contient des informations sur la boîte de dialogue affichée par la fonction CryptUIDlgSelectCertificate .
CRYPTUI_VIEWCERTIFICATE_STRUCT Contient des informations sur un certificat à afficher. Il est utilisé dans la fonction CryptUIDlgViewCertificate .
CRYPTUI_VIEWSIGNERINFO_STRUCT Contient des informations pour la fonction CryptUIDlgViewSignerInfo .
CRYPTUI_WIZ_EXPORT_CERTCONTEXT_INFO Contient des informations qui contrôlent le fonctionnement de la fonction CryptUIWizExport lorsqu’un certificat est l’objet en cours d’exportation.
CRYPTUI_WIZ_EXPORT_INFO Contient des informations qui contrôlent le fonctionnement de la fonction CryptUIWizExport .
CRYPTUI_WIZ_IMPORT_SRC_INFO Contient l’objet à importer dans la fonction CryptUIWizImport .
DHPRIVKEY_VER3 Contient des informations spécifiques à la clé privée particulière contenue dans l’objet BLOB de clé.
DHPUBKEY Contient des informations spécifiques à l'Diffie-Hellman clé publique contenue dans l’objet BLOB de clé.
DHPUBKEY_VER3 Contient des informations spécifiques à la clé publique particulière contenue dans l’objet BLOB de clé.
Blobs de clés privées Diffie-Hellman version 3 Permet d’exporter et d’importer des informations sur une clé privée DH.
Objets blob à clé publique Diffie-Hellman version 3 Permet d’exporter et d’importer des informations sur une clé publique DH.
Objets blob de clés privées DSS version 3 Permet d’exporter et d’importer des informations sur une clé privée DH.
Objets blob de clés publiques DSS version 3 Permet d’exporter et d’importer des informations sur une clé publique DH.
DSSPRIVKEY_VER3 Contient des informations spécifiques à la clé privée particulière contenue dans l’objet BLOB de clé.
DSSPUBKEY Contient des informations spécifiques à la clé publique particulière contenue dans l’objet BLOB de clé.
DSSPUBKEY_VER3 Contient des informations spécifiques à la clé publique particulière contenue dans l’objet BLOB de clé.
DSSSEED Contient les valeurs de départ et de compteur qui peuvent être utilisées pour vérifier les nombres premiers de la clé publique DSS.
HMAC_INFO Spécifie l’algorithme de hachage et les chaînes internes et externes qui doivent être utilisées pour calculer le hachage HMAC ( Hash-Based Message Authentication Code ).
KEYSVC_BLOB Définit un objet BLOB de service clé.
KEYSVC_UNICODE_STRING Définit une chaîne Unicode de service clé.
OCSP_BASIC_RESPONSE_ENTRY Contient l’status de certificat actuel pour un seul certificat.
OCSP_BASIC_RESPONSE_INFO Contient une réponse OCSP de base spécifiée par RFC 2560.
OCSP_BASIC_REVOKED_INFO Contient la raison pour laquelle un certificat a été révoqué.
OCSP_BASIC_SIGNED_RESPONSE_INFO Contient une réponse OCSP de base avec une signature.
OCSP_CERT_ID Contient des informations permettant d’identifier un certificat dans une demande ou une réponse OCSP.
OCSP_REQUEST_ENTRY Contient des informations sur un seul certificat dans une requête OCSP.
OCSP_REQUEST_INFO Contient des informations pour une requête OCSP comme spécifié par RFC 2560.
OCSP_RESPONSE_INFO Indique la réussite ou l’échec de la demande OCSP correspondante. Pour les demandes réussies, il contient le type et la valeur des informations de réponse.
OCSP_SIGNATURE_INFO Contient une signature pour une demande ou une réponse OCSP.
OCSP_SIGNED_REQUEST_INFO Contient des informations pour une requête OCSP avec des informations de signature facultatives.
PROV_ENUMALGS Retourné par des appels à CryptGetProvParam ou CPGetProvParam.
PROV_ENUMALGS_EX Retourné par des appels à CryptGetProvParam ou CPGetProvParam.
PUBLICKEYSTRUC Indique le type d’objet BLOB d’une clé et l’algorithme utilisé par la clé.
ROOT_INFO_LUID Contient un identificateur local unique (LUID) pour les informations racine de carte à puce de chiffrement.
RSAPUBKEY Contient des informations spécifiques à la clé publique particulière contenue dans l’objet BLOB de clé.
SCHANNEL_ALG Contient des informations sur l’algorithme et la taille des clés.
SIGNER_ATTR_AUTHCODE Spécifie les attributs d’une signature Authenticode .
SIGNER_BLOB_INFO Spécifie un objet BLOB à signer.
SIGNER_CERT Spécifie un certificat utilisé pour signer un document. Le certificat peut être stocké dans un fichier SPC ( Software Publisher Certificate ) ou dans un magasin de certificats.
SIGNER_CERT_STORE_INFO Spécifie le magasin de certificats utilisé pour signer un document.
SIGNER_CONTEXT Contient un objet BLOB signé.
SIGNER_FILE_INFO Spécifie un fichier à signer.
SIGNER_PROVIDER_INFO Spécifie les informations csp et de clé privée utilisées pour créer une signature numérique.
SIGNER_SIGNATURE_INFO Contient des informations sur une signature numérique.
SIGNER_SPC_CHAIN_INFO Spécifie un certificat d’éditeur de logiciels (SPC) et une chaîne de certificats utilisées pour signer un document.
SIGNER_SUBJECT_INFO Spécifie un objet à signer.

 

Structures de certificats courantes

Les structures suivantes sont utilisées par de nombreuses fonctions de certificat.

Structure Description
CERT_BIOMETRIC_DATA Contient des informations sur les données biométriques.
CERT_BIOMETRIC_EXT_INFO Contient un ensemble d’informations biométriques.
CERT_CONTEXT Contient les représentations encodées et décodées d’un certificat.
CERT_CRL_CONTEXT_PAIR Contient un contexte de certificat et un contexte de liste de révocation de certificats associé.
CERT_DH_PARAMETERS Contient des paramètres associés à un algorithme de clé publique Diffie-Hellman .
CERT_DSS_PARAMETERS Contient des paramètres associés à un algorithme de clé publique DSS.
CERT_ECC_SIGNATURE Contient les valeurs r et s d’une signature ECDSA (Elliptic Curve Digital Signature Algorithm).
CERT_EXTENSION Contient les informations d’extension d’un certificat, d’une liste de révocation de certificats (CRL) ou d’une liste d’approbation de certificat (CTL).
CERT_EXTENSIONS Contient un tableau d’extensions.
CERT_GENERAL_SUBTREE Utilisée dans CERT_NAME_CONSTRAINTS_INFO structure, cette structure fournit l’identité d’un certificat qui peut être inclus ou exclu.
CERT_HASHED_URL Contient une URL hachée.
CERT_ID Utilisé comme un moyen flexible d’identification unique d’un certificat.
CERT_INFO Contient les informations d’un certificat.
CERT_KEY_CONTEXT Contient des données pour le membre pvData d’un membre Value de CERT_EXTENSION structure associée à une propriété CERT_KEY_CONTEXT_PROP_ID.
CERT_KEYGEN_REQUEST_INFO Contient les informations stockées dans la requête Netscape Keygen.
CERT_LDAP_STORE_OPENED_PARA Utilisé avec la fonction CertOpenStore lorsque le fournisseur CERT_STORE_PROV_LDAP est spécifié à l’aide de l’indicateur CERT_LDAP_STORE_OPENED_FLAG pour spécifier à la fois la session LDAP existante à utiliser pour effectuer la requête ainsi que la chaîne de requête LDAP.
CERT_LOGOTYPE_AUDIO Contient des informations sur un logotype audio.
CERT_LOGOTYPE_AUDIO_INFO Contient des informations plus détaillées sur un logotype audio.
CERT_LOGOTYPE_DATA Contient des données de logotype.
CERT_LOGOTYPE_DETAILS Contient des informations supplémentaires sur un logotype.
CERT_LOGOTYPE_EXT_INFO Contient un ensemble d’informations de logotype.
CERT_LOGOTYPE_IMAGE Contient des informations sur un logotype d’image.
CERT_LOGOTYPE_IMAGE_INFO Contient des informations plus détaillées sur un logotype d’image.
CERT_LOGOTYPE_INFO Contient des informations sur les données de logotype.
CERT_LOGOTYPE_REFERENCE Contient des informations de référence sur le logotype.
CERT_NAME_CONSTRAINTS_INFO Contient des informations sur les certificats qui sont spécifiquement autorisés ou exclus de l’approbation.
CERT_NAME_INFO Contient les noms des sujets ou des émetteurs. Les informations sont représentées sous la forme d’un tableau de structures CERT_RDN .
CERT_NAME_VALUE Contient une valeur d’attribut de nom unique relatif (RDN).
CERT_OTHER_LOGOTYPE_INFO Contient des informations sur les types de logo qui ne sont pas prédéfinis.
CERT_PAIR Contient un certificat et son certificat croisé de paire.
CERT_PHYSICAL_STORE_INFO Contient des informations sur les magasins de certificats physiques.
CERT_POLICY_CONSTRAINTS_INFO Contient des stratégies établies pour accepter des certificats comme approuvés.
CERT_POLICY_MAPPING Contient un mappage entre les OID de stratégie de domaine de l’émetteur et de l’objet.
CERT_POLICY_MAPPINGS_INFO Fournit un mappage entre les OID de stratégie de deux domaines.
CERT_PUBLIC_KEY_INFO Contient une clé publique et son algorithme.
CERT_QC_STATEMENT Représente une instruction unique dans une séquence d’une ou plusieurs instructions à inclure dans une extension d’instructions de certificat qualifié (QC).
CERT_QC_STATEMENTS_EXT_INFO Contient une séquence d’une ou plusieurs instructions qui composent l’extension d’instructions de certificat qualifié (QC) pour un qc.
CERT_RDN Contient un nom unique relatif (RDN) composé d’un tableau de structures CERT_RDN_ATTR .
CERT_RDN_ATTR Contient un attribut unique d’un nom unique relatif (RDN).
CERT_REQUEST_INFO Contient des informations pour une demande de certificat.
CERT_REVOCATION_CRL_INFO Contient des informations mises à jour par un gestionnaire de type de révocation de listes de révocation de certificats.
CERT_REVOCATION_PARA Cette structure peut éventuellement être transmise à CertVerifyRevocation pour aider à trouver l’émetteur du contexte à vérifier.
CERT_REVOCATION_STATUS Contient des informations sur la status de révocation du certificat.
CERT_SELECT_STRUCT Contient des critères sur lesquels sélectionner des certificats qui sont présentés dans une boîte de dialogue de sélection de certificat. Cette structure est utilisée dans la fonction CertSelectCertificate .
CERT_SIGNED_CONTENT_INFO Contient du contenu encodé à signer et un objet BLOB pour contenir la signature.
CERT_STORE_PROV_FIND_INFO Cette structure est utilisée par de nombreuses fonctions de rappel du fournisseur de magasin.
CERT_STORE_PROV_INFO Contient les informations retournées par le CertDllOpenStoreProv installé lorsqu’un magasin est ouvert avec CertOpenStore.
CERT_STRONG_SIGN_PARA Contient les paramètres utilisés pour case activée pour les signatures fortes sur les certificats, les listes de contrôle d’accès, les reponses OCSP et les messages PKCS #7.
CERT_STRONG_SIGN_SERIALIZED_INFO Contientl’algorithme de hachage de l’algorithme/ de signature et les pairesde longueur de bits de l’algorithme/ de clé publiquequi peuvent être utilisées pour la signature forte.
CERT_SUBJECT_INFO_ACCESS Il s’agit d’un synonyme de la structure CERT_AUTHORITY_INFO_ACCESS .
CERT_SYSTEM_STORE_INFO Contient les informations utilisées par les fonctions qui fonctionnent avec les magasins système.
CERT_SYSTEM_STORE_RELOCATE_PARA Contient les données à transmettre à CertOpenStore lorsque le paramètre dwFlags de cette fonction est défini sur CERT_SYSTEM_STORE_RELOCATE_FLAG.
CERT_TEMPLATE_EXT Cette structure est un modèle de certificat.
CERT_X942_DH_PARAMETERS Contient des paramètres associés à un algorithme de clé publique Diffie-Hellman.
CERT_X942_DH_VALIDATION_PARAMS Cette structure est éventuellement pointée vers un membre de la structure CERT_X942_DH_PARAMETERS et contient des informations initiales supplémentaires.
CMC_ADD_ATTRIBUTES_INFO Contient les attributs de certificat à ajouter à un certificat.
CMC_ADD_EXTENSIONS_INFO Contient les attributs de contrôle d’extension de certificat à ajouter à un certificat.
CMC_DATA_INFO Cette structure fournit un moyen de communiquer différents éléments d’informations étiquetées.
CMC_PEND_INFO Cette structure est un membre possible d’une structure CMC_STATUS_INFO .
CMC_RESPONSE_INFO Cette structure fournit un moyen de communiquer différents éléments d’informations étiquetées.
CMC_STATUS_INFO Contient status informations sur les messages de gestion des certificats sur CMS.
CMC_TAGGED_ATTRIBUTE Cette structure est utilisée dans les structures CMC_DATA_INFO et CMC_RESPONSE_INFO .
CMC_TAGGED_CERT_REQUEST Cette structure est utilisée dans la structure CMC_TAGGED_REQUEST .
CMC_TAGGED_CONTENT_INFO Cette structure est utilisée dans les structures CMC_DATA_INFO et CMC_RESPONSE_INFO .
CMC_TAGGED_OTHER_MSG Cette structure est utilisée dans les structures CMC_DATA_INFO et CMC_RESPONSE_INFO .
CMC_TAGGED_REQUEST Cette structure est utilisée dans les structures CMC_DATA_INFO pour demander un certificat.
CRL_CONTEXT Contient les représentations encodées et décodées d’une liste de révocation de certificats.
CRL_ENTRY Contient des informations sur un seul certificat révoqué. Il est membre d’une structure CRL_INFO .
CRL_INFO Contient les informations d’une liste de révocation de certificats (CRL).
CRL_ISSUING_DIST_POINT Contient des informations sur les types de certificats répertoriés dans une liste de révocation de certificats.
CROSS_CERT_DIST_POINTS_INFO Cette structure fournit des informations utilisées pour mettre à jour des certificats croisés dynamiques.
CTL_ANY_SUBJECT_INFO Contient un SubjectAlgorithm à mettre en correspondance dans la CTL et le SubjectIdentifier à mettre en correspondance dans l’une des entrées CTL dans les appels à CertFindSubjectInCTL.
CTL_CONTEXT Contient les représentations encodées et décodées d’une CTL.
CTL_ENTRY Cette structure est un élément d’une liste d’approbation de certificats (CTL).
CTL_FIND_SUBJECT_PARA Contient les données utilisées par CertFindCTLInStore avec un dwFindType de CTL_FIND_SUBJECT pour rechercher une liste d’approbation de certificats (CTL).
CTL_FIND_USAGE_PARA Cette structure est membre de la structure CTL_FIND_SUBJECT_PARA et elle est utilisée par CertFindCTLInStore.
CTL_INFO Contient les informations stockées dans une liste d’approbation de certificats (CTL).
CTL_MODIFY_REQUEST Contient une demande de modification d’une liste d’approbation de certificats. Cette structure est utilisée dans la fonction CertModifyCertificatesToTrust .
CTL_USAGE Contient un tableau d’identificateurs d’objet (OID) pour les extensions de liste d’approbation de certificats (CTL).
CTL_VERIFY_USAGE_PARA Contient les paramètres utilisés par CertVerifyCTLUsage pour établir la validité de l’utilisation d’une CTL.
CTL_VERIFY_USAGE_STATUS Contient des informations sur une liste d’approbation de certificats (CTL) retournée par CertVerifyCTLUsage.

 

Structures d’extension de certificat X.509

Les structures suivantes sont associées aux structures X.509 CERT_EXTENSION .

Structure Description
CERT_ACCESS_DESCRIPTION Cette structure est membre d’une structure CERT_AUTHORITY_INFO_ACCESS .
CERT_ALT_NAME_ENTRY Contient un autre nom dans l’une des différentes formes de nom.
CERT_ALT_NAME_INFO Utilisé dans les extensions d’encodage et de décodage pour les certificats d’objet ou d’émetteur, la liste de révocation de certificats (CRL) et la liste de certificats d’approbation (CTL).
CERT_AUTHORITY_INFO_ACCESS Représente l’accès aux informations d’autorité et les extensions de certificat d’accès aux informations de l’objet et spécifie comment accéder aux informations et services supplémentaires pour l’objet ou l’émetteur de ce certificat.
CERT_AUTHORITY_KEY_ID_INFO Identifie la clé utilisée pour signer un certificat ou une liste de révocation de certificats.
CERT_AUTHORITY_KEY_ID2_INFO Identifie la clé utilisée pour signer un certificat ou une liste de révocation de certificats. Il diffère de la structure CERT_AUTHORITY_KEY_ID_INFO en ce que l’émetteur de certificat est un CERT_ALT_NAME_INFO plutôt qu’un CERT_NAME_BLOB.
CERT_BASIC_CONSTRAINTS_INFO Contient des informations indiquant si le sujet certifié peut agir en tant qu’autorité de certification, entité finale ou les deux.
CERT_BASIC_CONSTRAINTS2_INFO Contient des informations indiquant si le sujet certifié peut agir en tant qu’autorité de certification ou entité de fin.
CERT_KEY_ATTRIBUTES_INFO Contient des informations supplémentaires facultatives sur la clé publique en cours de certification.
CERT_KEY_USAGE_RESTRICTION_INFO Contient des restrictions imposées à l’utilisation de la clé publique d’un certificat.
CERT_POLICIES_INFO Contient un tableau de CERT_POLICY_INFO.
CERT_POLICY_ID Contient une liste de stratégies de certificat que le certificat prend expressément en charge, ainsi que des informations de qualificateur facultatives relatives à ces stratégies.
CERT_POLICY_INFO Contient un identificateur d’objet (OID) spécifiant une stratégie et un tableau facultatif de qualificateurs de stratégie.
CERT_POLICY_QUALIFIER_INFO Contient un identificateur d’objet (OID) spécifiant les informations supplémentaires spécifiques au qualificateur et au qualificateur.
CERT_PRIVATE_KEY_VALIDITY Indique un intervalle de temps valide pour la clé privée correspondant à la clé publique d’un certificat.
CRL_DIST_POINT Identifie un seul point de distribution de liste de révocation de certificats qu’un utilisateur de certificat peut référencer pour déterminer si les certificats ont été révoqués.
CRL_DIST_POINT_NAME Identifie un emplacement à partir duquel la liste de révocation de certificats peut être obtenue.
CRL_DIST_POINTS_INFO Contient une liste de points de distribution de liste de révocation de certificats qu’un utilisateur de certificat peut référencer pour déterminer si le certificat a été révoqué.

 

Ces structures peuvent être encodées dans le membre Value d’une structure CERT_EXTENSION à l’aide des fonctions CryptEncodeObject et CryptEncodeObjectEx . Elles sont créées et retournées par les fonctions CryptDecodeObject et CryptDecodeObjectEx lorsque le membre Value d’une structure CERT_EXTENSION est décodé.

La structure encodée ou créée dépend du membre de chaîne pszObjId de la structure CERT_EXTENSION .

Les constantes et OID prédéfinies d’extension actuelles, ainsi que la structure associée à chacune d’elles, sont indiquées dans le tableau suivant.

Notes

La constante prédéfinie (colonne 1) et l’OID correspondant (colonne 2) peuvent être utilisées de manière interchangeable.

 

Constante prédéfinie Identificateur d’objet (OID) Structure de données
X509_AUTHORITY_INFO_ACCESS szOID_AUTHORITY_INFO_ACCESS CERT_AUTHORITY_INFO_ACCESS
X509_AUTHORITY_KEY_ID szOID_AUTHORITY_KEY_IDENTIFIER CERT_AUTHORITY_KEY_ID_INFO
X509_ALTERNATE_NAME szOID_SUBJECT_ALT_NAME – Ou –
szOID_ISSUER_ALT_NAME
CERT_ALT_NAME_INFO
X509_BASIC_CONSTRAINTS szOID_BASIC_CONSTRAINTS CERT_BASIC_CONSTRAINTS_INFO
X509_BASIC_CONSTRAINTS2 szOID_BASIC_CONSTRAINTS2 CERT_BASIC_CONSTRAINTS2_INFO
X509_CERT_POLICIES szOID_CERT_POLICIES CERT_POLICIES_INFO
X509_KEY_ATTRIBUTES szOID_KEY_ATTRIBUTES CERT_KEY_ATTRIBUTES_INFO
X509_KEY_USAGE szOID_KEY_USAGE CRYPT_BIT_BLOB
X509_KEY_USAGE_RESTRICTION szOID_KEY_USAGE_RESTRICTION CERT_KEY_USAGE_RESTRICTION_INFO
Aucune szOID_POLICY_MAPPINGS Non implémenté
None szOID_SUBJECT_DIR_ATTRS Non implémenté

 

Message Structures

Les structures suivantes sont utilisées par les fonctions de message de chiffrement.

Structure Description
CMSG_CMS_RECIPIENT_INFO Cette structure est utilisée avec la fonction CryptMsgGetParam pour obtenir des informations sur un destinataire de message de transport de clé, d’accord de clé ou d’enveloppe de liste de courrier.
CMSG_CMS_SIGNER_INFO Cette structure contient le contenu de l’objet SignerInfo défini dans les messages signés ou signés et enveloppés.
CMSG_CNG_CONTENT_DECRYPT_INFO Contient toutes les informations pertinentes passées entre CryptMsgControl et les fonctions installables OID pour l’importation et le déchiffrement d’une CLÉ de chiffrement de contenu (CEK) de nouvelle génération (CNG).
CMSG_CONTENT_ENCRYPT_INFO Contient des informations partagées entre les fonctions installables PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY, PFN_CMSG_EXPORT_KEY_TRANS, PFN_CMSG_EXPORT_KEY_AGREE et OID (identificateur d’objetPFN_CMSG_EXPORT_MAIL_LIST) utilisées pour le chiffrement et l’exportation d’une clé de chiffrement de contenu.
CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA Cette structure est utilisée pour ajouter un attribut non authentifié à un signataire d’un message signé.
CMSG_CTRL_DECRYPT_PARA Cette structure contient des informations utilisées pour déchiffrer un message enveloppé pour un destinataire de transport de clé. Cette structure est passée à CryptMsgControl si le paramètre dwCtrlType est CMSG_CTRL_DECRYPT.
CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA Cette structure est utilisée pour supprimer un attribut non authentifié d’un signataire d’un message signé.
CMSG_CTRL_KEY_AGREE_DECRYPT_PARA Cette structure contient des informations sur un destinataire de contrat clé.
CMSG_CTRL_KEY_TRANS_DECRYPT_PARA Structure contenant des informations sur un destinataire de message de transport de clé.
CMSG_CTRL_MAIL_LIST_DECRYPT_PARA Cette structure contient des informations sur un destinataire de message de liste de courriers électroniques.
CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA Cette structure contient des informations utilisées pour vérifier une signature de message. Il contient l’index du signataire et la clé publique du signataire. La clé publique du signataire peut être la structure CERT_PUBLIC_KEY_INFO, le contexte de certificat ou le contexte de chaîne du signataire.
CMSG_ENVELOPED_ENCODE_INFO Cette structure contient les informations nécessaires à l’encodage d’un message enveloppé. Elle est passée à CryptMsgOpenToEncode si dwMsgType est CMSG_ENVELOPED.
CMSG_ENVELOPED_HASHED_INFO Cette structure est utilisée avec les messages hachés . Elle est passée à CryptMsgOpenToEncode si dwMsgType est CMSG_ENVELOPED.
CMSG_KEY_AGREE_ENCRYPT_INFO Contient des informations de chiffrement applicables à tous les destinataires du contrat de clé d’un message enveloppé.
CMSG_KEY_AGREE_KEY_ENCRYPT_INFO Contient la clé chiffrée pour un destinataire de contrat de clé d’un message enveloppé.
CMSG_KEY_TRANS_ENCRYPT_INFO Contient des informations de chiffrement pour un destinataire de transport de clé de données enveloppées.
CMSG_MAIL_LIST_ENCRYPT_INFO Contient des informations de chiffrement pour un destinataire de liste de diffusion de données enveloppées.
CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO Cette structure contient des informations sur un destinataire de message à l’aide de la gestion des clés de contrat de clé.
CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO Cette structure contient des informations de transport de clé encodées pour un destinataire de message.
CMSG_KEY_TRANS_RECIPIENT_INFO Cette structure contient des informations utilisées dans les algorithmes de transport de clés.
CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO Cette structure est utilisée avec des clés symétriques précédemment distribuées pour déchiffrer la clé de chiffrement de clé de contenu (KEK).
CMSG_MAIL_LIST_RECIPIENT_INFO Cette structure contient des informations utilisées pour les clés de chiffrement à clé symétrique (KEK) précédemment distribuées.
CMSG_RC2_AUX_INFO Cette structure contient la longueur de bits de la clé pour les algorithmes de chiffrement RC2. Le membre pvEncryptionAuxInfo dans CMSG_ENVELOPED_ENCODE_INFOpeut être défini pour pointer vers un instance de cette structure.
CMSG_RC4_AUX_INFO Cette structure contient la longueur de bits de la clé pour les algorithmes de chiffrement RC4. Le membre pvEncryptionAuxInfo dans CMSG_ENVELOPED_ENCODE_INFOpeut être défini pour pointer vers un instance de cette structure.
CMSG_RECIPIENT_ENCODE_INFO Cette structure contient des informations sur le type de gestion de clé de chiffrement de contenu d’un destinataire de message.
CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO Cette structure contient des informations sur un récepteur de message utilisé pour déchiffrer la clé de session nécessaire pour déchiffrer le contenu du message. Cette structure est utilisée avec les messages cms de bas niveau à l’aide de l’une des méthodes de gestion des clés.
CMSG_RECIPIENT_ENCRYPTED_KEY_INFO Cette structure contient des informations utilisées pour un destinataire de contrat de clé individuelle.
CMSG_SIGNED_ENCODE_INFO Cette structure contient des informations à transmettre à CryptMsgOpenToEncode si dwMsgType est CMSG_SIGNED.
CMSG_SIGNER_ENCODE_INFO Cette structure contient des informations sur les signataires. Il est transmis à CryptMsgCountersign, CryptMsgCountersignEncoded et éventuellement à CryptMsgOpenToEncode en tant que membre de la structure CMSG_SIGNED_ENCODE_INFO , si le paramètre dwMsgType est CMSG_SIGNED.
CMSG_SIGNER_INFO Cette structure contient le contenu du signataire PKCS #7 défini dans les messages signés.
CMSG_SP3_COMPATIBLE_AUX_INFO Cette structure contient les informations nécessaires pour le chiffrement compatible SP3.
CMSG_STREAM_INFO Cette structure est utilisée pour activer le traitement des données de flux de données plutôt que le traitement par bloc unique. Le traitement de flux est le plus souvent utilisé lors du traitement de messages volumineux. Les messages stream-process peuvent provenir de n’importe quelle source sérialisée, telle qu’un fichier sur un disque dur, un serveur ou un CD-ROM.
CRYPT_DECRYPT_MESSAGE_PARA Contient des informations pour déchiffrer les messages.
CRYPT_ENCRYPT_MESSAGE_PARA Contient les informations utilisées pour chiffrer les messages.
CRYPT_HASH_MESSAGE_PARA Contient des données pour les messages de hachage .
CRYPT_SIGN_MESSAGE_PARA Contient des informations pour la signature des messages à l’aide d’un contexte de certificat de signature spécifié .
CRYPT_VERIFY_MESSAGE_PARA Contient les informations nécessaires pour vérifier un message signé.

 

Structures de prise en charge d’OID

Les structures suivantes sont utilisées par les fonctions de support OID.

Structure Description
CRYPT_OID_FUNC_ENTRY Contient un identificateur d’objet (OID) et un pointeur vers sa fonction associée. Il est utilisé avec CryptInstallOIDFunctionAddress
CRYPT_OID_INFO Contient des informations sur un identificateur d’objet (OID).
CRYPT_RC2_CBC_PARAMETERS Contient les informations utilisées avec le chiffrement szOID_RSA_RC2CBC.
CRYPT_SMIME_CAPABILITIES Contient un tableau hiérarchisé de fonctionnalités prises en charge.
CRYPT_SMIME_CAPABILITY Spécifie une seule fonctionnalité et ses paramètres associés.

 

Structures de chaîne de certificats

Les structures suivantes sont utilisées pour créer des chaînes de certificats utilisées pour établir l’approbation d’un certificat.

Structure Description
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA Contient les informations de stratégie utilisées dans la vérification des chaînes de certificats pour les fichiers.
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS Contient des informations de stratégie Authenticode supplémentaires pour la vérification en chaîne des fichiers.
AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA Contient des informations de stratégie d’horodatage qui peuvent être utilisées dans la vérification de la chaîne de certificats des fichiers.
CERT_CHAIN_CONTEXT Contient un tableau de chaînes de certificats simples et une structure de status d’approbation qui indique des données récapitulatives de validité sur toutes les chaînes simples connectées.
CERT_CHAIN_ELEMENT Cette structure est un élément unique d’une chaîne de certificats simple.
CERT_CHAIN_ENGINE_CONFIG Définit les paramètres de génération d’un moteur de chaîne de certificats non par défaut.
CERT_CHAIN_FIND_BY_ISSUER_PARA Contient les informations utilisées dans CertFindChainInStore pour créer des chaînes de certificats.
CERT_CHAIN_PARA Établit les critères de recherche et de correspondance à utiliser dans la création d’une chaîne de certificats.
CERT_CHAIN_POLICY_PARA Contient les informations utilisées dans CertVerifyCertificateChainPolicy pour établir des critères de stratégie pour la vérification des chaînes de certificats.
CERT_CHAIN_POLICY_STATUS Contient la chaîne de certificats status informations retournées par CertVerifyCertificateChainPolicy à partir de la vérification des chaînes de certificats.
CERT_REVOCATION_INFO Indique la status de révocation d’un certificat dans un CERT_CHAIN_ELEMENT.
CERT_SELECT_CHAIN_PARA Contient les paramètres utilisés pour la création et la sélection de chaînes.
CERT_SIMPLE_CHAIN Contient un tableau d’éléments de chaîne et une approbation récapitulative status pour la chaîne que le tableau représente.
CERT_SELECTUI_INPUT Utilisé par la fonction CertSelectionGetSerializedBlob pour sérialiser les certificats contenus dans un magasin ou un tableau de chaînes de certificats. L’objet BLOB sérialisé retourné peut être passé à la fonction CredUIPromptForWindowsCredentials.
CERT_TRUST_LIST_INFO Indique l’utilisation valide d’une CTL.
CERT_TRUST_STATUS Contient des informations d’approbation sur un certificat dans une chaîne de certificats, des informations d’approbation récapitulatives sur une chaîne simple de certificats ou des informations récapitulatives sur un tableau de chaînes simples.
CERT_USAGE_MATCH Fournit des paramètres pour la recherche des certificats d’émetteur utilisés pour créer une chaîne de certificats.
CTL_USAGE_MATCH Fournit des paramètres pour la recherche des listes d’approbation de certificats (CTL) utilisées pour générer une chaîne de certificats.
SSL_EXTRA_CERT_CHAIN_POLICY_PARA Contient les informations de stratégie utilisées dans la vérification des chaînes de certificats client/serveur SSL ( Secure Sockets Layer ).

 

CSP Structures

Les structures suivantes sont utilisées avec les fonctions de fournisseur de services de chiffrement (CSP).

Structure Description
BLOBHEADER Indique le type d’objet BLOB d’une clé et l’algorithme utilisé par la clé.
VTableProvStruc Contient des pointeurs vers des fonctions de rappel qui peuvent être utilisées par les fonctions CSP.
PLAINTEXTKEYBLOB Contient des informations d’en-tête de paramètre pour une clé en texte clair.

 

WinTrust Structures

Les structures suivantes sont utilisées avec la fonction WinVerifyTrust .

Structure Description
CRYPT_PROVIDER_DEFUSAGE Utilisé par la fonction WintrustGetDefaultForUsage pour récupérer les informations de rappel pour l’utilisation par défaut d’un fournisseur.
CRYPT_PROVIDER_REGDEFUSAGE Utilisé par la fonction WintrustAddDefaultForUsage pour inscrire des informations de rappel sur l’utilisation par défaut d’un fournisseur.
SPC_INDIRECT_DATA_CONTENT Stocke le digest et d’autres attributs d’un fichier signé Authenticode.
WINTRUST_BLOB_INFO Utilisé lors de l’appel de WinVerifyTrust pour vérifier un objet BLOB de mémoire.
WINTRUST_CATALOG_INFO Utilisé lors de l’appel de WinVerifyTrust pour vérifier un membre d’un catalogue Microsoft.
WINTRUST_CERT_INFO Utilisé lors de l’appel de WinVerifyTrust pour vérifier un CERT_CONTEXT.
WINTRUST_DATA Utilisé lors de l’appel de WinVerifyTrust pour transmettre les informations nécessaires aux fournisseurs d’approbation
WINTRUST_FILE_INFO Utilisé lors de l’appel de WinVerifyTrust pour vérifier un fichier individuel.
WINTRUST_SGNR_INFO Utilisé lors de l’appel de WinVerifyTrust pour vérifier une structure CMSG_SIGNER_INFO .

 

SIP Structures

Les structures suivantes sont utilisées par le package d’interface sujet (fonctions SIPP.

Structure Description
SIP_ADD_NEWPROVIDER Définit un SIP.
SIP_CAP_SET Définit les fonctionnalités d’un SIP.
SIP_DISPATCH_INFO Contient un ensemble de pointeurs vers les fonctions SIP.
SIP_INDIRECT_DATA Contient un résumé des informations de sujet hachées.
SIP_SUBJECTINFO Spécifie les informations d’objet SIP.