I file di chiavi in realtà aggiungono sicurezza significativa in presenza di password complesse?

9

Nel contesto della protezione dell'accesso a file o dispositivi crittografati locali contro un determinato (e competente) avversario, c'è qualche ragione per credere che l'uso di un file chiave presenti in realtà un ostacolo significativo che un strong (pseudo-casuale, lunga) la password non?

Li ho usati per un po 'come schema di autenticazione a due fattori di un povero uomo, ma dopo aver letto alcune delle recenti notizie sulla sicurezza, sto iniziando a chiedermi se aggiungono effettivamente un valore significativo - quindi Ho fatto un po 'di matematica veloce, e più ci guardo dentro, meno sono convinto di aggiungere valore a chiunque abbia più risorse o talento di un semplice script kiddie. Più ci penso, più penso che chiunque possa crackare o ottenere in altro modo una delle lunghissime password che uso per crittografare file o unità non avrà alcuna difficoltà a mettere le mani sui miei file di chiavi, e determinare il i keyfile dal resto sarebbero possibili con un attacco a forza bruta e un buon rig GPU.

Per quanto riguarda i calcoli matematici, una password di psuedorandom di 20 caratteri contenente i 4 set di caratteri standard produce 95 20 o 3,58 * 10 39 possibilità, che è un po ' più di 10 volte meglio di 128 bit di entropia (che darebbero possibilità 3,40 * 10 38 ). Per ottenere un grado simile di entropia con i file di chiavi, dovrei selezionare 9 file da un elenco di 100.000 se l'ordine non ha importanza (2.75 * 10 39 possibilità) o 8 file da una lista di 100.000 se l'ordine conta (possibilità di 9.997 * 10 39 ).

Anche ignorando la difficoltà pratica di ottenere e mantenere un elenco così grande di file statici che potrebbero servire come potenziali file di chiavi e oscurare quelli che sono i file reali in questione, mi sembra che l'approccio keyfile richieda più sforzo che commettere un altro ~ 20 caratteri casuali in memoria.

L'unico vantaggio che posso vedere usando i file di chiavi sarebbe la protezione contro un keylogger ... di 10 anni fa. Al giorno d'oggi sono dotati di funzionalità di cattura dello schermo e non immagino che qualcuno che può ottenere codice dannoso su una determinata macchina non sia in grado di copiare i file di chiavi quando sono stati acceduti a scopo di autenticazione, anche se erano offline e completamente fisicamente inaccessibili il resto del tempo.

Quindi mi sto perdendo qualcosa, ho sbagliato i calcoli matematici, o i file di chiavi non sono efficaci come secondo fattore di autenticazione rispetto a un determinato avversario, e la crittografia locale è protetta da password sicure?

    
posta HopelessN00b 29.05.2013 - 23:02
fonte

2 risposte

3

Sì, i file di chiavi aggiungono un po 'di sicurezza. Quella sicurezza aggiunta può o non può essere utile a seconda delle circostanze, ma è lì.

Un file chiave (generato in modo casuale) ha almeno 128 bit di entropia. È molto più di una password decentemente memorabile . Con hashing appropriato , una password lunga ma memorabile non può essere incrinato in un tempo ragionevole a un costo ragionevole. Tuttavia un file di chiavi è più a prova di futuro di una password memorabile.

Ancora più importante, combinare una password con un file di chiavi significa che hai due fattori di autenticazione . (Supponendo che si digiti la password anziché memorizzarla in un file sulla stessa macchina, altrimenti la password e il file di chiavi hanno lo stesso ruolo.) Una password è "qualcosa che conosci", mentre un file di chiavi è "qualcosa che hai" - hai il supporto di memorizzazione contenente la password.

L'autenticazione a più fattori è utile perché diversi fattori sono soggetti a minacce diverse. Il malware in esecuzione sulla macchina in cui si utilizzano le credenziali è lo scenario peggiore: può ficcare il naso su qualsiasi credenziale inserita in qualsiasi modo - e può impersonare o sovvertire l'applicazione in ogni caso, quindi hai perso indipendentemente da ciò che accade al tuo credenziali. Molti altri attacchi riguardano solo un vettore. Ad esempio, un utente malintenzionato che ruba i nastri di backup può ottenere il file chiave ma non la password. Viceversa, ci sono molti attacchi che possono rivelare una password ma non un keyfile, come una spionaggio (eventualmente aiutato da una telecamera), un keylogger hardware o qualsiasi altra forma di snooping fisico (ad esempio attraverso emissioni sonore o radio).

    
risposta data 30.05.2013 - 03:15
fonte
1
  1. Le GPU non sono utili per attaccare i file di chiavi. Le GPU sono generalmente utilizzate per eseguire attacchi che richiedono relativamente poca memoria per hash, i file di chiavi ovviamente richiedono molto di più.
  2. Non c'è motivo per cui tu debba tenere il tuo keyfile sul tuo computer, accessibile a un utente malintenzionato. Un file di chiavi può essere facilmente tenuto su un'unità flash, rendendo più difficile il recupero tramite malware. (Sì, il malware specializzato potrebbe cercare il file di chiavi, ma probabilmente dovrebbe indirizzarti a te in modo specifico.)
  3. La maggior parte degli utenti non ha buone passphrase. Sì, se la tua passphrase ha davvero 128 bit di entropia, un file di chiavi potrebbe non aggiungere molto, ma tu farai proprio l'eccezione.
risposta data 30.05.2013 - 02:59
fonte

Leggi altre domande sui tag