Qual è una scadenza ragionevole per i certificati di autenticazione utente?

5

Questa domanda riguarda un sistema P2P quasi decentralizzato con un'autorità di certificazione centralizzata in cui gli utenti possono autenticare e ricevere un certificato sulla propria chiave pubblica e quindi possono autenticarsi con i peer che utilizzano quel certificato, indipendentemente dall'autorità di certificazione. In breve, si tratta di una moralmente uguale a una casella di controllo "mantieni il login" che utilizza un cookie.

Se il certificato viene rubato, l'utente può essere impersonificato fino alla scadenza del certificato, specialmente in un sistema P2P in cui i certificati sono quasi impossibili da ritirare. Questo è un argomento per rendere la scadenza piuttosto breve, per esempio un'ora.

D'altra parte abbiamo l'argomento della dipendenza e delle prestazioni. Se la scadenza è molto lunga, riduce lo stress sull'autorità di certificazione e riduce anche l'impatto quando non è disponibile.

Che cosa è una ragionevole scadenza per tali certificati "registrati"?

    
posta orlp 09.02.2013 - 01:55
fonte

3 risposte

4

I certificati di vita reale hanno un concetto accurato chiamato revoca . È un modo per propagare (in modo sicuro) l'informazione che un determinato certificato, sebbene apparentemente legittimo e kosher e con tutte le firme corrette, non dovrebbe più essere considerato attendibile. Questa è una sorta di funzionalità "oops". In X.509 , questo utilizza Liste di revoca dei certificati e OCSP .

L'idea alla base è che occasionalmente accadono disavventure, in particolare chiavi rubate . La revoca è quindi una procedura di contenimento del danno, che viene attivata quando viene rilevato un problema di quel tipo. La proprietà importante è che si tratta di una procedura manuale : succede quando human la decide. Quindi ha una latenza intrinseca e inevitabile. Pertanto, non vi è alcuna necessità che le informazioni di revoca siano "estremamente fresche": i CRL che sono pubblicati, ad esempio, due volte al giorno, saranno sufficienti, perché è illusorio aspettarsi un miglior tempo di reazione alle chiavi rubate.

La Scadenza può sostituire la revoca se è sufficientemente breve. Se i certificati hanno vita breve, la revoca non è necessaria. Quanto è breve "breve"? Con il ragionamento sopra riportato, la revoca non è necessaria se il tempo di scadenza è inferiore all'intervallo di pubblicazione CRL che sceglieremo, se dovessimo pubblicare CRL. Secondo il ragionamento sopra, 12 ore sono abbastanza brevi.

Pertanto potresti scadere i certificati di autenticazione dopo 12 ore. Dato che gli umani dormono di notte, non puoi davvero aspettarti che il furto di chiavi venga rilevato, in media, più velocemente di così.

    
risposta data 26.02.2013 - 21:57
fonte
2

Penso che la domanda a cui è difficile rispondere sia perché è la domanda sbagliata. Non è possibile valutare i tempi di scadenza appropriati separatamente dalla 'cosa' che è protetta. Non ci sono assoluti qui. Quello che è veramente necessario determinare è quale è il tempo massimo di scadenza che possiamo accettare come abbastanza lungo da ottenere la massima convenienza per il cliente, ma abbastanza breve da garantire una protezione accettabile. Non si può mai raggiungere la sicurezza assoluta - il meglio che si può fare è trovare il giusto equilibrio tra fare qualcosa di abbastanza sicuro pur garantendo che sia ancora utilizzabile.

Inizia considerando quale sarebbe il danno causato se il cookie / dati di sessione fosse stato compromesso. Quindi considera quanto facilmente e probabilmente questo potrebbe essere. La facilità dipenderà in gran parte dalla tecnologia e dall'ambiente. La probabilità dipenderà più dal valore percepito a qualcun altro.

Una volta che hai una certa misura di valore, facilità e verosimiglianza, puoi considerare in primo luogo se sono necessari ulteriori sforzi per proteggere ulteriormente le comunicazioni e dove concentrare gli sforzi. Ad esempio, se i dati hanno un valore molto alto per gli altri e la probabilità che sia desiderata da altri è molto alta, puoi decidere che la convenienza di uno stato di sessione tpe "Ricordami" non può essere giustificata, quindi decidi di semplicemente non fornire questa funzionalità. In alternativa, potresti decidere che, data l'ambiente, il valore e il livello di probabilità, aggiungere alcune informazioni aggiuntive alla sessione può essere sufficiente o puoi decidere solo un periodo di scadenza entro i limiti accettabili per il tempo / facilità con cui qualcuno potrebbe ottenere e utilizzare i dati della sessione e la probabilità che qualcuno vorrebbe farlo.

Mi rendo conto che questo in realtà non risponde alla domanda generale di quale sia il miglior tempo di scadenza, ma questo perché la domanda non può essere risolta in quanto dipenderà dall'applicazione. Le cose sono molto più difficili perché alcune delle misure utilizzate, come "valore" e desiderio / verosimiglianza, hanno componenti larimamente soggettive. Ecco perché questa roba è difficile. È molto più facile discutere di punti di forza / debolezza tecnici perché di solito hanno un certo grado di misurazione oggettiva. Le dimensioni più soggettive sono più difficili da valutare perché richiedono una conoscenza approfondita dei processi aziendali, dell'esperienza e persino di un po 'di psicologia!

    
risposta data 22.02.2013 - 22:52
fonte
-1

Il tempo di scadenza per i certificati di autenticazione utente non è correlato al furto di certificazioni e falsificazione dell'identità. Se un utente malintenzionato può rubare il tuo certificato di autenticazione, significa che possiede già il tuo PC, quindi non ha più bisogno di rubare il tuo certificato perché può usare il tuo PC per avviare qualsiasi attività e falsificare la tua identità.

Di solito un hacker annusa il tuo traffico crittografato e non ha accesso al tuo pc quindi non può rubare i tuoi dati. Lancerà un attacco di forza bruta sui dati crittografati per recuperare i dati originali in tempo reale.

Il tempo di validità del tuo certificato dovrebbe essere inferiore al tempo di attacco, altrimenti è inutile. ad esempio:

  • le chiavi di sessione hanno un tempo di validità = un accesso
  • tasti simmetrici, è meglio generare chiavi casuali per ogni sessione
  • Le chiavi RSA hanno un tempo di validità = anni
risposta data 26.02.2013 - 21:45
fonte

Leggi altre domande sui tag