Il software di crittografia del disco è un metodo di crittografia dell’intero disco, in cui i diversi tipi di software implementano diverse funzioni e strategie per la crittografia di un’intera unità disco, nota come crittografia dell’intero disco (FDE). Tra i vari metodi, alcuni software FDE richiederanno l’uso di hardware separato, per sbloccare un’unità o memorizzare le chiavi di crittografia o, in alcuni casi, entrambi. Altri software FDE possono sbloccare il disco nel momento in cui l’utente accede al computer, mentre altri non avviano nemmeno il sistema operativo del computer senza autorizzazione. Altri ancora si distinguono per il modo in cui gestiscono il formato del disco e il modo in cui la crittografia viene generata dalla struttura del disco.
Alcune implementazioni del software di crittografia del disco dispongono di crittografia negabile. Qui, i dati sono annidati, dove ai livelli inferiori può essere negata l’esistenza. Se l’utente è tenuto a rinunciare alla password per qualsiasi motivo, è possibile accedere solo a determinati dati, come file del sistema operativo, programmi o dati che l’utente ha deciso che non sono poi così segreti. L’utente mostra la conformità rinunciando a una password e apparentemente sbloccando il disco, tuttavia i veri dati segreti rimangono nascosti sotto un’altra password che rimane segreta.
In molti casi in cui viene utilizzata questa negabilità plausibile, il software crea una sorta di volume all’interno di un volume. La partizione del disco principale viene caricata con una password, che esegue il sistema operativo e il software, mentre una seconda partizione del disco invisibile è accessibile solo con la seconda password. Naturalmente, questo metodo funziona bene solo se l’attaccante non è in grado di vedere alcuna caratteristica distintiva di una struttura di dati crittografata sottostante. Per aggirare questo problema, il software non lascia alcun segno in giro che indichi se viene utilizzata la crittografia del disco. A un osservatore esterno i dati sembrano casuali e poco interessanti, a meno che non si conosca la chiave per sbloccarli.
Alcuni software di crittografia del disco sono progettati per supportare o addirittura richiedere dispositivi hardware aggiuntivi utilizzati per sbloccare il disco. Uno di questi metodi è l’uso di schede di espansione con un processore aggiuntivo per gestire la crittografia e la decrittografia dei dati sull’unità. Potrebbe essere necessario inserire nel computer altre aggiunte hardware, come smart card o dongle USB (Universal Serial Bus), per fornire la chiave per sbloccare il disco. Molte di queste aggiunte hardware aderiscono alla specifica Trusted Platform Module (TPM), ma solo alcuni tipi di software di crittografia del disco implementano completamente il TPM.
Infine, vari software di crittografia del disco possono funzionare utilizzando un file come volume crittografato, una partizione logica separata di un’unità fisica o l’intero disco. Con il software di crittografia completa del disco, tutto è protetto, comprese le informazioni su come è partizionato il disco, le informazioni di avvio e i dati. Questo tipo di software FDE richiederà probabilmente una password di pre-avvio aggiuntiva solo per consentire al computer di avviare il sistema operativo. Inoltre, alcuni software potrebbero non essere in grado di gestire la crittografia per le tecniche di gestione dell’alimentazione del sistema operativo, come gli stati di sospensione o ibernazione.
Il software di crittografia del disco non è immune alle tecniche di attacco. In alcuni software, è possibile eseguire attacchi di dizionario a forza bruta contro le password. Altri tipi di software possono utilizzare le informazioni sui settori del disco in modi non protetti, consentendo il rilevamento di file crittografati su un sistema. Un altro pericolo risiede nella memoria ad accesso casuale (RAM) del computer, dove il sistema operativo ha lasciato residui delle chiavi di crittografia. In quello che viene chiamato attacco di avvio a freddo, il computer può essere rapidamente riavviato e avviato da un sistema operativo separato, che può quindi leggere ciò che è rimasto nella RAM del computer.