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.sh
Controllo 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.txt

Certo, 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.txt

Crei 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:

  1. Normale
  2. Nascosto
    Seleziona [1]: seleziona 1

Filesystem:

  1. FAT
  2. 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:

  1. RIPEMD-160
  2. SHA-1
  3. 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/key

Inserisci 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/truecrypt0

Puoi 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/truecrypt0

smonta 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/encrypted

monta 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 .profile

Apri .profile in un editor e aggiungi la seguente riga:

truecrypt /root/home.txt -k /root/key /root/encrypted

Salva 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/pendrive

All’inizio devi vedere dove si trova la pendrive nel sistema. Inserisci la pendrive nella porta USB e esegui il seguente comando:

dmesg > output.txt

Alla fine del file dovrebbe esserci una riga come questa:

usb 1-1: configurazione #1 scelta da 1 scelta  
uba: uba1

Come 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  0

Quindi digita:

mount /mnt/pendrive

Il 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

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.