RemoveFromCRL e DeltaCRL

3

Ho una domanda su DeltaCRL con una voce che contiene il motivo RemoveFromCRL .
All'inizio, PKI ha revocato il certificato con certificateHold motivo.

E crea il prossimo CRL:

Last Update: May 28 13:14:09 2015 GMT 
Next Update: Jun 27 13:14:09 2015 GMT
Revoked Certificates:
    Serial Number: 12
    Revocation Date: Aug 14 14:44:00 2014 GMT 
    CRL entry extensions:
            X509v3 CRL Reason Code: 
                certificateHold

Successivamente, il nostro PKI non revocato il certificato, rimosso il certificato da CRL e creato il prossimo Delta CRL:

Last Update: May 30 12:51:40 2015 GMT 
    Next Update: May 30 15:00:00 2015 GMT
    Revoked Certificates:
        Serial Number: 12
        Revocation Date: May 30 12:51:40 2015 GMT 
        CRL entry extensions:
                X509v3 CRL Reason Code: 
                    RemoveFromCRL

Quale valore posso usare per RevocationDate per DeltaCRL e perché?
Dovrei usare il tempo corrente o revocationDate dalla prima revoca?

    
posta YBW 31.05.2015 - 00:29
fonte

1 risposta

3

Il codice motivo 'removeFromCRL' indica che il certificato è, infatti, non revocato. L'idea alla base di 'certificateHold' è di rendere una sospensione , non una revoca: la PKI dichiara che il certificato non dovrebbe essere utilizzato fino a quando non saranno rese disponibili ulteriori informazioni (in un delta successivo o CRL completo), mentre non revocare completamente il certificato, perché la revoca è un viaggio di sola andata. In tal senso, il certificato non è mai stato revocato e quindi non è stato neppure "non revocato".

Questo implica che la "data di revoca" per un codice "removeFromCRL" è completamente ignorata. Tale data qualifica l'istante da cui il certificato deve essere considerato come revocato, fino alla fine dei tempi; il codice 'removeFromCRL' lo cancella.

Se guardi RFC 5280 , vedrai che la data di revoca non viene utilizzata affatto nell'algoritmo di convalida . Il suo scopo principale è quello di supportare la convalida precedente , quando si desidera sapere se un dato certificato era valido in una data passata (questo è usato in alcuni formati di firma, in combinazione con i timestamp). Quando un CRL elenca che un certificato è stato revocato alla data T , ciò significa che dopo la data T il certificato non deve essere considerato valido, ma anche che prima della data T andava bene. Ad esempio, se il certificato era su una smart card che è stata persa, la "data di revoca" dovrebbe essere l'ultima volta in cui la smart card è stata vista l'ultima volta dal suo proprietario, poiché in qualsiasi ulteriore data la carta potrebbe essere nelle mani sbagliate. Per la coppia certificateHold / removeFromCRL, il punto è che la chiave privata non è mai stata compromessa e il certificato non è mai stato revocato, quindi non esiste una "data di revoca".

(Indubbiamente, i codici di motivazione "certificateHold" e "removeFromCRL" sono un trucco che incoraggia i proprietari di PKI a utilizzare la revoca come meccanismo di sospensione di emergenza, ovvero un sostituto per autorizzazione , e questo è un male La revoca è, per sua natura, un meccanismo asincrono e non funziona bene per questo: quando si verifica una situazione in cui si desidera mettere un certificato "in attesa", la cosa più sensata da fare è revocare il certificato ed emettere un nuovo.)

    
risposta data 31.05.2015 - 14:16
fonte

Leggi altre domande sui tag