Condividi tramite


Catene di certificati

Per usare certificati per la sicurezza, è necessario verificare l'autenticità e la validità di ogni certificato ricevuto. Questa verifica dipende dal concetto di attendibilità e dalla delega dell'attendibilità; Per altre informazioni, vedere Hierarchy of Trust.

Ogni certificato contiene un campo oggetto che identifica il singolo o il gruppo a cui è stato rilasciato il certificato. Ogni certificato contiene anche un campo autorità di certificazione che identifica l'autorità di certificazione (CA) autorizzata a certificare l'identità dell'oggetto.

Una catena di certificati è costituita da tutti i certificati necessari per certificare il soggetto identificato dal certificato finale. In pratica, questo include il certificato finale, i certificati delle ca intermedie e il certificato di una CA radice attendibile da tutte le parti della catena. Ogni CA intermedia nella catena contiene un certificato emesso dalla CA di un livello sopra di esso nella gerarchia di attendibilità. La CA radice rilascia un certificato per se stesso.

Il processo di verifica dell'autenticità e della validità di un certificato appena ricevuto comporta la verifica di tutti i certificati nella catena di certificati dall'autorità di certificazione originale, universalmente attendibile, tramite eventuali CA intermedie, fino al certificato appena ricevuto, denominato certificato finale. Un nuovo certificato può essere considerato attendibile solo se ogni certificato nella catena del certificato viene emesso correttamente e valido.

Tenere traccia di tutti i certificati che tornano a un nuovo certificato finale può diventare complicato. Di conseguenza, tecnologia CryptoAPI 2.0 fornisce funzioni che automatizzano la creazione della catena di certificati che supportano qualsiasi certificato finale specificato. Queste funzioni controllano e segnalano anche la validità di ogni certificato in una catena.

Le funzioni di compilazione e controllo della catena di CryptoAPI 2.0 usano un motore di catena per creare e verificare catene di certificati. Un motore di catena definisce uno spazio dei nomi dell'archivio e il partizionamento della cache per l'infrastruttura di concatenamento dei certificati. CryptoAPI 2.0 fornisce un motore di catena predefinito per qualsiasi processo dell'applicazione che usa solo gli archivi di sistema predefiniti (ad esempio, MY, Root, CA e Trust) per la compilazione e la memorizzazione nella cache della catena. Un'applicazione può definire il proprio spazio dei nomi di archiviazione o avere una propria cache partizionata creando un proprio motore di catena. Per ottenere un comportamento ottimale di memorizzazione nella cache, è consigliabile creare un singolo motore a catena all'avvio dell'applicazione e usarlo per tutta la durata dell'applicazione.

Per un elenco delle funzioni, vedere Funzioni di verifica della catena di certificati. Per un programma che compila catene di certificati e verifica i certificati, vedere Programma C di esempio: Creazione di una catena di certificati.