Per la maggior parte delle applicazioni che dipendono da certificati X.509 è necessaria la convalida dello stato dei certificati utilizzati per l'esecuzione di operazioni di autenticazione, firma o crittografia. La verifica della validità e della revoca di un certificato viene eseguita per tutti i certificati in una catena di certificati, fino al certificato radice. Se il certificato radice o qualsiasi altro certificato nella catena non è valido, i certificati al di sotto di quello non valido nella catena sono ugualmente considerati non validi.

Affinché la convalida abbia esito positivo, devono essere confermate le condizioni seguenti:

  • La firma di ogni certificato è valida.

  • La data e l'ora correnti devono essere comprese nel periodo di validità del certificato.

  • Nessun certificato è danneggiato o in un formato non corretto.

Viene inoltre verificato lo stato di revoca di ogni certificato incluso nella catena di certificati. La verifica delle revoche può essere eseguita mediante un elenco di revoche di certificati (CRL) oppure una risposta del protocollo di stato del certificato online (OCSP).

Che cos'è il protocollo OCSP?

Il risponditore online Microsoft implementa il protocollo OCSP il quale consente al destinatario di un certificato di inviare una richiesta di stato del certificato a un risponditore OCSP mediante il protocollo HTTP (Hypertext Transfer Protocol). Il risponditore OCSP restituisce una risposta definitiva provvista di firma digitale indicante lo stato del certificato. La quantità di dati recuperati per ogni richiesta rimane costante indipendentemente dal numero di certificati revocati nella CA.

Per ulteriori informazioni, vedere la specifica RFC 2560, "X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP" all'indirizzo https://go.microsoft.com/fwlink/?LinkID=71068.

Risponditore in linea

L'implementazione Microsoft di OCSP, ovvero Risponditore in linea, è suddivisa in componenti client e server. Il componente client è incorporato nella libreria CryptoAPI 2.0, mentre quello server viene introdotto come un nuovo servizio offerto dal ruolo server Servizi certificati Active Directory. Nel processo seguente viene descritta l'interazione tra i componenti client e server.

  1. Quando un'applicazione tenta di verificare un certificato in cui sono specificati i percorsi dei risponditori OCSP, il componente client esegue innanzitutto una ricerca nella memoria locale e nelle cache dei dischi per individuare una risposta OSCP memorizzata in cache contenente dati di revoca aggiornati.

  2. Se non viene trovata una risposta accettabile nella cache, viene inviata una richiesta a un risponditore online mediante il protocollo HTTP.

  3. Il proxy Web del risponditore online decodifica e verifica la richiesta. Se quest'ultima è valida, viene eseguita una verifica nella cache del proxy Web per individuare le informazioni sulla revoca necessarie per soddisfare la richiesta. Se nella cache non sono disponibili informazioni aggiornate, la richiesta viene inoltrata al servizio Risponditore in linea.

  4. Quest'ultimo riceve la richiesta ed esegue una verifica in un CRL locale, se disponibile, e in una copia memorizzata nella cache del CRL più recente rilasciato dalla CA.

  5. Se il certificato non è presente negli elenchi di revoche locali e della cache, il provider di revoca ottiene un CRL aggiornato della CA, se disponibile, dai percorsi elencati nella configurazione di revoca allo scopo di verificare lo stato del certificato. A sua volta, il provider restituisce lo stato del certificato al servizio Risponditore in linea.

  6. Il proxy Web quindi codifica e invia la risposta al client per notificargli che il certificato è valido. Viene inoltre memorizzata nella cache una copia della risposta per un periodo di tempo limitato nell'eventualità che vengano ricevute ulteriori richieste di stato relative al certificato in questione.