Crittografia Dati · 11 min read · Jan 04, 2026
Tutorial di TrueCrypt: Crittografia dei Dati Veramente Portatile
Tutorial di TrueCrypt: Crittografia dei Dati Veramente Portatile
Una breve presentazione delle funzioni del programma
TrueCrypt è un software gratuito che crittografa i dati “on-the-fly”. Al momento l’ultima versione rilasciata è la versione 4.3. Puoi creare un disco rigido crittografato, una partizione separata o una directory con TrueCrypt. Non crittografa semplicemente il contenuto dei file, ma anche i loro nomi e i nomi delle directory in cui si trovano. Inoltre, non c’è modo di controllare la dimensione della directory/HDD/partizione crittografata. TrueCrypt è disponibile per Windows e Linux.
Vantaggi di TrueCrypt:
- crea un disco rigido crittografato e lo monta,
- crittografa un intero disco, una partizione/directory selezionata e persino una chiavetta USB,
- la crittografia è automatica, on-the-fly e trasparente per l’utente
- non c’è modo di controllare la dimensione della partizione/directory crittografata,
- utilizza algoritmi di crittografia come: AES -256, Serpent, Twofish,
- consente la creazione di un volume nascosto,
- in uso non puoi distinguere tra il volume creato e i dati comuni,
- è molto semplice da usare,
- i dischi virtuali creati con TrueCrypt sono completamente indipendenti dal sistema operativo,
- le chiavi di autorizzazione possono essere conservate su una chiavetta USB.
- e molto altro…
Ci sono tre modi per proteggere i dati crittografati:
- con una password,
- con una chiave speciale,
- con sia una password che una chiave.
Cos’è questa chiave? La chiave può essere qualsiasi file dal tuo disco rigido, ad esempio: *.avi, *.mpg o *.txt e persino un’intera directory contenente alcuni file. Attenzione! Fai attenzione a usare un file *.txt come chiave perché se lo modifichi, la chiave cambierà e non sarai in grado di decrittografare i tuoi dati. Cosa succede quando perdi la tua chiave? Non recupererai mai i tuoi dati! Ecco perché ti consiglio di usare sia la chiave che la password come il miglior modo. In questo caso, se perdi la tua chiave, puoi cambiarla inserendo la password corretta, e viceversa. Naturalmente, non esiste una soluzione ideale perché puoi dimenticare la tua password e perdere la tua chiave allo stesso tempo.
Un breve confronto tra TrueCrypt e DM-Crypt
In effetti, è molto difficile dire quale di questi programmi sia migliore. Dopo una laboriosa revisione delle descrizioni delle loro opzioni e delle riflessioni su entrambi, ho realizzato che la soluzione migliore sarebbe combinare entrambi. Entrambi ti consentono di creare un cosiddetto “contenitore” che è un file crittografato che funziona come una directory in cui puoi memorizzare i tuoi file privati (una funzione molto utile quando non vuoi crittografare l’intera partizione). Il grande vantaggio di questi programmi è che possono crittografare i dati mentre li masterizzano su un CD/DVD. Un leggero svantaggio di TrueCrypt può essere che dopo aver ricaricato il kernel potresti dover installare di nuovo il modulo TrueCrypt. D’altra parte, in TrueCrypt puoi utilizzare simultaneamente diversi algoritmi di crittografia! Funziona anche su Windows, quindi se utilizzi entrambi i sistemi, TrueCrypt sarà una scelta migliore.
Come scegliere la migliore chiave?
Personalmente, non consiglio di scegliere alcun file o directory dal tuo disco rigido come chiave. Il modo migliore sarà utilizzare un generatore di chiavi speciale integrato in TrueCrypt. RNG - Random Number Generator - è la funzione, crea alcuni dati casuali con una dimensione massima di 320 byte e li salva in un file precedentemente scelto. Come vengono generati i dati casuali? Se è Linux, RNG utilizza /dev/random o /dev/urandom che rappresentano tutto il rumore generato dai dispositivi collegati al tuo PC, come il mouse e la tastiera.
Come funziona TrueCrypt?
L’intero processo di crittografia è trasparente per l’utente. Quando copi un file nel disco crittografato, i suoi frammenti costitutivi (se è un file grande come un film) vengono copiati nella RAM, quindi crittografati e salvati nel file di destinazione. Il processo di decrittografia è lo stesso. Prima il file, per frammenti, viene decrittografato nella RAM e poi passato all’utente. TrueCrypt non salva mai dati non crittografati sul disco, i dati crittografati sono sempre memorizzati nella RAM. Questo è un metodo molto sicuro che previene l’accesso accidentale ai tuoi file.
Download di TrueCrypt
L’ultima versione del programma la troverai sempre su http://www.truecrypt.org. TrueCrypt ha bisogno di uno strumento chiamato dmsetup per funzionare correttamente. Dmsetup è uno strumento che ti consente di lavorare con dischi logici mappati con il driver device-mapper. L’ultima versione di dmsetup è disponibile su http://sources.redhat.com/dm/. La prima cosa che devi fare dopo aver scaricato il sorgente è installare dmsetup:
tar -zxvf device-mapper.*your_version_no*
cd device-mapper.*your_version_no*
./configure
make
make install (come root o sudo)Se tutto è andato bene, prova a installare TrueCrypt:
tar -zxvf truecrypt-*your_version_no*
cd truecrypt-*your_version_no*Entra nella directory linux e installa:
cd linux
./build.shControllo dei requisiti di build...
Costruzione del modulo del kernel... Fatto.
Costruzione di truecrypt... Fatto.Per prima cosa, lo script controllerà se il tuo sistema soddisfa tutti i requisiti, ti avviserà con informazioni se non riesce a trovare la posizione di un pacchetto. Attenzione! Per installare TrueCrypt correttamente devi avere un kernel 2.6.5 o più recente.
Successivamente esegui:
./install.sh *(come root o sudo)*Controllo dei requisiti di installazione…
Test di truecrypt… Fatto.
Installa i binari in [/usr/bin]: premi [Invio]
Installa la pagina man in [/usr/share/man]: premi [Invio]
Installa la guida utente e il modulo del kernel in [/usr/share/truecrypt]: [Invio]
Consenti agli utenti non amministratori di eseguire TrueCrypt [y/N]: per consentire agli utenti non root di utilizzare TrueCrypt premi [y] altrimenti [N]
Installazione del modulo del kernel… Fatto.
Installazione di truecrypt in /usr/bin… Fatto.
Installazione della pagina man in /usr/share/man/man1… Fatto.
Installazione della guida utente in /usr/share/truecrypt/doc… Fatto.
installazione del modulo del kernel di backup in /usr/share/truecrypt/kernel… Fatto.
Se tutto è proceduto come sopra puoi continuare.
La generazione della chiave
Per generare una chiave digita:
truecrypt --keyfile-create key.txtCerto, puoi scegliere un altro nome per la chiave e l’estensione.
Il tuo mouse è collegato direttamente al computer su cui TrueCrypt è in esecuzione? Premi “Y”, quindi ti verrà chiesto di muovere il mouse.
Se tutto è andato bene, verrà visualizzato il seguente testo: Chiave creata.
La creazione del volume virtuale
Per creare un nuovo volume devi considerare il suo nome e tipo. Ci sono solo due tipi di tale volume: normale e nascosto. Qual è la differenza tra di loro? Il nascosto è proprio questo, nascosto (il posizionamento è diverso - maggiori informazioni sulla homepage di TrueCrypt).
In un terminale digita:
truecrypt -c home.txtCrei un volume chiamato home.txt. L’estensione è a discrezione dell’utente, ho scelto *.txt, perché è più difficile per un potenziale hacker scoprire che si tratta di un volume.
Tipo di volume:
- Normale
- Nascosto
Seleziona [1]: seleziona 1
Filesystem:
- FAT
- Nessuno
Seleziona [1]: seleziona 2, perché creerai un filesystem diverso da FAT
sul tuo volume, il predefinito è FAT
Inserisci la dimensione del volume (byte - size/sizeK/sizeM/sizeG): 10M -
ora dichiari una dimensione per il tuo volume, ho scelto 10 MB
Algoritmo hash:
- RIPEMD-160
- SHA-1
- Whirlpool
Seleziona [1]: scegli hash, suggerisco SHA-1, il predefinito è RIPEMD-160
Algoritmo di crittografia:
1 ) AES
2 ) Blowfish
3 ) CAST5
4 ) Serpent
5 ) Triple DES
6 ) Twofish
7 ) AES-Twofish
8 ) AES-Twofish-Serpent
9 ) Serpent-AES
10 ) Serpent-Twofish-AES
11 ) Twofish-Serpent Seleziona [1]: scegli l’algoritmo, il predefinito è AES
Inserisci la password per il nuovo volume ‘home.txt’: premi [Invio] se non vuoi alcuna password
Re-inserisci la password: premi [Invio] di nuovo
Inserisci il percorso del file chiave [nessuno]: qui inserisci un percorso completo alla chiave o lascia vuoto se non hai alcuna chiave
Inserisci il percorso del file chiave [fine]: ti verrà chiesto di nuovo di inserire il percorso. Nel caso tu abbia più di una chiave, digita un altro percorso, e se hai inserito tutti i percorsi delle chiavi, lascia vuoto e premi [Invio]
TrueCrypt ora raccoglierà dati casuali.
Il tuo mouse è collegato direttamente al computer su cui TrueCrypt è in esecuzione? Premi “Y” se il tuo mouse è direttamente collegato al tuo PC, ma prova a premere “n” e vedere cosa succede
Si prega di digitare almeno 320 caratteri scelti casualmente e poi premere Invio: se inserisci meno di quanto richiesto, il programma ti mostrerà quanti ne mancano
Ora il programma inizierà a creare il tuo volume. Il tempo necessario per questa operazione dipende dalla tua CPU e dalla dimensione del volume. Lo script ti informerà quando sarà completato (Volume creato). Nella home directory di root dovrebbe esserci un file home.txt. Puoi provare ad aprirlo in un elaboratore di testi, le mie congratulazioni se riesci a leggere qualcosa da esso.
Mappatura del volume e creazione del filesystem.
Come ricordi, non hai scelto il filesystem per il tuo volume durante il processo di creazione. Ecco perché devi farlo ora. Questo è necessario perché TrueCrypt utilizza lo strumento Linux mount per montare un volume che deve ricevere un filesystem come opzione.
Inserisci:
truecrypt /root/home.txt -k /root/keyInserisci la password per ‘/root/home.txt’: se non c’è password per questo volume premi semplicemente [Invio]
OK. Per controllare se la mappatura è andata bene digita:
truecrypt -vl(mostra informazioni sui dispositivi mappati)
Se non ci sono informazioni, significa che qualcosa è andato storto.
Ora crei un filesystem:
mkfs.ext3 /dev/mapper/truecrypt0Puoi scegliere qualsiasi filesystem
Il filesystem è stato creato.Montaggio dei volumi creati
Ora che hai creato un filesystem sul tuo volume e lo hai mappato, puoi montarlo in qualsiasi directory.
Per fare ciò digita:
truecrypt -d /dev/mapper/truecrypt0smonta il volume
mkdir encrypted -crea una directory chiamata “encrypted”, questa è la directory in cui monterai il volume
truecrypt /root/home.txt -k /root/key /root/encryptedmonta il volume nelle directory crittografate
Fatto! D’ora in poi, tutti i dati salvati nella directory “encrypted” saranno crittografati.
Ma cosa dovresti fare per crittografare una directory già esistente? Questo è molto semplice. Basta spostare i dati da questa directory, quindi montare il volume in questa directory e spostare i dati di nuovo in questa directory. Ricorda di rendere il volume adeguatamente grande quando dichiari la sua dimensione, perché altrimenti non potrà contenere tutti i dati. La dimensione del volume dovrebbe essere un po’ più grande della dimensione della directory.
Montaggio automatico dopo il riavvio.
Come scoprirai, dopo un riavvio dovrai montare di nuovo il volume. C’è un modo semplice per farlo. Navigando in un forum sulla homepage di TrueCrypt ho raccolto due diverse soluzioni:
- aggiungere uno script a /etc/init.d o /etc/rc.d,
- creare nella home directory un file di configurazione chiamato .profile e modificarlo correttamente.
Ti consiglio di utilizzare il secondo modo che descrivo di seguito. Perché? C’è un motivo semplice. Diciamo che hai protetto il volume con una chiave e una password o anche solo con una password. In questo caso, eseguendo gli script di avvio posizionati nelle directory init.d o rc.d, dovrai inizializzare TrueCrypt con il parametro -p e la password sarebbe esplicitamente scritta lì, il che non è la soluzione più intelligente. In questo modo chiunque potrebbe leggere la tua password.
Forse c’è già un file .profile nella tua home directory, ma se non c’è:
touch .profile - crea un nuovo file .profileApri .profile in un editor e aggiungi la seguente riga:
truecrypt /root/home.txt -k /root/key /root/encryptedSalva le modifiche e lascia l’editor. Ora, ogni volta che accedi al sistema, TrueCrypt ti chiederà la tua password (che non hai perché in questo esempio sei identificato solo dalla chiave, quindi premi semplicemente [Invio]) e il volume virtuale sarà montato.
Posso tenere la chiave su una pendrive/chiavetta USB?
Sì, c’è questa opzione, e puoi credermi non è così difficile. La prima cosa che devi fare è montare automaticamente l’unità USB all’avvio. Per fare ciò devi modificare /etc/fstab. Quindi crea una nuova directory per la pendrive in /mnt:
mkdir /mnt/pendriveAll’inizio devi vedere dove si trova la pendrive nel sistema. Inserisci la pendrive nella porta USB e esegui il seguente comando:
dmesg > output.txtAlla fine del file dovrebbe esserci una riga come questa:
usb 1-1: configurazione #1 scelta da 1 scelta
uba: uba1Come puoi vedere nel mio PC l’unità USB è in /dev/uba1. Potresti averla in /dev/sda*. Ora devi modificare /etc/fstab. Aggiungi questa riga:
/dev/uba1 /mnt/pendrive auto defaults 0 0Quindi digita:
mount /mnt/pendriveIl passo successivo è spostare la chiave nell’unità USB e cambiare la riga nel tuo file .profile contenente il percorso alla chiave /mnt/pendrive. Fatto!
Ora il sistema monta automaticamente il volume virtuale dopo il riavvio. Quali sono gli svantaggi del montaggio automatico? Diciamo che hai un fratello molto curioso e non vuoi che abbia accesso ad alcune parti del tuo sistema (indipendentemente dal fatto che tu stia lavorando su Windows o Linux). Se ti autorizzi solo con la chiave, e questa è posizionata da qualche parte sull’HDD, allora dopo il boot i dati vengono decrittografati. “Ma tengo la mia chiave sull’unità USB”. E se dimentichi di toglierla dal PC dopo il lavoro?
Il futuro
Nel prossimo futuro gli sviluppatori di TrueCrypt stanno pianificando di estendere le sue funzionalità:
- la versione MAC OS,
- aggiungere un’autenticazione esterna (quindi ci sarà la possibilità di decrittografia attraverso la rete/Internet),
- costruire un’interfaccia GUI ufficiale per TrueCrypt,
- e molto altro…
Ci sono strati GUI non ufficiali per TrueCrypt? Certo che ci sono. Ti consiglio di dare un’occhiata alla seguente pagina web: TruecryptGUI su GoogleCode. Per ulteriori informazioni visita il forum di TrueCrypt.
Traduzione in inglese: Borys Musielak
Correzione: T_ziel
Autore: Marcin Lipiec aka “lipiec”
Questo testo è stato pubblicato per la prima volta in polishlinux.org
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.