Ciclo di vita del certificato CA.

2

Sto pianificando di implementare un nuovo PKI con 2 livelli di CA. Avrò certificati di entità finale con una durata fino a 5 anni. Ciò significa che la mia CA di emissione dovrebbe essere valida per 10 anni, al fine di poter emettere certificati con una validità di 5 anni, dopo 5 anni.

Questo blog raccomanda di rinnovare il certificato CA emittente dopo 5 anni, utilizzando la stessa chiave privata e di rinnovare il certificato CA emittente dopo 10 anni, utilizzando una nuova chiave privata. Ma così facendo, ho i certificati dell'ente finale che circolano per un massimo di 15 anni nella mia rete, che sono stati emessi dalla stessa chiave privata.

Non sarebbe meglio (più sicuro e persino migliore da gestire) rinnovare semplicemente i certificati CA sempre dopo metà della vita utilizzando una nuova chiave privata? O c'è qualche aspetto negativo?

    
posta mhedv 21.06.2016 - 15:43
fonte

2 risposte

1

Cinque anni sono anni di sicurezza delle informazioni. Dieci anni vedranno il mondo della sicurezza decidere che alcuni algoritmi e chiavi sono troppo facilmente compromessi. Ho un cliente che ha implementato gli hash SHA1 in ogni livello per supportare Windows XP senza patch utilizzando un ambiente PKI che è stato creato negli ultimi quattro anni. Abbiamo dovuto ripassare ogni certificato della CA con SHA2 molto prima che fosse richiesta una nuova chiave o certificato. I piani cambiano.

Dovresti avere tutto il tempo per la ricerca e decidere se il rinnovo o la riorganizzazione di un certificato siano appropriati in ogni fase. Non penso che sia un cattivo piano da ridefinire poiché migliori algoritmi più accettati (o chiavi più lunghe) probabilmente esisteranno nel corso degli anni. Il grande ostacolo con questo approccio è testare ogni applicazione che si basa sulla tua PKI prima di riprogrammare o modificare algoritmi.

Se lavori in un ambiente Microsoft Windows, questa è una grande risorsa (anche se esaurita e spesso costosa): link

    
risposta data 21.06.2016 - 20:50
fonte
1

La tua domanda su quando / come rinnovare la chiave CA è buona, ma temo che non abbia una risposta generica; dipende da quali applicazioni stanno consumando tali certificati e da come si aspettano che una CA si comporti man mano che si avvicina alla fine del ciclo di vita.

Una cosa che è universalmente vera è che i certificati di entità finale non dovrebbero mai sopravvivere a nessuna CA nella loro catena di emissione perché i certificati di zombi non sono revocabili, quindi qualsiasi "sovrapposizione" di periodi di validità della chiave CA significa essenzialmente l'esecuzione di due CA:

  1. Quando il certificato CA arriva entro end_entity_lifetime di scadenza, crea una nuova chiave CA e un certificato autofirmato.

  2. Certificare in modo incrociato i certificati CA vecchi e nuovi.

  3. La tua CA ha due set di servizi CRL / OSCP / CMP: vecchi certs gestiti con la vecchia chiave, nuovi certs gestiti con la nuova chiave.

Pro:

  • Le entità finali e le applicazioni di terze parti sanno che verrà rilasciato un solo certificato per ogni chiave CA e sarà valido fino a quando la chiave non viene ritirata. Non devono preoccuparsi di interrogare / aggiornare il certificato CA (molto utile per applicazioni offline, cert-pin o dipendenti dalla cache).
  • Le entità finali emesse dalle vecchie e nuove chiavi CA possono fidarsi l'una dell'altra attraverso i certificati di collegamento cross-certificate.
  • Le applicazioni che desiderano convalidare un certificato di entità finale possono ancora seguire le informazioni CRL / OCSP nel certificato fino alla scadenza della chiave CA, poiché la CA continua a pubblicare CRL con la vecchia chiave.
  • Per le applicazioni che sono a conoscenza dei certificati di collegamento, eseguire un rollover della chiave CA è più sicuro perché è possibile estendere la fiducia da una chiave alla successiva, anziché dover affidare la nuova chiave CA alla freddezza.

Contro:

  • Più complesso da gestire perché raddoppi il numero di CA attive.
  • Non tutte le applicazioni sono a conoscenza dei certificati di collegamento, quindi devi gestire la compatibilità.

Il ri-rilascio di un certificato radice per la stessa chiave risolve alcuni di questi problemi, ma non tutti. In particolare, interrompe il pin cert basato sull'hash del cert e significa che gli hacker hanno una finestra più lunga per forzare la chiave. Detto questo, questo chiaramente viene fatto in pratica, quindi mi manca qualcosa ...

Riepilogo: non sono sicuro che ci sia una "risposta giusta" qui. A seconda di quali applicazioni stanno consumando i tuoi certificati, la decisione potrebbe essere già presa per te.

    
risposta data 21.06.2016 - 21:38
fonte