Strutture di crittografia
Le strutture seguenti vengono usate dalle funzioni di crittografia. Le strutture di crittografia vengono classificate in base all'utilizzo come indicato di seguito:
- Strutture CryptXML
- Strutture di crittografia generali
- Strutture di certificati comuni
- Strutture di estensione del certificato X.509
- Strutture dei messaggi
- Strutture di supporto OID
- Strutture della catena di certificati
- Strutture CSP
- Strutture WinTrust
- Strutture SIP
Strutture CryptXML
Le strutture seguenti vengono usate dalle funzioni CryptXML.
Struttura | Descrizione |
---|---|
CRYPT_XML_ALGORITHM | Specifica l'algoritmo utilizzato per firmare o trasformare il messaggio. |
CRYPT_XML_ALGORITHM_INFO | Contiene informazioni sull'algoritmo. |
CRYPT_XML_BLOB | Contiene una matrice arbitraria di byte. |
CRYPT_XML_CRYPTOGRAPHIC_INTERFACE | Passato al puntatore alla funzione CryptXmlDllGetInterface per esporre le funzioni CryptXML implementate. |
CRYPT_XML_DATA_BLOB | Contiene dati con codifica XML. |
CRYPT_XML_DATA_PROVIDER | Specifica l'interfaccia per il provider di dati XML. |
CRYPT_XML_DOC_CTXT | Definisce le informazioni sul contesto del documento. |
CRYPT_XML_ISSUER_SERIAL | Contiene una coppia di numeri distinti distinti rilasciati da X.509 . |
CRYPT_XML_KEY_DSA_KEY_VALUE | Definisce un valore di chiave DSA ( Digital Signature Algorithm ). La struttura CRYPT_XML_KEY_DSA_KEY_VALUE viene utilizzata come elemento dell'unione dei valori chiave nella struttura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_ECDSA_KEY_VALUE | Definisce un valore di chiave ECDSA (Elliptic Curve Digital Signature Algorithm). La struttura CRYPT_XML_KEY_ECDSA_KEY_VALUE viene utilizzata come elemento dell'unione dei valori chiave nella struttura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_INFO | Incapsula i dati delle informazioni chiave. |
CRYPT_XML_KEY_INFO_ITEM | Incapsula i dati delle informazioni chiave che corrispondono a un elemento KeyInfo . L'elemento KeyInfo consente al destinatario di ottenere la chiave necessaria per convalidare la firma. |
CRYPT_XML_KEY_RSA_KEY_VALUE | Definisce un valore di chiave RSA. La struttura CRYPT_XML_KEY_RSA_KEY_VALUE viene utilizzata come elemento dell'unione dei valori chiave nella struttura CRYPT_XML_KEY_VALUE . |
CRYPT_XML_KEY_VALUE | Contiene una singola chiave pubblica che può essere utile per convalidare la firma. |
CRYPT_XML_KEYINFO_PARAM | Viene utilizzata dalla funzione CryptXmlSign per specificare i membri dell'elemento KeyInfo da codificare. |
CRYPT_XML_OBJECT | Descrive un elemento Object nella firma. |
CRYPT_XML_PROPERTY | Contiene informazioni su una proprietà CryptXML. |
CRYPT_XML_REFERENCE | Contiene informazioni utilizzate per popolare l'elemento Reference . |
CRYPT_XML_REFERENCES | Definisce una matrice di strutture CRYPT_XML_REFERENCE . |
CRYPT_XML_SIGNATURE | Contiene informazioni utilizzate per popolare l'elemento Signature . |
CRYPT_XML_SIGNED_INFO | Restituisce informazioni sullo stato di convalida della firma, informazioni sullo stato di riepilogo su un elemento SignedInfo o informazioni sullo stato di riepilogo su una matrice di elementi Reference . |
CRYPT_XML_TRANSFORM_CHAIN_CONFIG | Definisce le trasformazioni definite dall'applicazione che sono consentite per l'uso nella firma digitale XML. |
CRYPT_XML_TRANSFORM_INFO | Contiene informazioni utilizzate durante l'applicazione della trasformazione dei dati. |
CRYPT_XML_X509DATA | Rappresenta la sequenza di scelte nell'elemento X509Data . |
CRYPT_XML_X509DATA_ITEM | Rappresenta i dati X.509 che devono essere codificati in un elemento denominato X509Data. |
Strutture di crittografia generali
Le strutture seguenti vengono usate dalle funzioni di crittografia di base.
Struttura | Descrizione |
---|---|
CMS_DH_KEY_INFO | Usato con il parametro KP_CMS_DH_KEY_INFO nella funzione CryptSetKeyParam per contenere informazioni sulla chiave Diffie-Hellman . |
CMS_KEY_INFO | Questa struttura non viene utilizzata. |
CRYPT_AES_128_KEY_STATE | Specifica le informazioni sulla chiave simmetrica a 128 bit per una crittografia AES ( Advanced Encryption Standard ). |
CRYPT_AES_256_KEY_STATE | Specifica le informazioni sulla chiave simmetrica a 256 bit per una crittografia AES. |
CRYPT_ALGORITHM_IDENTIFIER | Contiene l'identificatore di oggetto (OID) dell'algoritmo e gli eventuali parametri necessari per tale algoritmo. |
CRYPT_ATTRIBUTE | Specifica un attributo con uno o più valori. |
CRYPT_ATTRIBUTE_TYPE_VALUE | Contiene un singolo valore di attributo. |
CRYPT_ATTRIBUTES | Contiene una matrice di attributi. |
CRYPT_BIT_BLOB | Contiene una matrice di byte. |
CRYPT_BLOB_ARRAY | Contiene una matrice di strutture CRYPT_DATA_BLOB . |
CRYPT_CONTENT_INFO | Contiene dati codificati nel formato di dati ContentInfo PKCS #7. |
CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY | Contiene informazioni che rappresentano la sequenza di certificati Netscape. |
CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA | Usato con la funzione CryptInstallDefaultContext per contenere una matrice di stringhe di identificatori di oggetto. |
CRYPT_ECC_CMS_SHARED_INFO | Rappresenta le informazioni sulla chiave di crittografia della chiave quando si utilizza la crittografia a curva ellittica (ECC) nel tipo di contenuto EnvelopedData (Cryptographic Message Syntax, CMS). |
CRYPT_ENCRYPTED_PRIVATE_KEY_INFO | Contiene le informazioni di una chiave privata PKCS #8 crittografata. |
CRYPT_ENROLLMENT_NAME_VALUE_PAIR | Questa struttura viene usata per creare richieste di certificato per conto di un utente. |
CRYPT_INTEGER_BLOB | Contiene i dati di vari tipi di oggetti binari di grandi dimensioni in nomi appropriati per il tipo. |
CRYPT_KEY_LIMITS | Supporta la funzione CryptGetLocalKeyLimits non implementata e non viene usata. Verrà rimosso in una versione futura di Wincrypt.h. |
CRYPT_KEY_PROV_INFO | Contiene campi passati come argomenti a CryptAcquireContext per acquisire un handle in un contenitore di chiavi specifico all'interno di un provider di servizi di crittografia specifico oppure per creare o eliminare definitivamente un contenitore di chiavi. |
CRYPT_KEY_PROV_PARAM | Contiene dati da passare come argomenti a CryptSetProvParam. |
CRYPT_KEY_SIGN_MESSAGE_PARA | Contiene informazioni sul CSP e sugli algoritmi usati per firmare un messaggio. |
CRYPT_KEY_VERIFY_MESSAGE_PARA | Contiene informazioni necessarie per verificare i messaggi firmati senza un certificato per il firmatario. |
CRYPT_MASK_GEN_ALGORITHM | Identifica l'algoritmo usato per generare una maschera di firma RSA PKCS #1 v2.1. |
CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE | Contiene puntatori alle funzioni implementate da un provider di percorsi di oggetti. |
CRYPT_PKCS8_EXPORT_PARAMS | Contiene informazioni che identificano una chiave privata e un puntatore a una funzione di callback. |
CRYPT_PKCS8_IMPORT_PARAMS | Contiene una chiave privata PKCS #8 e due puntatori alle funzioni di callback. |
CRYPT_PKCS12_PBE_PARAMS | Contiene parametri usati per creare una chiave di crittografia, un vettore di inizializzazione (IV) o una chiave MAC ( Message Authentication Code ) per un algoritmo di crittografia basato su password PKCS #12 . |
CRYPT_PRIVATE_KEY_INFO | Contiene le informazioni di una chiave privata PKCS #8. |
CRYPT_PSOURCE_ALGORITHM | Identifica l'algoritmo e (facoltativamente) il valore dell'etichetta per una crittografia della chiave RSAES-OAEP. |
CRYPT_RETRIEVE_AUX_INFO | Contiene informazioni facoltative sulla sincronizzazione dell'ora da passare alla funzione CryptRetrieveObjectByUrl . |
CRYPT_RSA_SSA_PSS_PARAMETERS | Contiene i parametri per una firma RSA PKCS #1 v2.1. |
CRYPT_RSAES_OAEP_PARAMETERS | Contiene i parametri per una crittografia della chiave RSAES-OAEP. |
CRYPT_SEQUENCE_OF_ANY | Contiene un elenco arbitrario di BLOB codificati. |
CRYPT_SMART_CARD_ROOT_INFO | Contiene gli ID di smart card e sessione associati a un contesto di certificato. |
CRYPT_TIME_STAMP_REQUEST_INFO | Questa struttura viene utilizzata per il timestamp. |
CRYPT_URL_INFO | Contiene informazioni sui raggruppamenti di URL. |
CRYPT_X942_OTHER_INFO | Contiene informazioni aggiuntive sulla generazione di chiavi. |
CRYPTNET_URL_CACHE_FLUSH_INFO | Contiene informazioni sulla scadenza usate dal servizio Cache URL (CUC) di Cryptnet per mantenere una voce della cache degli URL. |
CRYPTNET_URL_CACHE_PRE_FETCH_INFO | Contiene informazioni sull'aggiornamento usate dal servizio Cache URL (CUC) di Cryptnet per mantenere una voce della cache degli URL. |
CRYPTNET_URL_CACHE_RESPONSE_INFO | Contiene informazioni sulla risposta usate dal servizio Cache URL (CUC) di Cryptnet per mantenere una voce della cache degli URL. |
CRYPT_INTEGER_BLOB | Questa struttura viene utilizzata per una matrice arbitraria di byte. |
CRYPTPROTECT_PROMPTSTRUCT | Fornisce il testo di un prompt e informazioni su quando e dove deve essere visualizzato il prompt quando si usano le funzioni CryptProtectData e CryptUnprotectData . |
CRYPTUI_INITDIALOG_STRUCT | Supporta la struttura CRYPTUI_VIEWCERTIFICATE_STRUCT . |
CRYPTUI_SELECTCERTIFICATE_STRUCT | Contiene informazioni sulla finestra di dialogo visualizzata dalla funzione CryptUIDlgSelectCertificate . |
CRYPTUI_VIEWCERTIFICATE_STRUCT | Contiene informazioni su un certificato da visualizzare. Viene usato nella funzione CryptUIDlgViewCertificate . |
CRYPTUI_VIEWSIGNERINFO_STRUCT | Contiene informazioni per la funzione CryptUIDlgViewSignerInfo . |
CRYPTUI_WIZ_EXPORT_CERTCONTEXT_INFO | Contiene informazioni che controllano l'operazione della funzione CryptUIWizExport quando un certificato è l'oggetto esportato. |
CRYPTUI_WIZ_EXPORT_INFO | Contiene informazioni che controllano l'operazione della funzione CryptUIWizExport . |
CRYPTUI_WIZ_IMPORT_SRC_INFO | Contiene l'oggetto da importare nella funzione CryptUIWizImport . |
DHPRIVKEY_VER3 | Contiene informazioni specifiche per la chiave privata specifica contenuta nel BLOB della chiave. |
DHPUBKEY | Contiene informazioni specifiche per la particolare Diffie-Hellman chiave pubblica contenuta nel BLOB della chiave. |
DHPUBKEY_VER3 | Contiene informazioni specifiche per la chiave pubblica specifica contenuta nel BLOB della chiave. |
BLOB di chiave privata Diffie-Hellman versione 3 | Usato per esportare e importare informazioni su una chiave privata DH. |
BLOB a chiave pubblica Diffie-Hellman versione 3 | Usato per esportare e importare informazioni su una chiave pubblica DH. |
BLOB di chiavi private DSS versione 3 | Usato per esportare e importare informazioni su una chiave privata DH. |
BLOB con chiave pubblica DSS versione 3 | Usato per esportare e importare informazioni su una chiave pubblica DH. |
DSSPRIVKEY_VER3 | Contiene informazioni specifiche per la chiave privata specifica contenuta nel BLOB della chiave. |
DSSPUBKEY | Contiene informazioni specifiche per la chiave pubblica specifica contenuta nel BLOB della chiave. |
DSSPUBKEY_VER3 | Contiene informazioni specifiche per la chiave pubblica specifica contenuta nel BLOB della chiave. |
DSSSEED | Contiene i valori di inizializzazione e contatore che possono essere usati per verificare i primi della chiave pubblica DSS. |
HMAC_INFO | Specifica l'algoritmo hash e le stringhe interne ed esterne da usare per calcolare l'hash HMAC ( Hash-Based Message Authentication Code ). |
KEYSVC_BLOB | Definisce un BLOB del servizio chiavi. |
KEYSVC_UNICODE_STRING | Definisce una stringa Unicode del servizio chiave. |
OCSP_BASIC_RESPONSE_ENTRY | Contiene lo stato corrente del certificato per un singolo certificato. |
OCSP_BASIC_RESPONSE_INFO | Contiene una risposta OCSP di base come specificato da RFC 2560. |
OCSP_BASIC_REVOKED_INFO | Contiene il motivo per cui un certificato è stato revocato. |
OCSP_BASIC_SIGNED_RESPONSE_INFO | Contiene una risposta OCSP di base con una firma. |
OCSP_CERT_ID | Contiene informazioni per identificare un certificato in una richiesta o una risposta OCSP. |
OCSP_REQUEST_ENTRY | Contiene informazioni su un singolo certificato in una richiesta OCSP. |
OCSP_REQUEST_INFO | Contiene informazioni per una richiesta OCSP come specificato da RFC 2560. |
OCSP_RESPONSE_INFO | Indica l'esito positivo o negativo della richiesta OCSP corrispondente. Per le richieste riuscite, contiene il tipo e il valore delle informazioni sulla risposta. |
OCSP_SIGNATURE_INFO | Contiene una firma per una richiesta o una risposta OCSP. |
OCSP_SIGNED_REQUEST_INFO | Contiene informazioni per una richiesta OCSP con informazioni facoltative sulla firma. |
PROV_ENUMALGS | Restituito dalle chiamate a CryptGetProvParam o CPGetProvParam. |
PROV_ENUMALGS_EX | Restituito dalle chiamate a CryptGetProvParam o CPGetProvParam. |
PUBLICKEYSTRUC | Indica il tipo DI BLOB di una chiave e l'algoritmo utilizzato dalla chiave. |
ROOT_INFO_LUID | Contiene un identificatore univoco locale (LUID) per le informazioni radice della smart card crittografica. |
RSAPUBKEY | Contiene informazioni specifiche per la chiave pubblica specifica contenuta nel BLOB della chiave. |
SCHANNEL_ALG | Contiene informazioni sull'algoritmo e sulle dimensioni delle chiavi. |
SIGNER_ATTR_AUTHCODE | Specifica gli attributi per una firma Authenticode . |
SIGNER_BLOB_INFO | Specifica un BLOB da firmare. |
SIGNER_CERT | Specifica un certificato utilizzato per firmare un documento. Il certificato può essere archiviato in un file SPC ( Software Publisher Certificate ) o in un archivio certificati. |
SIGNER_CERT_STORE_INFO | Specifica l'archivio certificati utilizzato per firmare un documento. |
SIGNER_CONTEXT | Contiene un BLOB firmato. |
SIGNER_FILE_INFO | Specifica un file da firmare. |
SIGNER_PROVIDER_INFO | Specifica le informazioni sul provider di servizi di configurazione e sulla chiave privata usate per creare una firma digitale. |
SIGNER_SIGNATURE_INFO | Contiene informazioni su una firma digitale. |
SIGNER_SPC_CHAIN_INFO | Specifica un certificato SPC ( Software Publisher Certificate ) e una catena di certificati utilizzata per firmare un documento. |
SIGNER_SUBJECT_INFO | Specifica un oggetto da firmare. |
Strutture di certificati comuni
Le strutture seguenti vengono usate da molte delle funzioni del certificato.
Struttura | Descrizione |
---|---|
CERT_BIOMETRIC_DATA | Contiene informazioni sui dati biometrici. |
CERT_BIOMETRIC_EXT_INFO | Contiene un set di informazioni biometriche. |
CERT_CONTEXT | Contiene sia le rappresentazioni codificate che decodificate di un certificato. |
CERT_CRL_CONTEXT_PAIR | Contiene un contesto di certificato e un contesto CRL associato. |
CERT_DH_PARAMETERS | Contiene parametri associati a un algoritmo di chiave pubblica Diffie-Hellman . |
CERT_DSS_PARAMETERS | Contiene parametri associati a un algoritmo di chiave pubblica DSS. |
CERT_ECC_SIGNATURE | Contiene i valori r e s per una firma ECDSA (Elliptic Curve Digital Signature Algorithm). |
CERT_EXTENSION | Contiene le informazioni di estensione per un certificato, un elenco di revoche di certificati (CRL) o un elenco di certificati attendibili (CTL). |
CERT_EXTENSIONS | Contiene una matrice di estensioni. |
CERT_GENERAL_SUBTREE | Utilizzata nella struttura CERT_NAME_CONSTRAINTS_INFO , questa struttura fornisce l'identità di un certificato che può essere incluso o escluso. |
CERT_HASHED_URL | Contiene un URL con hash. |
CERT_ID | Usato come mezzo flessibile per identificare in modo univoco un certificato. |
CERT_INFO | Contiene le informazioni di un certificato. |
CERT_KEY_CONTEXT | Contiene dati per il membro pvData di un membro Value della struttura CERT_EXTENSION associata a una proprietà CERT_KEY_CONTEXT_PROP_ID. |
CERT_KEYGEN_REQUEST_INFO | Contiene informazioni archiviate nella richiesta Netscape Keygen. |
CERT_LDAP_STORE_OPENED_PARA | Usato con la funzione CertOpenStore quando il provider di CERT_STORE_PROV_LDAP viene specificato usando il flag CERT_LDAP_STORE_OPENED_FLAG per specificare sia la sessione LDAP esistente da usare per eseguire la query che la stringa di query LDAP. |
CERT_LOGOTYPE_AUDIO | Contiene informazioni su un logotipo audio. |
CERT_LOGOTYPE_AUDIO_INFO | Contiene informazioni più dettagliate su un logotipo audio. |
CERT_LOGOTYPE_DATA | Contiene i dati del tipo di logo. |
CERT_LOGOTYPE_DETAILS | Contiene informazioni aggiuntive su un logotype. |
CERT_LOGOTYPE_EXT_INFO | Contiene un set di informazioni sul tipo di logo. |
CERT_LOGOTYPE_IMAGE | Contiene informazioni sul tipo di logotipo di un'immagine. |
CERT_LOGOTYPE_IMAGE_INFO | Contiene informazioni più dettagliate su un logotipo di immagine. |
CERT_LOGOTYPE_INFO | Contiene informazioni sui dati del tipo di logo. |
CERT_LOGOTYPE_REFERENCE | Contiene informazioni di riferimento sul tipo di logo. |
CERT_NAME_CONSTRAINTS_INFO | Contiene informazioni sui certificati esplicitamente consentiti o esclusi dall'attendibilità. |
CERT_NAME_INFO | Contiene nomi dell'oggetto o dell'autorità emittente. Le informazioni sono rappresentate come una matrice di strutture CERT_RDN . |
CERT_NAME_VALUE | Contiene un valore di attributo rdn (Distinguished Name) relativo . |
CERT_OTHER_LOGOTYPE_INFO | Contiene informazioni sui tipi di logo non predefiniti. |
CERT_PAIR | Contiene un certificato e la relativa coppia di certificati incrociati. |
CERT_PHYSICAL_STORE_INFO | Contiene informazioni sugli archivi certificati fisici. |
CERT_POLICY_CONSTRAINTS_INFO | Contiene i criteri stabiliti per l'accettazione dei certificati come attendibili. |
CERT_POLICY_MAPPING | Contiene un mapping tra gli ID dei criteri di dominio dell'autorità di certificazione e i criteri di dominio soggetto. |
CERT_POLICY_MAPPINGS_INFO | Fornisce il mapping tra gli ID dei criteri di due domini. |
CERT_PUBLIC_KEY_INFO | Contiene una chiave pubblica e il relativo algoritmo. |
CERT_QC_STATEMENT | Rappresenta una singola istruzione in una sequenza di una o più istruzioni per l'inclusione in un'estensione delle istruzioni CERTIFICATE (QC) qualificato. |
CERT_QC_STATEMENTS_EXT_INFO | Contiene una sequenza di una o più istruzioni che costituiscono l'estensione delle istruzioni CERTIFICATE (QC) qualificato per un QC. |
CERT_RDN | Contiene un nome distinto relativo (RDN) costituito da una matrice di strutture CERT_RDN_ATTR . |
CERT_RDN_ATTR | Contiene un singolo attributo di un nome distinto relativo (RDN). |
CERT_REQUEST_INFO | Contiene informazioni per una richiesta di certificato. |
CERT_REVOCATION_CRL_INFO | Contiene informazioni aggiornate da un gestore del tipo di revoca CRL. |
CERT_REVOCATION_PARA | Questa struttura può essere passata facoltativamente a CertVerifyRevocation per facilitare la ricerca dell'autorità emittente del contesto da verificare. |
CERT_REVOCATION_STATUS | Contiene informazioni sullo stato di revoca del certificato. |
CERT_SELECT_STRUCT | Contiene i criteri in base ai quali selezionare i certificati presentati in una finestra di dialogo di selezione del certificato. Questa struttura viene usata nella funzione CertSelectCertificate . |
CERT_SIGNED_CONTENT_INFO | Contiene contenuto codificato da firmare e un BLOB per contenere la firma. |
CERT_STORE_PROV_FIND_INFO | Questa struttura viene usata da molte delle funzioni di callback del provider di punti vendita. |
CERT_STORE_PROV_INFO | Contiene informazioni restituite da CertDllOpenStoreProv installato quando un archivio viene aperto con CertOpenStore. |
CERT_STRONG_SIGN_PARA | Contiene parametri usati per verificare la presenza di firme complesse su certificati, CRL, repository OCSP e messaggi PKCS #7. |
CERT_STRONG_SIGN_SERIALIZED_INFO | Contienel'algoritmo hash dell'algoritmo di firma e le coppie dilunghezza bitdell'algoritmo// di chiave pubblica che possono essere usate per la firma avanzata. |
CERT_SUBJECT_INFO_ACCESS | Si tratta di un sinonimo della struttura CERT_AUTHORITY_INFO_ACCESS . |
CERT_SYSTEM_STORE_INFO | Contiene informazioni utilizzate dalle funzioni che funzionano con gli archivi di sistema. |
CERT_SYSTEM_STORE_RELOCATE_PARA | Contiene dati da passare a CertOpenStore quando il parametro dwFlags di tale funzione è impostato su CERT_SYSTEM_STORE_RELOCATE_FLAG. |
CERT_TEMPLATE_EXT | Questa struttura è un modello di certificato. |
CERT_X942_DH_PARAMETERS | Contiene parametri associati a un algoritmo di chiave pubblica Diffie-Hellman. |
CERT_X942_DH_VALIDATION_PARAMS | Questa struttura è facoltativamente a cui fa riferimento un membro della struttura CERT_X942_DH_PARAMETERS e contiene informazioni di inizializzazione aggiuntive. |
CMC_ADD_ATTRIBUTES_INFO | Contiene gli attributi del certificato da aggiungere a un certificato. |
CMC_ADD_EXTENSIONS_INFO | Contiene gli attributi del controllo dell'estensione del certificato da aggiungere a un certificato. |
CMC_DATA_INFO | Questa struttura fornisce un mezzo per comunicare parti diverse di informazioni con tag. |
CMC_PEND_INFO | Questa struttura è un possibile membro di una struttura CMC_STATUS_INFO . |
CMC_RESPONSE_INFO | Questa struttura fornisce un mezzo per comunicare parti diverse di informazioni con tag. |
CMC_STATUS_INFO | Contiene informazioni sullo stato dei messaggi di gestione dei certificati tramite CMS. |
CMC_TAGGED_ATTRIBUTE | Questa struttura viene utilizzata nelle strutture CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_CERT_REQUEST | Questa struttura viene utilizzata nella struttura CMC_TAGGED_REQUEST . |
CMC_TAGGED_CONTENT_INFO | Questa struttura viene utilizzata nelle strutture CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_OTHER_MSG | Questa struttura viene utilizzata nelle strutture CMC_DATA_INFO e CMC_RESPONSE_INFO . |
CMC_TAGGED_REQUEST | Questa struttura viene utilizzata nelle strutture CMC_DATA_INFO per richiedere un certificato. |
CRL_CONTEXT | Contiene sia le rappresentazioni codificate che decodificate di un CRL. |
CRL_ENTRY | Contiene informazioni su un singolo certificato revocato. È un membro di una struttura CRL_INFO . |
CRL_INFO | Contiene le informazioni di un elenco di revoche di certificati (CRL). |
CRL_ISSUING_DIST_POINT | Contiene informazioni sui tipi di certificati elencati in un elenco CRL. |
CROSS_CERT_DIST_POINTS_INFO | Questa struttura fornisce informazioni utilizzate per aggiornare certificati incrociati dinamici. |
CTL_ANY_SUBJECT_INFO | Contiene un oggetto SubjectAlgorithm a cui trovare una corrispondenza nel CTL e subjectIdentifier da trovare in una delle voci CTL nelle chiamate a CertFindSubjectInCTL. |
CTL_CONTEXT | Contiene sia le rappresentazioni codificate che decodificate di un CTL. |
CTL_ENTRY | Questa struttura è un elemento di un elenco di certificati attendibili (CTL). |
CTL_FIND_SUBJECT_PARA | Contiene i dati usati da CertFindCTLInStore con dwFindType di CTL_FIND_SUBJECT per trovare un elenco di certificati attendibili (CTL). |
CTL_FIND_USAGE_PARA | Questa struttura è un membro della struttura CTL_FIND_SUBJECT_PARA e viene usata da CertFindCTLInStore. |
CTL_INFO | Contiene le informazioni archiviate in un elenco di certificati attendibili (CTL). |
CTL_MODIFY_REQUEST | Contiene una richiesta di modifica di un elenco di certificati attendibili. Questa struttura viene usata nella funzione CertModifyCertificatesToTrust . |
CTL_USAGE | Contiene una matrice di identificatori di oggetto (OID) per le estensioni CTL ( Certificate Trust List ). |
CTL_VERIFY_USAGE_PARA | Contiene i parametri usati da CertVerifyCTLUsage per stabilire la validità dell'utilizzo di un elenco di scopi consentiti. |
CTL_VERIFY_USAGE_STATUS | Contiene informazioni su un elenco di certificati attendibili (CTL) restituito da CertVerifyCTLUsage. |
Strutture di estensione del certificato X.509
Le strutture seguenti sono associate alle strutture di CERT_EXTENSION X.509.
Struttura | Descrizione |
---|---|
CERT_ACCESS_DESCRIPTION | Questa struttura è un membro di una struttura CERT_AUTHORITY_INFO_ACCESS . |
CERT_ALT_NAME_ENTRY | Contiene un nome alternativo in una delle varie forme di nome. |
CERT_ALT_NAME_INFO | Usato nelle estensioni di codifica e decodifica per certificati soggetto o autorità di certificazione, elenco di revoche di certificati (CRL) e elenco di certificati attendibili (CRL). |
CERT_AUTHORITY_INFO_ACCESS | Rappresenta l'accesso alle informazioni dell'autorità e le estensioni del certificato di accesso alle informazioni dell'interessato e specifica come accedere a informazioni e servizi aggiuntivi per l'oggetto o l'autorità emittente del certificato. |
CERT_AUTHORITY_KEY_ID_INFO | Identifica la chiave usata per firmare un certificato o un CRL. |
CERT_AUTHORITY_KEY_ID2_INFO | Identifica la chiave usata per firmare un certificato o un CRL. Differisce dalla struttura CERT_AUTHORITY_KEY_ID_INFO in quanto l'autorità emittente del certificato è un CERT_ALT_NAME_INFO anziché un CERT_NAME_BLOB. |
CERT_BASIC_CONSTRAINTS_INFO | Contiene informazioni che indicano se l'oggetto certificato può fungere da CA, un'entità finale o entrambi. |
CERT_BASIC_CONSTRAINTS2_INFO | Contiene informazioni che indicano se l'oggetto certificato può fungere da CA o da entità finale. |
CERT_KEY_ATTRIBUTES_INFO | Contiene informazioni aggiuntive facoltative sulla chiave pubblica certificata. |
CERT_KEY_USAGE_RESTRICTION_INFO | Contiene restrizioni imposte sull'utilizzo della chiave pubblica di un certificato. |
CERT_POLICIES_INFO | Contiene una matrice di CERT_POLICY_INFO. |
CERT_POLICY_ID | Contiene un elenco di criteri di certificato supportati espressamente dal certificato, insieme alle informazioni del qualificatore facoltativo relative a questi criteri. |
CERT_POLICY_INFO | Contiene un identificatore di oggetto (OID) che specifica un criterio e una matrice facoltativa di qualificatori di criteri. |
CERT_POLICY_QUALIFIER_INFO | Contiene un identificatore di oggetto (OID) che specifica le informazioni supplementari specifiche del qualificatore e del qualificatore. |
CERT_PRIVATE_KEY_VALIDITY | Indica un intervallo di tempo valido per la chiave privata corrispondente alla chiave pubblica di un certificato. |
CRL_DIST_POINT | Identifica un singolo punto di distribuzione CRL a cui un utente del certificato può fare riferimento per determinare se i certificati sono stati revocati. |
CRL_DIST_POINT_NAME | Identifica una posizione da cui è possibile ottenere il CRL. |
CRL_DIST_POINTS_INFO | Contiene un elenco di punti di distribuzione CRL a cui un utente del certificato può fare riferimento per determinare se il certificato è stato revocato. |
Queste strutture possono essere codificate nel membro Value di una struttura CERT_EXTENSION usando le funzioni CryptEncodeObject e CryptEncodeObjectEx . Vengono creati e restituiti dalle funzioni CryptDecodeObject e CryptDecodeObjectEx quando il membro Value di una struttura CERT_EXTENSION viene decodificato.
La struttura codificata o creata dipende dal membro stringa pszObjId della struttura CERT_EXTENSION .
Le costanti e gli URI predefiniti dell'estensione correnti insieme alla struttura associata a ognuno sono illustrati nella tabella seguente.
Nota
La costante predefinita (colonna 1) e l'OID corrispondente (colonna 2) possono essere usati in modo intercambiabile.
Costante predefinita | Identificatore di oggetto (OID) | Struttura dei dati |
---|---|---|
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 – Or – 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 |
Nessuno | szOID_POLICY_MAPPINGS | Non implementato |
Nessuno | szOID_SUBJECT_DIR_ATTRS | Non implementato |
Strutture dei messaggi
Le strutture seguenti vengono usate dalle funzioni di messaggio crittografico.
Struttura | Descrizione |
---|---|
CMSG_CMS_RECIPIENT_INFO | Questa struttura viene usata con la funzione CryptMsgGetParam per ottenere informazioni su un trasporto chiave, un contratto chiave o un destinatario della busta dell'elenco di posta elettronica. |
CMSG_CMS_SIGNER_INFO | Questa struttura contiene il contenuto dei messaggi firmati o firmati definiti signerInfo. |
CMSG_CNG_CONTENT_DECRYPT_INFO | Contiene tutte le informazioni pertinenti passate tra le funzioni installabili di CryptMsgControl e OID per l'importazione e la decrittografia di un'API di crittografia: chiave di crittografia del contenuto di nuova generazione (CNG). |
CMSG_CONTENT_ENCRYPT_INFO | Contiene informazioni condivise tra le funzioni installabili PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY, PFN_CMSG_EXPORT_KEY_TRANS, PFN_CMSG_EXPORT_KEY_AGREE e PFN_CMSG_EXPORT_MAIL_LISTidentificatore di oggetto (OID) usate per la crittografia ed esportazione di una chiave di crittografia del contenuto. |
CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA | Questa struttura viene utilizzata per aggiungere un attributo non autenticato a un segno di un messaggio firmato. |
CMSG_CTRL_DECRYPT_PARA | Questa struttura contiene informazioni usate per decrittografare un messaggio busto per un destinatario del trasporto delle chiavi. Questa struttura viene passata a CryptMsgControl se il parametro dwCtrlType è CMSG_CTRL_DECRYPT. |
CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA | Questa struttura viene utilizzata per eliminare un attributo non autenticato di un segno di un messaggio firmato. |
CMSG_CTRL_KEY_AGREE_DECRYPT_PARA | Questa struttura contiene informazioni su un destinatario del contratto chiave. |
CMSG_CTRL_KEY_TRANS_DECRYPT_PARA | Questa struttura contenente informazioni su un destinatario del messaggio di trasporto chiave. |
CMSG_CTRL_MAIL_LIST_DECRYPT_PARA | Questa struttura contiene informazioni su un destinatario del messaggio di elenco di posta elettronica. |
CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA | Questa struttura contiene informazioni usate per verificare una firma del messaggio. Contiene l'indice del firmatario e la chiave pubblica di firma. La chiave pubblica del firmatario può essere la struttura CERT_PUBLIC_KEY_INFOdel firmatario, il contesto del certificato o il contesto della catena. |
CMSG_ENVELOPED_ENCODE_INFO | Questa struttura contiene informazioni necessarie per codificare un messaggio in busto. Viene passato a CryptMsgOpenToEncode se dwMsgType è CMSG_ENVELOPED. |
CMSG_ENVELOPED_HASHED_INFO | Questa struttura viene usata con messaggi hash. Viene passato a CryptMsgOpenToEncode se dwMsgType è CMSG_ENVELOPED. |
CMSG_KEY_AGREE_ENCRYPT_INFO | Contiene informazioni di crittografia applicabili a tutti i destinatari del contratto chiave di un messaggio busto. |
CMSG_KEY_AGREE_KEY_ENCRYPT_INFO | Contiene la chiave crittografata per un destinatario del contratto di chiave di un messaggio busto. |
CMSG_KEY_TRANS_ENCRYPT_INFO | Contiene informazioni di crittografia per un destinatario di trasporto chiave di dati in busta. |
CMSG_MAIL_LIST_ENCRYPT_INFO | Contiene informazioni di crittografia per un destinatario dell'elenco di indirizzi di dati in busta. |
CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO | Questa struttura contiene informazioni su un destinatario di messaggi usando la gestione delle chiavi del contratto di chiave. |
CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO | Questa struttura contiene informazioni di trasporto chiave codificate per un destinatario del messaggio. |
CMSG_KEY_TRANS_RECIPIENT_INFO | Questa struttura contiene informazioni usate negli algoritmi di trasporto chiave. |
CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO | Questa struttura viene usata con chiavi simmetriche distribuite in precedenza per decrittografare la chiave di crittografia della chiave di contenuto (KEK). |
CMSG_MAIL_LIST_RECIPIENT_INFO | Questa struttura contiene informazioni usate per le chiavi simmetriche simmetriche distribuite in precedenza (KEK). |
CMSG_RC2_AUX_INFO | Questa struttura contiene la lunghezza del bit della chiave per gli algoritmi di crittografia RC2. Il membro pvEncryptionAuxInfo in CMSG_ENVELOPED_ENCODE_INFOpuò essere impostato per puntare a un'istanza di questa struttura. |
CMSG_RC4_AUX_INFO | Questa struttura contiene la lunghezza del bit della chiave per gli algoritmi di crittografia RC4. Il membro pvEncryptionAuxInfo in CMSG_ENVELOPED_ENCODE_INFOpuò essere impostato per puntare a un'istanza di questa struttura. |
CMSG_RECIPIENT_ENCODE_INFO | Questa struttura contiene informazioni sul tipo di gestione della chiave di crittografia del contenuto del destinatario del messaggio. |
CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO | Questa struttura contiene informazioni su un ricevitore di messaggi usato per decrittografare la chiave di sessione necessaria per decrittografare il contenuto del messaggio. Questa struttura viene usata con messaggi di basso livello di CMS usando uno dei metodi di gestione delle chiavi. |
CMSG_RECIPIENT_ENCRYPTED_KEY_INFO | Questa struttura contiene informazioni usate per un singolo destinatario del contratto di chiave. |
CMSG_SIGNED_ENCODE_INFO | Questa struttura contiene informazioni da passare a CryptMsgOpenToEncode se dwMsgType è CMSG_SIGNED. |
CMSG_SIGNER_ENCODE_INFO | Questa struttura contiene informazioni sul firmatario. Viene passato a CryptMsgCountersign, CryptMsgCountersignEncoded e facoltativamente a CryptMsgOpenToEncode come membro della struttura CMSG_SIGNED_ENCODE_INFO , se il parametro dwMsgType è CMSG_SIGNED. |
CMSG_SIGNER_INFO | Questa struttura contiene il contenuto di PKCS #7 definito SignerInfo nei messaggi firmati. |
CMSG_SP3_COMPATIBLE_AUX_INFO | Questa struttura contiene informazioni necessarie per la crittografia compatibile con SP3. |
CMSG_STREAM_INFO | Questa struttura viene usata per abilitare l'elaborazione dei dati di flusso anziché l'elaborazione a blocchi singoli. L'elaborazione del flusso viene spesso usata durante l'elaborazione di messaggi di grandi dimensioni. I messaggi di processo di flusso possono derivare da qualsiasi origine serializzata, ad esempio un file in un disco rigido, un server o una ROM CD. |
CRYPT_DECRYPT_MESSAGE_PARA | Contiene informazioni per decrittografare i messaggi. |
CRYPT_ENCRYPT_MESSAGE_PARA | Contiene informazioni usate per crittografare i messaggi. |
CRYPT_HASH_MESSAGE_PARA | Contiene i dati per l'hashing dei messaggi. |
CRYPT_SIGN_MESSAGE_PARA | Contiene informazioni per la firma dei messaggi usando un contesto di certificato di firma specificato . |
CRYPT_VERIFY_MESSAGE_PARA | Contiene informazioni necessarie per verificare un messaggio firmato. |
Strutture di supporto OID
Le strutture seguenti vengono usate dalle funzioni di supporto OID.
Struttura | Descrizione |
---|---|
CRYPT_OID_FUNC_ENTRY | Contiene un identificatore di oggetto (OID) e un puntatore alla relativa funzione correlata. Viene usato con CryptInstallOIDFunctionAddress |
CRYPT_OID_INFO | Contiene informazioni su un identificatore di oggetto (OID). |
CRYPT_RC2_CBC_PARAMETERS | Contiene informazioni usate con la crittografia szOID_RSA_RC2CBC. |
CRYPT_SMIME_CAPABILITIES | Contiene una matrice con priorità delle funzionalità supportate. |
CRYPT_SMIME_CAPABILITY | Specifica una singola funzionalità e i relativi parametri associati. |
Strutture della catena di certificati
Le strutture seguenti vengono usate nella compilazione di catene di certificati usate per stabilire l'attendibilità in un certificato.
Struttura | Descrizione |
---|---|
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA | Contiene informazioni sui criteri usate nella verifica delle catene di certificati per i file. |
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS | Contiene informazioni aggiuntive sui criteri Authenticode per la verifica della catena di file. |
AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA | Contiene informazioni sui criteri timestamp che possono essere usate nella verifica della catena di certificati dei file. |
CERT_CHAIN_CONTEXT | Contiene una matrice di catene di certificati semplici e una struttura di stato di attendibilità che indica i dati di validità di riepilogo in tutte le catene semplici connesse. |
CERT_CHAIN_ELEMENT | Questa struttura è un singolo elemento in una semplice catena di certificati. |
CERT_CHAIN_ENGINE_CONFIG | Imposta i parametri per la creazione di un motore della catena di certificati non definito. |
CERT_CHAIN_FIND_BY_ISSUER_PARA | Contiene informazioni usate in CertFindChainInStore per compilare catene di certificati. |
CERT_CHAIN_PARA | Stabilisce i criteri di ricerca e corrispondenza da usare per la compilazione di una catena di certificati. |
CERT_CHAIN_POLICY_PARA | Contiene informazioni usate in CertVerifyCertificateChainPolicy per stabilire criteri per la verifica delle catene di certificati. |
CERT_CHAIN_POLICY_STATUS | Contiene informazioni sullo stato della catena di certificati restituite da CertVerifyCertificateChainPolicy dalla verifica delle catene di certificati. |
CERT_REVOCATION_INFO | Indica lo stato di revoca di un certificato in un CERT_CHAIN_ELEMENT. |
CERT_SELECT_CHAIN_PARA | Contiene i parametri usati per la compilazione e la selezione di catene. |
CERT_SIMPLE_CHAIN | Contiene una matrice di elementi della catena e uno stato di attendibilità di riepilogo per la catena rappresentata dalla matrice. |
CERT_SELECTUI_INPUT | Usato dalla funzione CertSelectionGetSerializedBlob per serializzare i certificati contenuti in un archivio o in una matrice di catene di certificati. Il BLOB serializzato restituito può essere passato alla funzione CredUIPromptForWindowsCredentials . |
CERT_TRUST_LIST_INFO | Indica l'utilizzo valido di un CTL. |
CERT_TRUST_STATUS | Contiene informazioni di attendibilità su un certificato in una catena di certificati, informazioni di attendibilità di riepilogo su una semplice catena di certificati o informazioni di riepilogo su una matrice di catene semplici. |
CERT_USAGE_MATCH | Fornisce parametri per trovare i certificati di autorità di certificazione usati per compilare una catena di certificati. |
CTL_USAGE_MATCH | Fornisce parametri per trovare elenchi di attendibilità dei certificati (CTL) usati per compilare una catena di certificati. |
SSL_EXTRA_CERT_CHAIN_POLICY_PARA | Contiene informazioni sui criteri usate nella verifica delle catene di certificati client/server Secure Sockets Layer (SSL). |
Strutture CSP
Le strutture seguenti vengono usate con funzioni CSP ( Cryptographic Service Provider ).
Struttura | Descrizione |
---|---|
BLOBHEADER | Indica il tipo BLOB di una chiave e l'algoritmo usato dalla chiave. |
VTableProvStruc | Contiene puntatori alle funzioni di callback che possono essere usate dalle funzioni CSP. |
PLAINTEXTKEYBLOB | Contiene informazioni sull'intestazione dei parametri per una chiave di testo non crittografato. |
Strutture WinTrust
Le strutture seguenti vengono usate con la funzione WinVerifyTrust .
Struttura | Descrizione |
---|---|
CRYPT_PROVIDER_DEFUSAGE | Usato dalla funzione WintrustGetDefaultForUsage per recuperare le informazioni di callback per l'utilizzo predefinito di un provider. |
CRYPT_PROVIDER_REGDEFUSAGE | Usato dalla funzione WintrustAddDefaultForUsage per registrare le informazioni di callback sull'utilizzo predefinito di un provider. |
SPC_INDIRECT_DATA_CONTENT | Archivia il digest e altri attributi di un file con firma Authenticode. |
WINTRUST_BLOB_INFO | Usato quando si chiama WinVerifyTrust per verificare un BLOB di memoria. |
WINTRUST_CATALOG_INFO | Usato quando si chiama WinVerifyTrust per verificare un membro di un catalogo Microsoft. |
WINTRUST_CERT_INFO | Usato quando si chiama WinVerifyTrust per verificare un CERT_CONTEXT. |
WINTRUST_DATA | Usato quando si chiama WinVerifyTrust per passare le informazioni necessarie nei provider di trust |
WINTRUST_FILE_INFO | Usato quando si chiama WinVerifyTrust per verificare un singolo file. |
WINTRUST_SGNR_INFO | Usato quando si chiama WinVerifyTrust per verificare una struttura CMSG_SIGNER_INFO . |
Strutture SIP
Le strutture seguenti vengono usate dal pacchetto dell'interfaccia soggetto (funzioni SIPP).
Struttura | Descrizione |
---|---|
SIP_ADD_NEWPROVIDER | Definisce un SIP. |
SIP_CAP_SET | Definisce le funzionalità di un SIP. |
SIP_DISPATCH_INFO | Contiene un set di puntatori alle funzioni SIP. |
SIP_INDIRECT_DATA | Contiene un digest delle informazioni sull'oggetto con hash. |
SIP_SUBJECTINFO | Specifica le informazioni sull'oggetto SIP. |