Problema di sicurezza e autenticazione

5

Abbiamo uno scenario di esempio e vorremmo ricevere un feedback e alcune soluzioni relative ai possibili schemi di sicurezza.

Prima di tutto, immaginiamo uno scenario reale:

Immagina che un utente possieda un armadietto in un'università (proprietari) e che i detentori abbiano le chiavi per ogni armadietto (dati crittografati) nell'università (utenti autorizzati). Inoltre, gli altri studenti (pubblici) sono in grado di leggere le etichette con il nome di ciascun proprietario dell'armadietto. (dati non crittografati).

Ora, immagina che un utente malintenzionato rubi le chiavi di tutti gli armadietti da un addetto alle pulizie. Qual è la soluzione migliore per invalidare la chiave compromessa senza modificare i blocchi effettivi degli armadietti (senza la necessità di decrittografare e crittografare nuovamente i dati dei proprietari in quanto è di sola lettura)?

Tieni presente che l'intero sistema di sicurezza dovrebbe applicarsi mentre i proprietari e gli utenti autorizzati operano offline.

    
posta glarkou 08.03.2013 - 15:55
fonte

1 risposta

4

Stai entrando nell'area torbida di revoca . Fondamentalmente, vuoi avere un sistema che "lavori" ma con un interruttore di annullamento che dice: anche se tutto sembra legittimo con la crittografia e tutto il resto, non aprire.

Se il tuo sistema è completamente offline, non c'è soluzione. Un "pulitore" ha il potere di aprire tutti gli armadietti; non può perdere questo potere se tutto è offline perché le informazioni sul dirottamento dello stato di pulizia (furto delle sue chiavi) non possono entrare in un sistema totalmente offline, poiché viene "dall'esterno". Per risolvere il tuo problema, necessariamente hai bisogno di una rete almeno intermittente.

La solita soluzione, ad esempio in X.509 , è quella di avere di breve durata firmati oggetti che dichiarano che "per ora va tutto bene". Nell'analogia pulitore / armadietto:

  • Ogni armadietto ha un orologio e conosce la data e l'ora correnti.
  • Ogni mattina, l'addetto alle pulizie va all'ufficio di pulizia principale e mostra la sua faccia e le chiavi a un ufficiale che verifica che l'addetto alle pulizie sia effettivamente autorizzato e autorizzato; l'ufficiale consegna quindi all'aspirapolvere un "token di accesso" firmato che dice "a X più pulito è consentito l'accesso fino all'8 marzo alle 23:00 UTC".
  • Quando il pulitore vuole aprire un armadietto, deve inserire la sua chiave e il token di accesso. L'armadietto verifica la firma dall'ufficiale e anche che il token di accesso non è ancora scaduto.

In X.509, il "token di accesso" è una risposta CRL o OCSP. I dettagli variano su come gli oggetti vengono portati al validatore (qui, l'armadietto). Nell'analogia sopra, la "rete intermittente" è l'ufficio centrale; questo è il punto in cui il sistema è transitoriamente "online". In alternativa, i token di accesso firmati potrebbero essere distribuiti agli armadietti in modo proattivo da qualcun altro.

Una pietra miliare è che i validatori DEVONO disporre di una fonte di tempo affidabile, per una nozione di tempo adeguata (non è necessario molto in termini di precisione e accuratezza).

    
risposta data 08.03.2013 - 16:27
fonte