Cloud e crittografia

cloud, nuvola

Siamo arrivati qui, abbiamo visto come, su linux possiamo creare cartelle crittate, sul nostro cloud. Ovviamente abbiamo scaricato l’applicazione che ci consente di operare dal nostro desktop, sul nostro account1. Ci crea una cartella chiamata Dropbox nella nostra /home, connessa al nostro account su dropbox: il cloud.

Abbiamo visto come creare una cartella crittata utilizzando encfs su una qualsiasi versione linux, da consolle. Vediamo ora il procedimento per crearne una personalizzata: lanciamo sempre encfs con il nome della nuova cartella e di quella crittata, che sarà nascosta, quindi inizia con .

xxx@xxx:~$ encfs ~/Dropbox/.prova1 ~/Dropbox/prova1
Creazione nuovo volume cifrato.
Scegliere tra una delle seguenti opzioni:
digitare “x” per la modalità di configurazione per esperti,
digitare “p” per la modalità paranoica preconfigurata.
qualsiasi altra cosa o una riga vuota selezionerà la modalità standard.
?> x

In questo modo scegliamo di fare una configurazione personalizzata.

Selezionata la configurazione manuale.
Sono disponibili i seguenti algoritmi di cifratura:
1. AES : 16 byte block cipher
— Supporta lunghezze chiave da 128 a 256 bit
— Supporta dimensioni blocco da 64 a 4096 byte
2. Blowfish : 8 byte block cipher
— Supporta lunghezze chiave da 128 a 256 bit
— Supporta dimensioni blocco da 64 a 4096 byte

Inserire il numero corrispondente alla propria scelta: 1

Selezionato l’algoritmo “AES”

Come dice lo schermo, ho selezionato di criptare utilizzando l’algoritmo AES. Passiamo ora alla prossima, la lunghezza della chiave, imposto la più lunga, 256 bit:

Selezionare una dimensione di chiave in bit. Il cifrario scelto
supporta dimensioni da 128 a 256 bit a incrementi di 64 bit.
Per esempio:
128, 192, 256
Dimensione chiave selezionata: 256

È in uso una dimensione della chiave di 256 bit

Ci chiede poi quale sia la lunghezza dei blocchi che preferisco, mi sta bene 1024 byte:

Selezionare una dimensione del blocco in byte. Il cifrario scelto
supporta dimensioni da 64 a 4096 byte a incrementi di 16.
Oppure premere Invio per il valore predefinito (1024 byte)

dimensione del blocco per il file system: 1024

È in uso una dimensione del blocco di 1024 byte per il file system

Passeremo poi all’algoritmo di codifica dei titoli dei file, non mi serve aggiungere elementi, per cui selezioni la formula corta:

Sono disponibili i seguenti algoritmi di codifica dei nomi file:
1. Block : Block encoding, hides file name size somewhat
2. Block32 : Block encoding with base32 output for case-sensitive systems
3. Null : No encryption of filenames
4. Stream : Stream encoding, keeps filenames as short as possible

Inserire il numero corrispondente alla propria scelta: 4

Selezionato l’algoritmo “Stream””

Ci pone poi una serie di domande specifiche, dove accetto la proposta standard, tra parentesi quadre, mi limito a dare “invio”:

Abilitare la concatenazione del vettore di inizializzazione dei nomi dei file?
In questo modo la codifica del nome del file dipende dal percorso completo
piuttosto che dal codificare ogni elemento del percorso singolarmente.
[y]/n:

Abilitare i vettori di inizializzazione per file?
In questo modo vengono aggiunti 8 byte ai requisiti di archiviazione.
Non dovrebbe compromettere le prestazioni eccetto con applicazioni
che si basano su I/O “block-aligned” sui file .
[y]/n:

Abilitare la concatenazione del nome del file all’intestazione del vettore di inizializzazione?
In questo modo la codifica dei dati dipende dal percorso completo del file.
Se un file viene rinominato, non verrà decodificato a meno che non sia
stato rinominato da encfs con la chiave adatta.
Se questa opzione è abilitata, i collegamenti non saranno supportati
all’interno del file system.
y/[n]: n

Abilitare intestazioni di codice d’autenticazione del blocco
per ogni blocco in un file? In questo modo vengono aggiunti 12 byte per blocco
ai requisiti di archiviazione di un file e ne compromette significativamente le
prestazioni, ma quasi tutte le modifiche o gli errori all’interno di un blocco
sono rilevati e causano un errore di lettura.
y/[n]: n

Aggiungere byte casuali a ciascuna intestazione del blocco?
In questo modo vengono compromesse le prestazioni, ma si
assicura che i blocchi abbiano diversi codici di autenticazione.
Notare che è possibile avere gli stessi benefici abilitando i
vettori di inizializzazione specifici per ciascun file con
una minore perdita di prestazioni.
Scegliere un numero di byte, da 0 (nessun byte casuale) a 8: 0

Lasciare inalterati i file frammentati?
Ciò evita di scrivere blocchi criptati quando i file frammentati vengono creati.
[y]/n: y

Configurazione terminata. Il file system da creare avrà
le seguenti proprietà:
Cifrario file system: “ssl/aes”, versione 3:0:2
Codifica nome dei file: “nameio/stream”, versione 2:1:2
Dimensione chiave: 256 bit
Dimensione blocco: 1024 byte
Ogni file contiene 8 byte di intestazione con dati del vettore di inizializzazione unici.
Nomi dei file cifrati usando la modalità di concatenazione del vettore di inizializzazione.
File frammentati inalterati per il testo cifrato

Passiamo alla fase finale, l’impostazione dela password, ne compongo una alfanumerica con simboli di punteggiatura e speciali, di 24 caratteri. Ovviamente la digitazione non è visibile:

Ora è necessario creare una password per il proprio file system.
È necessario ricordare questa password, dato che non esiste alcun modo
per recuperarla automaticamente. In ogni caso, la password potrà essere
cambiata utilizzando encfsctl.

Nuova password di Encfs:
Conferma password di Encfs:

La nostra cartella è pronta, criptata sul nostro desktop e su dropbox; ogni volta che dovremo aprirla per leggere o modificare i file, ci chiederà la password che abbiamo impostato:

xxx@xxx:~$ encfs ~/Dropbox/.prova1/ ~/Dropbox/prova1/
Password di EncFS:

Quando avremo terminato di interagire coi nostri file, o di aggiungerne di nuovi, la smontiamo riportandola allo stato crittografato:

xxx@xxx:~$ fusermount -u ~/Dropbox/prova1

Come potete vedere in questo caso usiamo il comando fusermount, seguito dall’identificativo di utente, quello standard, -u e il percorso della cartella. ~/Dropbox2.

Fin qui ci siamo, ma io voglio collegarmi anche con il tablet e lo smartphone, che hanno android; su android non posso installare encfs: come posso fare?

Lo vedremo prossimamente.

cloud


1 – in questo caso stiamo parlando di un cloud o account su dropbox.
2 – la tilde, il simbolo ~ indica /home/utente/.

Annunci

Autore: Pietro Barnabe'

Restauratore artigiano di: opere d'arte, arredi lignei fissi e mobili, materiale lapideo anche decorato e dipinto, materiale etnografico.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...