Cancellazione dei file di chiavi TrueCrypt dopo il montaggio del volume

2

Per migliorare la sicurezza in una certa misura, utilizzo la tecnica di generazione dei file di chiavi (per modificare un file esistente in un file di chiavi effettivo).

Il file di chiavi effettivo è memorizzato su un file system volatile che non sopravvive al riavvio del computer.

La domanda è: se posso cancellare ed eliminare il file di chiavi effettivo dopo aver creato il volume?

Se sì, allora potrebbe essere tranquillamente sovrascritto e distrutto immediatamente dopo l'uso, migliorando ulteriormente la sicurezza associata all'uso di TrueCrypt.

    
posta Konstantin Boyandin 31.01.2013 - 00:38
fonte

2 risposte

3

To improve security to some extent, I use keyfile generation technique (to change an existing file into an actual keyfile).

Stai usando uno strumento esterno per farlo, o qualcosa di integrato in TrueCrypt? AFAIK è possibile utilizzare qualsiasi tipo di file come file di chiavi TC, ma il file viene utilizzato così com'è, non viene eseguita alcuna trasformazione. Da i documenti :

Note that TrueCrypt never modifies the keyfile contents. You can select more than one keyfile; the order does not matter. You can also let TrueCrypt generate a file with random content and use it as a keyfile. To do so, select Tools > Keyfile Generator.

Qualunque sia il metodo utilizzato per "trasformare un file normale in un file di chiavi", devi assicurarti che sia deterministico (ad esempio, genera sempre lo stesso file di chiavi dato lo stesso input), altrimenti non puoi gettare via dopo l'uso. E, naturalmente, se lo generi da una fonte casuale, devi mantenerlo per poterlo sbloccare più tardi.

If yes, then it could be safely overwritten and destroyed immediately after usage, further enhancing security associated with using truecrypt.

Non vedo come ciò migliorerà la sicurezza. Se il file originale è sufficiente per decodificare un volume, un utente malintenzionato che ha accesso ad esso può anche fare lo stesso, indipendentemente da quanti passaggi intermedi ci sono per trasformarlo nel file di chiavi risultante. Lo stesso con keyfile + password vs. file originale + password. Ciò significa che devi proteggere questo file come faresti con il file di chiavi.

Si potrebbe sostenere che l'uso di un file arbitrario è più sicuro rispetto all'utilizzo di un file di chiavi "standardizzato", poiché ce ne sono così tanti nel computer e l'utente malintenzionato deve sapere qual è la chiave. Un file a 64 byte con dati casuali "spicca tra la folla", quindi in linea di principio dovrebbero essere i primi a essere provati. È un po 'come "sicurezza per oscurità", ma se non hai un modo migliore per proteggere il tuo file di chiavi, questo dovrebbe darti un po' più di protezione.

Tuttavia, devo sottolineare che dal momento che TrueCrypt accetta molti keyfile contemporaneamente, e il suo hashing per combinarli insieme e con la password fornita, non è necessario eseguire personalmente il passaggio intermedio (che potenzialmente aumenta la superficie di attacco).

E per una ragione per avere molti file di chiavi: se il tuo supporto di archiviazione ha N file e K di essi saranno usati come file di chiavi, il numero totale di combinazioni che l'utente malintenzionato deve provare è N! / (K! * (N-K)!) . Scegliendo con cura questo numero, puoi renderlo molto più difficile da forzare, anche se l'autore dell'attacco ha accesso a tutti i tuoi file e un sacco di tempo e risorse per provarli. (Assicurati di sparpagliare i file di chiavi attraverso diverse cartelle ...) Sta a te decidere il compromesso tra sicurezza e convenienza, dal momento che fornire tutti quei file di chiavi ha anche il suo costo - nella pazienza dell'utente, che può essere molto limitata.

Aggiornamento: come da commento, stai utilizzando 20 file su 1000, che in linea di principio richiederebbero molto tempo per craccare ( 1.6 * 10^10 anni a 1000 tentativi / secondo). Tuttavia, hai detto che i file sono scelti in base all'input dell'utente, quindi devo sottolineare questo fatto:

Nonostante il gran numero di possibilità di scegliere quei 20 file ( 5.3 * 10^20 ~ 68 bit di entropia), non tutti sono ugualmente probabili da scegliere, poiché il processo non è casuale. Infatti, ogni sequenza di input dell'utente (che chiamiamo "password") determinerà deterministicamente una singola combinazione. Pertanto, l'entropia del tuo schema sarà al massimo uguale all'entropia della tua "password" (limitata a 68 bit). In altre parole, un utente malintenzionato che conosce il tuo processo ha bisogno solo di rifare lo stesso (contro un elenco di ipotesi "password") per ottenere una valida combinazione di file - un risultato migliore rispetto a provare tutti in modo casuale.

Inoltre, devi assicurarti che la logica per scegliere quei file non porti a troppe collisioni. Se due o più input portano allo stesso insieme di file, uno di essi può essere utilizzato in modo intercambiabile. Se ciò accade, l'entropia risultante può essere anche inferiore a quella che otterresti semplicemente usando quell'input dell'utente come password. E, inutile dire, l'uso di una password con più di 68 bit di entropia non avrà alcun effetto (ad esempio 11 caratteri o più), poiché a questo punto è garantito che le collisioni avvengano (contrasto con i 512 bit di entropia che è possibile ottenere utilizzando un file di chiavi casuali o circa 420 utilizzando una password casuale con 64 caratteri ASCII stampabili).

    
risposta data 31.01.2013 - 02:23
fonte
1

Risposta breve : non è possibile eliminare il file chiave perché è necessario che l'unità venga montato.

Risposta lunga : puoi effettivamente fare ciò che vuoi con i file chiave, anche mentre il volume è montato, ma il volume non verrà mai montato di nuovo (a meno che non si ripristini un'intestazione del volume basata sulla password che si potrebbe hai salvato in precedenza).

Il file chiave, combinato con la tua password se ne usi uno, crittografa l'intestazione che contiene la chiave del volume . È quel tasto del volume che è importante. Questo è il motivo per cui è possibile modificare i file di chiavi per un contenitore multi-gigabyte senza decodificare e crittografare nuovamente il contenitore. Solo l'intestazione del volume (che contamina la chiave del volume) viene nuovamente crittografata. È un'operazione a tempo costante.

Dopo la decrittografia della chiave del volume e il montaggio del volume, i file chiave non vengono utilizzati. Lo stesso per la tua password. Possono essere cancellati o modificati. Ma ciò renderà impossibile montare volumi che usano il file di chiavi.

La schermata del file di chiavi TrueCrypt lo menziona:

Latuaunicasperanzaseeliminiituoifilechiaveèripristinareun'intestazionedelvolumesalvatadaqualcheparte.

Inoltre,quandosipensaalpropriomodellodiminaccia,tenerepresentecheiltastodelvolumeèmemorizzatonellamemoriavolatile.Un attacco di Malvagità malefica andrà dopo la chiave del volume, non i tuoi file chiave. Un utente malintenzionato non saprà nemmeno quale metodo di crittografia è stato utilizzato in primo luogo.

    
risposta data 01.02.2013 - 05:25
fonte

Leggi altre domande sui tag