SimplyTech | Support (FAQ, HowTo, etc) | CDCript | DiskLock | SecureMEDIA | Forum | Recupero Dati | Ricerca Password | Software on demand | Contacts | E-mail |
WebDesigner Copywrite 2002. '


 

 

*** Criptare ***
Nozioni di base


Che cos’è la crittografia

Con il termine crittografia si intende un insieme di operazioni volto a rendere una data informazione del tutto incomprensibile ad occhi indiscreti.

Fino a non molto tempo fa l’arte della crittografia era accessibile esclusivamente alle strutture militari (scambio di messaggi in codice per evitare che il nemico, intercettandoli, li utilizzasse a suo vantaggio), mentre fortunatamente oggigiorno esistono i personal computer che, con la loro sempre maggiore capacità di elaborazione, rendono accessibili a chiunque tecniche crittografiche caratterizzate da un ottimo livello di sicurezza.

I protagonisti del processo di crittografia sono:

·         Il messaggio, cioè l’informazione che si vuole proteggere da sguardi indiscreti;

·         l’algoritmo, ovvero la legge (i più matematici direbbero “l’applicazione biunivoca”) che al messaggio in chiaro (leggibile da chiunque) fa corrispondere il messaggio cifrato (leggibile solo dal destinatario);

·         la chiave di lettura del messaggio, ovvero il mezzo che ci permette di passare dal messaggio cifrato al messaggio in chiaro tramite l’algoritmo;

·         la chiave di scrittura del messaggio, ovvero il mezzo che ci permette di passare dal messaggio in chiaro al messaggio cifrato tramite l’algoritmo (normalmente la chiave di scrittura e quella di lettura sono una l’inversa dell’altra; in alternativa, si può utilizzare la stessa chiave per scrivere e leggere il messaggio, invertendo però l’algoritmo).

Facciamo un banale esempio, sia dato il messaggio:

“IL NEMICO ATTACCHERA’ STASERA”

e supponiamo di volerlo trasmettere via radio alle nostre truppe ammassate sul confine (gli esempi di tipo militare si sprecano nella letteratura dedicata alla crittografia).

Scegliamo come algoritmo la semplice sostituzione lettera per lettera, e stabiliamo che la chiave di scrittura sia “sostituire ad ogni lettera del messaggio in chiaro quella successiva dell’alfabeto occidentale”; otterremo il seguente messaggio cifrato:

“JM OFNJDP BUUBDDIFSB’ TUBTFSB”

che, preso così com’è, risulta incomprensibile a chiunque.

La chiave di lettura, in questo caso, è naturalmente “sostituire ad ogni lettera del messaggio cifrato quella precedente dell’alfabeto occidentale”: le nostre truppe avranno già la chiave di lettura (avremo provveduto a darla loro prima di mandarli al confine), quindi decifreranno correttamente il messaggio, mentre il nemico inizialmente non capirà nulla riguardo al contenuto del messaggio.

Ma ogni struttura militare che si rispetti ha un “reparto cifra”, cioè ha i suoi esperti nella decodifica dei messaggi cifrati, pertanto questo banale sistema di cifratura verrebbe risolto in pochi minuti; fortunatamente però oggi esistono degli algoritmi di cifratura veramente molto complicati, tanto che una volta scelta la chiave e cifrato il messaggio, al nemico occorrerebbero anni di duro lavoro per riuscire a decifrarlo.

Appare anche chiaro che, una volta capito il meccanismo, nel nostro esempio il nemico otterrebbe automaticamente la chiave, e quindi sarebbe in grado di decifrare tutti gli eventuali messaggi che successivamente inviassimo alle nostre truppe senza alcuno sforzo.

La sostituzione usata nell’esempio non è che il più banale degli algoritmi, ed un esperto riuscirebbe a risolvere il problema (in gergo, riuscirebbe a craccare l’algoritmo) in un tempo brevissimo; proviamo invece ad usare un comune programma di crittografia per PC, che si chiama PGP ed è attualmente molto in voga, ed usiamo la chiave di scrittura/lettura:

“OSIRIS”

(l’algoritmo usato dal PGP è ben più complicato di quello di sostituzione, e permette di usare come chiavi di scrittura/lettura intere parole o frasi, che possiamo scegliere a nostro piacimento).

Ebbene, il nostro messaggio crittato col PGP rispetto alla chiave di lettura OSIRIS darà come risultato la frase:

qANQR1DDBAQDAAHJMnfkZJM97gVjR3OS/ek2Hq+UkroOCEeuGPfKTCM1/
trTsEoN

Zk6+5lFqdVfuO7QIsESW

=8PL2

Non è che si capisca molto, vero? Il PGP ha infatti trasformato il messaggio originale in questa serie di lettere e numeri apparentemente senza senso (si noti come il cifrato contenga molti più caratteri del messaggio originale, per vari motivi che non staremo a spiegare qui), e non sarà affatto semplice per il nemico riottenere il messaggio originale!

 

Tecniche di attacco ad un messaggio crittografato

E’ evidente che il nemico, d’ora in poi chiamato attaccante, non si darà per vinto senza combattere: una volta che avrà intercettato lo strano messaggio, comincerà a guardarlo, a rigirarlo, a cercare di capire come poterlo decifrare.

Mentre nel primo esempio, volutamente banale, l’attaccante può facilmente arrivare alla soluzione semplicemente leggendo e rileggendo il cifrato, nel secondo esempio avrà una vita ben più grama: ammesso che sia a conoscenza del fatto che noi abbiamo utilizzato il PGP per cifrare il messaggio (ed è buona norma che questo noi non glielo facciamo sapere, per non dargli un punto di partenza nel suo lavoro di cracking), lui dovrà comunque procedere per tentativi.

Infatti, supponendo che l’attaccante abbia sia il messaggio che il programma PGP, gli toccherà “provare” tutte le chiavi che gli vengono in mente: solo quando inserirà la parola “OSIRIS” (se mai gli verrà in mente di provarla) magicamente gli apparirà il testo del messaggio originale.

Un algoritmo di cifratura viene detto forte quando, pur conoscendolo alla perfezione (nel nostro caso, essendo entrati in possesso del programma PGP), non è assolutamente possibile decifrare tramite esso il messaggio se non si possiede la chiave di lettura.

Nel primo esempio, invece, si è volutamente utilizzato un algoritmo di cifratura debole (la sostituzione): gli algoritmi deboli hanno il vantaggio di essere semplici da utilizzare, ma hanno anche lo svantaggio di poter essere risolti (seppur dopo molti tentativi… quello utilizzato nell’esempio era di tipo puramente didattico) senza aver bisogno della chiave di lettura.

Trovare la chiave giusta quando si ha a che fare con un algoritmo di cifratura forte è un lavoro veramente ingrato, visto che si procede provando tutte le chiavi possibili, tant’è vero che questo lavoro viene normalmente svolto da potenti calcolatori, i quali tenteranno tutte le combinazioni possibili di lettere e numeri finché non trovano quella “vincente”.

Nel nostro caso, l’attaccante darà in pasto al suo computer il messaggio cifrato, ed il computer (mediante programmi appositamente creati allo scopo) comincerà a provare le seguenti possibilità:

A B C D… Z

Cioè proverà ad una ad una tutte le singole lettere dell’alfabeto; fatto questo, passerà alle coppie:

AA AB AC… AZ

BA BB BC… BZ

CA CB CC… CZ

………………….

ZA ZB ZC… ZZ

E così via di seguito con le triplette:

AAA AAB AAC… AAZ

ABA ABB ABC… ABZ

…………………………

ZZA ZZB ZZC… ZZZ

Eccetera eccetera… fino ad arrivare, dopo un tempo dipendente dalla velocità del computer in uso, alla parola “OSIRIS”, che magicamente decodificherà il messaggio.

Ovviamente questo processo verrà svolto dal computer dell’attaccante ad una velocità impensabile per la mente umana, ma il computer sarà stato programmato dall’attaccante stesso in modo da riconoscere le frasi che abbiano un senso in lingua italiana (o inglese, o quel che volete), scartando le altre; in altre parole, il computer fermerà la sua ricerca solo quando otterrà una frase che abbia senso (nel nostro caso “IL NEMICO ATTACCHERA’ STASERA”), mentre fino ad allora farà tentativi su tentativi alla massima velocità di cui è capace.

 

Difendere i dati custoditi nel proprio PC con DiskLock

Nulla ci vieta di considerare come “messaggio” l’intero contenuto del nostro hard disk: se crittiamo tale contenuto, utilizzando un algoritmo di crittografia forte ed una chiave di scrittura/lettura sufficientemente affidabile e segreta (vedremo più avanti come e perché scegliere una chiave adatta), l’eventuale attaccante non potrà accedere ai dati custoditi nel nostro PC, che risulteranno globalmente e definitivamente al sicuro!

DiskLock fa proprio questo: in una prima fase, quella di installazione, procede alla cifratura di tutto l’hard disk del nostro computer rispetto ad una chiave (che d’ora in poi chiameremo password); successivamente, ad ogni accensione del PC ci verrà richiesta questa password, senza la quale il PC non potrà funzionare (o, per meglio dire, non potrà in alcun modo accedere all’hard disk perché questo è interamente crittato).

Una volta digitata correttamente la password, il nostro PC funzionerà normalmente perché DiskLock, in maniera completamente automatica e trasparente, si prenderà la briga di decrittare i soli dati dell’hard disk che stiamo usando, mentre li stiamo usando: questo è estremamente importante in quanto, anche nel caso andasse via la corrente interrompendoci mentre stavamo lavorando al PC, ad una successiva riaccensione ci ritroveremmo comunque con l’intero hard disk crittato.

Nel caso improbabile che l’attaccante, armi alla mano, facesse irruzione in casa nostra ordinandoci di allontanarci immediatamente dal PC e di consegnarglielo, noi non dovremo far altro che spegnerlo di brutto (senza curarci di arrestare il sistema, ovviamente): se l’attaccante porterà via il nostro PC, ad una successiva riaccensione avrà l’amara sorpresa di non poter accedere ai dati che credeva di averci carpito con l’uso della forza.

Può anche accadere che l’attaccante, sempre armi alla mano, ci impedisca di spegnere il PC: in tal caso potrà vedere i nostri dati e, tutto soddisfatto per il lavoro svolto, deciderà di portarselo via…ma dovrà pur spegnerlo per poterlo trasportare (se il PC è di tipo fisso la cosa è ovvia, ma anche trattandosi di un portatile la batteria avrà un’autonomia limitata); ebbene, alla successiva riaccensione l’attaccante avrà l’amara sorpresa di non poter accedere all’hard disk, e di non sapere nemmeno il perché (DiskLock infatti, all’avvio del PC, congela il sistema in attesa che noi digitiamo la password giusta, ma non ce la chiede esplicitamente, facendo credere all’ignaro attaccante che il PC sia rimasto inspiegabilmente bloccato).

Se invece il nemico usasse l’astuzia ed accendesse il nostro PC nottetempo, dovrebbe conoscere la password giusta, altrimenti nulla da fare: non riuscirà nemmeno a vedere la schermata iniziale di Windows, perché senza la password il nostro hard disk sarà pieno di bytes assolutamente indecifrabili (ed anche in questo caso sembrerà che il PC sia rimasto bloccato: lo ripetiamo, DiskLock non richiede esplicitamente la password all’avvio del sistema).

 

Suggerimenti utili (valgono per DiskLock, ma si adattano bene a qualsiasi programma di crittografia)

·         La scelta della password va fatta con accuratezza: sarebbe veramente stupido scegliere come password il nome della propria moglie/fidanzata, dei propri figli, oppure la propria data di nascita, oppure ancora il proprio codice fiscale, o comunque qualsiasi parola/numero che ci riguardi o che sia riconducibile a noi. Ipotizzando infatti che l’attaccante già conosca DiskLock, per prima cosa proverà tutte quelle password fatte da parole/cifre riconducibili a noi, per cui se vi chiamate Mario Rossi, vostra moglie si chiama Martina e vostro figlio si chiama Nicola, per favore evitate assolutamente di utilizzare password del tipo “Mario”, “Martina”, “Nicola” (lo stesso vale per le rispettive date di nascita, per l’anniversario di matrimonio, per il nome del vostro cane eccetera). In caso contrario, gli anni necessari a provare tutte le password possibili fino a trovare quella giusta si trasformerebbero tragicamente in pochi minuti di lavoro da parte dell’attaccante. Una buona password potrebbe essere ad esempio fG8bW47j55Kz3Y (nient’altro che un gruppo di lettere, sia maiuscole che minuscole, e numeri senza alcun senso logico: li abbiamo scritti così come ci sono venuti in mente)…ma voi non dovrete usarla semplicemente per il fatto che l’abbiamo scritta su questo manuale, quindi l’attaccante, sperando nella vostra ingenuità, la proverebbe sicuramente. E diffidate anche di tutte quelle parole/nomi che abbiano un senso compiuto nella lingua italiana e/o inglese: questo perché l’attaccante, dopo aver esaurito tutte le parole/numeri che possono riguardarvi, proverà immediatamente ad usare tutti i termini contenuti in un normale vocabolario della lingua italiana (o inglese). Infatti i programmi creati per “trovare” le password, molto utilizzati dai crackers (cioè dagli specialisti del settore impegnati nella decodifica di messaggi cifrati) hanno già nel loro interno un ricco vocabolario delle lingue più diffuse, che contiene qualche centinaio di migliaia di parole: verranno prima provate tutte queste parole, dopodiché il programma “trovapassword” passerà alle stringhe di caratteri senza alcun senso logico. Quindi, se vi chiamate Mario Rossi, non solo saranno vietate password come “Mario”, “Rossi”, “Martina”, “Nicola” (che saranno tutte provate a mano dall’attaccante), ma saranno vietate anche password come “Luca” (sebbene nessun vostro familiare/amico si chiami Luca), e saranno altresì vietate password come “nuotare” (perché è un verbo della lingua italiana, quindi verrà provato subito dal programma “trovapassword”); ancora, saranno vietate password come “precipitevolissimevolmente” (questa parola, pur non appartenendo propriamente alla lingua italiana, viene spesso usata come esempio in quanto molto lunga). Prima di arrivare ad “fG8bW47j55Kz3Y”, invece, il programma “trovapassword” ne avrebbe di tentativi da fare (lo vedremo più avanti in dettaglio).

·         La custodia della password è altrettanto importante: scegliere una parola impossibile da pronunciare (e da immaginare) come “fG8bW47j55Kz3Y”, e poi tenerla scritta su un post-it attaccato al monitor del proprio PC non è evidentemente una buona idea. Le password andrebbero imparate a memoria, questa è la verità (ed è anche l’unico modo per non trovarsi con le pive nel sacco in caso di perquisizioni/furti/intrusioni telematiche ai danni del proprio PC); siccome però una buona password è veramente difficile da ricordare, almeno per le prime volte, potrete sempre scriverla su un foglietto da custodire gelosamente nel vostro portafogli, avendo naturalmente cura di distruggere il foglietto non appena vi accorgerete di non averne più bisogno per ricordare la password!

·         ATTENZIONE! ATTENZIONE! ATTENZIONE! Questo vale sia per DiskLock che per qualsiasi buon programma di crittografia, quindi imprimetevelo a fuoco in mente: qualora doveste dimenticare la password, non potrete più accedere ai vostri dati! Nemmeno gli autori di DiskLock possono aiutarvi in tal senso, in quanto nemmeno loro possono accedere al vostro hard disk senza la password! Questo perché non esiste alcun modo per farlo! Dovesse capitarvi di smarrire la password, non vi resta altro da fare che rassegnarvi alla perdita di tutti i dati che si trovavano nel vostro PC, formattare l’hard disk e reinstallare Windows. Ma, naturalmente, questo fatto testimonia la potenza di DiskLock: l’attaccante, senza password, non potrà conoscere il contenuto del vostro hard disk neanche nei suoi sogni più proibiti, non importa quanto bravo egli sia dal punto di vista informatico…semplicemente, lo ripetiamo, non esiste modo per farlo!

·         Custodire il dischetto contenente DiskLock in un luogo sicuro non sarebbe, di per sé, una precauzione necessaria: pur entrando in possesso del programma, l’attaccante potrebbe fare ben poco senza la password. Ma è bene tenere tale dischetto (ed il manuale che state leggendo) lontano dal PC da proteggere (e lontano dall’ufficio/camera che ospita tale PC) semplicemente perché in tal modo l’attaccante non sospetterà nemmeno il fatto che DiskLock è installato e attivo sul vostro computer. In caso contrario, voi dovreste sicuramente patire le minacce dell’attaccante determinato, che potrebbe tentare di estorcervi la password con la forza…ma vogliamo qui ricordare, incidentalmente, che un vuoto di memoria non costituisce reato, e che quindi non siete perseguibili se proprio non riuscite a ricordare la vostra complicatissima password. Se invece l’attaccante nemmeno sospetta l’esistenza di DiskLock, quando riavvierà il vostro PC e lo vedrà “congelato”, con tutta probabilità penserà di avergli procurato un guasto (ed a questo punto avreste tutto il diritto di chiedergli i danni per avervi fatto perdere il vostro lavoro)!

 

DiskLock ed alcune problematiche di crittografia visti più in dettaglio

La password alfanumerica che sceglierete per proteggere i vostri dati tramite DiskLock viene in realtà utilizzata dal programma per crearne un’altra, di tipo binario, che ha una lunghezza fissa di 128 bit e che non è visibile all’utente: questo perché si è visto che il complesso algoritmo utilizzato da DiskLock per effettuare la cifratura/decifratura dei dati mentre questi vengono letti/scritti su hard disk (o, come si dice in gergo, on the fly) risulta molto veloce, sicuro ed efficiente se viene utilizzata una chiave binaria da 128 bit.

Ma la password che noi immettiamo sarà generalmente composta da caratteri maiuscoli e minuscoli dell’alfabeto, nonché dalle cifre comprese tra 0 e 9: quanto tempo ci metterà l’attaccante a trovare la nostra password, ammesso che abbia il tempo e la voglia di cercarla seriamente mediante un programma “trovapassword”?

Tutto dipende dalla velocità del computer usato dall’attaccante, naturalmente: negli esempi che seguiranno, supporremo che tale computer (detto in gergo cracking machine, in quanto viene utilizzato esclusivamente per decifrare messaggi cifrati) possa provare e controllare un milione di chiavi al secondo, realizzando un attacco che in gergo viene definito brute force attack.

Supponiamo dapprima di lavorare soltanto in sistema binario, cioè con soli 0 ed 1 (insomma, nel modo in cui pensa e lavora qualsiasi computer), avremo i seguenti casi:

·         Chiave ad 1 bit, cioè una singola cifra binaria: le possibilità sono 0 o 1, cioè soltanto 2, e la cracking machine in questo caso decifrerà il messaggio in appena 2 milionesimi di secondo, nel caso peggiore. Questo è ovvio, perché la cracking machine proverà dapprima il valore 0 e poi, se non era quello giusto, proverà il solo altro valore possibile. In altre parole, una chiave ad 1 bit permette solo 2^1 = 2 combinazioni.

·         Chiave a 2 bit, cioè una chiave fatta accostando due cifre binarie: i valori possibili sono adesso 4, ovvero 00, 01, 10, 11. Male che vada, la cracking machine troverà la chiave giusta in 4 tentativi, cioè in 4 milionesimi di secondo (evidentemente una chiave a 2 bit non è molto sicura). In altre parole, una chiave a 2 bit permette 2^2 = 4 combinazioni.

·         Chiave a 16 bit, cioè una chiave fatta accostando 16 cifre binarie: i valori possibili sono adesso 2^16 = 65536, e male che vada la cracking machine troverà la chiave giusta in 65536 tentativi, ovvero in 65536 milionesimi di secondo, ovvero ancora in poco più di 65 millisecondi…ancora troppo poco. A titolo di esempio, una chiave a 16 bit (buttata lì a caso) potrebbe essere 1011010001101011.

·         Chiave a 40 bit, cioè una chiave fatta accostando 40 cifre binarie: i valori possibili sono adesso 2^40 = cioè circa 1.1*10^9, leggasi 1100 miliardi. Male che vada, la cracking machine ci metterà adesso poco meno di 13 giorni per trovare la chiave giusta; una chiave a 40 bit è fatta così (ovviamente ne indichiamo una a caso): 0110010100011110001001110101110010000010. Incidentalmente, sembra che il sistema GSM attualmente utilizzato per la telefonia cellulare utilizzi un algoritmo di crittazione, denominato A5, che utilizza proprio una chiave a 40 bit; appare inoltre evidente dagli esempi fatti che il tempo necessario alla cracking machine per decrittare il messaggio aumenta esponenzialmente con le dimensioni della chiave da forzare. Quanto appena detto significa che un malintenzionato potrebbe decifrare una nostra conversazione telefonica via GSM (dopo averla registrata) in alcuni giorni di lavoro, ed in genere questo viene considerato abbastanza soddisfacente in termini di sicurezza, perché dopo 13 giorni l’informazione contenuta in una convenzionale telefonata tra uomini d’affari può esser tranquillamente considerata “vecchia”… ciò non vale evidentemente per le Forze dell’Ordine, che non hanno alcun bisogno di craccare la chiave A5 della nostra utenza GSM (andranno invece dal nostro Gestore telefonico con un mandato ed ascolteranno tranquillamente la nostra conversazione, in chiaro naturalmente).

·         Chiave a 128 bit: è quella utilizzata dal DiskLock, le combinazioni possibili sono 2^128, la cracking machine dell’esempio potrebbe metterci (male che vada) circa 11*10^24 anni prima di arrivare alla soluzione. Si noti che 11*10^24 anni vuol dire 11000000000000000000000000 anni!

E’ ovvio che si potrebbe disporre di cracking machines migliaia volte più potenti di quella ipotizzata (ad esempio facendone lavorare molte in parallelo), ma considerata l’enormità del numero, ci vorrebbero comunque milioni di anni per provare tutte le combinazioni offerte da una chiave a 128 bit.

Ma allora perché abbiamo inserito la sibillina frase “male che vada” in tutti gli esempi appena esposti? E’ presto detto:

·         Supponiamo che l’attaccante sia Paolino Paperino, il simpatico quanto eternamente sfortunato personaggio di Walt Disney: ebbene, Paperino dovrà aspettare che la sua cracking machine abbia provato TUTTE le combinazioni possibili con una chiave da 128 bit; considerando la sua solita sfortuna, possiamo esser certi che la chiave giusta sarà l’ultima provata dalla cracking machine, e quindi Paperino si dovrà sciroppare 11000000000000000000000000 anni di attesa.

·         Supponiamo adesso che l’attaccante sia Gastone Fortunato, l’odiosissimo cugino di Paperino, sempre baciato dalla fortuna: ebbene, proprio confidando nella sua solita fortuna, Gastone avvierà la cracking machine che azzeccherà per lui la chiave giusta al primo tentativo, cioè dopo appena un milionesimo di secondo! O, il che è lo stesso, farà a meno della cracking machine ed introdurrà lui stesso, a mano, 128 cifre binarie scelte a caso, naturalmente azzeccando la chiave giusta al primo tentativo.

In realtà nessun sistema di crittografia può essere considerato totalmente sicuro, per quel che abbiamo appena detto; tuttavia noi comuni mortali, pur non essendo sfortunati come Paperino, non saremo nemmeno fortunati come Gastone, quindi se la password sarà stata scelta, lo ripetiamo ancora una volta, con cura (cioè evitando parole note), occorreranno mediamente milioni di anni all’attaccante prima di avere la meglio sul DiskLock… e questo supponendo che l’attaccante sia un bravissimo programmatore, un capace cracker, dotato di computer molto potenti e capace di scrivere un programma “cercapassword” in grado di interagire col DiskLock.

Prima abbiamo detto che DiskLock utilizza un complesso algoritmo per ottenere una chiave binaria a 128 bit partendo da una password inserita dall’utente, ma è necessario essere più precisi in merito, come al solito utilizzando alcuni esempi:

·         Supponiamo che l’utente scelga la password a, cioè una password composta da una sola lettera: da questa DiskLock ricaverà la sua chiave a 128 bit, e con questa critterà l’hard disk. Naturalmente all’attaccante non interesserà assolutamente conoscere i 128 bit, in quanto gli servirà soltanto inserire la password a per poter accedere all’hard disk. Notiamo come le lettere dell’alfabeto siano 26 (minuscole), alle quali possiamo aggiungere altre 26 lettere (le maiuscole) e 10 numeri (dallo 0 al 9), per un totale di 26+26+10 = 62 combinazioni possibili utilizzando una password composta da un solo carattere. Ma il DiskLock permette di usare password composte non soltanto da lettere maiuscole, lettere minuscole e numeri, ma anche da qualsivoglia carattere ASCII (una potenzialità, questa, che aumenta enormemente il livello di sicurezza, ma che crediamo verrà utilizzata solo dagli utenti più esperti), per un totale di ben 256 combinazioni! Siccome la cracking machine di cui sopra farà i suoi tentativi sulla password inserita dall’utente, in realtà arriverà alla soluzione in 62 microsecondi al massimo se ricerca soltanto password composte da lettere minuscole, lettere maiuscole e numeri (come è solitamente il caso), mentre potrà impiegare fino a 256 microsecondi se estende la ricerca a tutti i possibili caratteri ASCII.

·         Se utilizziamo una password di 3 caratteri, ad esempio w3Y, le combinazioni possibili saranno 62^3 = 238328 (se ci limitiamo a lettere maiuscole, minuscole e numeri), e la cracking machine troverà la soluzione giusta in un massimo di 0.24 secondi; nel caso la ricerca venisse estesa a tutti i possibili caratteri ASCII, avremmo 256^3 = 16777216 possibili combinazioni, con un tempo massimo di elaborazione pari a circa 17 secondi (e qui si comincia ad intravedere il vantaggio di utilizzare tutti i caratteri ASCII, invece delle solite lettere + numeri).

·         Man mano che la lunghezza della password cresce, cresce anche il tempo necessario a scoprirla: detto N il numero di caratteri che compongono la password, saranno necessari 62^N microsecondi (nel caso si usino solo maiuscole, minuscole e numeri) oppure 256^N microsecondi (nel caso si usi l’intero dizionario ASCII) perché la cracking machine trovi la soluzione giusta, e questo indipendentemente dai 128 bit considerati inizialmente, almeno fintantoché la password è “corta”.

·         Una password di 16 caratteri, ad esempio aT5wp63lz5Xchf34, garantisce quasi 5*10^28 combinazioni differenti (se, al solito, usiamo solo maiuscole, minuscole e numeri) che, pur essendo un numero incredibilmente alto (leggasi: miliardi di anni per venirne a capo), sono comunque inferiori alle circa 3*10^38 garantite da una chiave binaria a 128 bit, cioè quella generata dal DiskLock partendo dalla password stessa. Nel caso invece utilizzassimo una password sempre da 16 caratteri, ma utilizzassimo tutto il dizionario (in gergo, charset) ASCII, otterremmo circa 3*10^38 combinazioni possibili, ovvero avremmo le stesse identiche potenzialità offerte da una chiave binaria a 128 bit (ed infatti 2^128 = 256^16). Quindi in realtà conviene scegliere una password non solo casuale, ma anche lunga il più possibile (e tanto più questa si avvicina ai fatidici 16 caratteri, tanto meglio sarà: in questo modo infatti, ci si avvicina alla sicurezza garantita dalla chiave a 128 bit generata dal DiskLock).

·         Una password lunga 17 caratteri, invece (ad esempio &T5$£63”z^Xch?3=e), garantirebbe esattamente 256^17 combinazioni differenti, cioè circa 9*10^40 possibilità: questo però è un numero maggiore rispetto alle circa 3*10^38 combinazioni possibili per una chiave binaria a 128 bit, quindi l’utente non ne ricaverebbe alcun vantaggio rispetto ad una di “soli” 16 caratteri (si noti come stavolta abbiamo utilizzato per la password, sempre a titolo di esempio, anche caratteri ASCII diversi dai soliti numeri + lettere: il programma li accetterà tranquillamente). DiskLock esegue in tal caso un troncamento, scartando tutti quei caratteri che eccedono il sedicesimo, in modo da ottenere una chiave da 128 bit anche a partire da password lunghe 17 o più caratteri: in parole povere, per DiskLock la password  &T5$£63”z^Xch?3=e è in tutto e per tutto uguale alla password &T5$£63”z^Xch?3=, in quanto il diciassettesimo carattere verrà semplicemente ignorato.

 

Consigli pratici per l’uso di DiskLock

1.       Evitate, per quanto possibile, di comunicare ad altri (colleghi d’ufficio, conoscenti, eccetera) il fatto che il vostro PC è protetto da DiskLock. E non tenete il dischetto contenente DiskLock vicino al PC: a cosa vi serve infatti tenerlo lì? Una volta installato, DiskLock non ha bisogno del dischetto per funzionare… meglio tenerlo a casa vostra, o comunque in un posto sicuro e soprattutto lontano dal PC. Queste precauzioni servono per non far capire all’attaccante che DiskLock è attivo sul suddetto PC, il perché ve lo abbiamo già spiegato.

2.       Non comunicate mai ad altri, per nessun motivo, la password scelta per proteggere il vostro PC con DiskLock; se proprio fosse necessario condividere la password (ad esempio con dei colleghi di ufficio), si limiti almeno la sua diffusione al numero di persone che debbono realmente utilizzare il PC in nostra assenza. Vogliamo qui ricordare che la password è necessaria unicamente all’accensione del PC (o quando si riavvia Windows), quindi se pianifichiamo di essere sempre presenti quando la macchina viene avviata, è bene che siamo sempre noi ad inserire la password: una volta fatto questo, i nostri eventuali dipendenti/colleghi potranno tranquillamente utilizzare il PC pur ignorando tale password.

3.       Il comportamento di un PC protetto da DiskLock è in apparenza molto simile a quello di un PC protetto da password BIOS, ma in realtà la differenza tra i due metodi di protezione dei dati è enorme: mentre la password BIOS, oltre ad essere esplicitamente richiesta all’avvio della macchina, può essere facilmente aggirata (resettando la BIOS del PC, operazione fattibile da chiunque abbia un minimo di conoscenze hardware), e mentre il contenuto dell’hard disk rimane in chiaro utilizzando la password BIOS, con DiskLock non solo non è possibile aggirare la password, ma senza di essa il contenuto dell’intero hard disk resta crittato (e quindi non accessibile). Addirittura, vogliamo consigliarvi un piccolo inganno del tutto innocuo: fate credere ai vostri colleghi/dipendenti più curiosi di aver attivato l’opzione “password BIOS”. Solo un utente esperto potrà accorgersi della differenza, mentre l’eventuale attaccante, anche se messo sull’avviso dai soliti “bene informati”, crederà di poter facilmente aggirare l’ostacolo resettando la BIOS (in tal caso, naturalmente, lo aspetta una grossa delusione).

4.       Scegliete una password composta da caratteri alfanumerici e non solo (lettere maiuscole e minuscole, numeri, ed in più qualsiasi simbolo ASCII vi venga in mente), il più possibile casuali, e sceglietela lunga abbastanza: l’ideale sarebbe 16 caratteri, ma anche se volete fare i pigri non scendete mai sotto i 10 caratteri. Con una password lunga 10 caratteri contenente soltanto numeri + lettere (già sappiamo che molti di voi, in barba alle raccomandazioni che stiamo ripetendo fino alla nausea, opteranno per la soluzione “numeri + lettere”, preferendo evitare gli altri caratteri ASCII), ipotizzando la cracking machine vista nel precedente paragrafo, ci vorrebbero circa 26000 anni per provare tutte le 62^10 combinazioni possibili; con 8 caratteri (sempre numeri + lettere) sarebbero necessari poco meno di 7 anni (62^8 combinazioni possibili), con 5 caratteri (sempre numeri + lettere) sarebbero invece sufficienti 15 minuti (soltanto 62^5 combinazioni possibili)! Insomma, ricordate sempre che, pur essendo Gastone un personaggio di pura fantasia, l’unica cosa che veramente vi protegge dai colpi di fortuna dell’attaccante esperto è una password lunga il più possibile.

5.       Non scrivete mai la password su un file di testo contenuto nell’hard disk del vostro PC, specialmente se questo è connesso ad una rete: nessuno vi assicura che la password in questione non vi venga trafugata durante le scorribande telematiche dell’hacker di turno nei meandri del vostro hard disk (naturalmente a vostra insaputa). Sappiamo cosa state pensando: “se la password la metto nel mio hard disk, essa sarà protetta così come il resto del contenuto dell’hard disk stesso”. Vero, ma (a) scrivere la password in un file di testo del vostro PC non vi è di alcuna utilità (se la dimenticate, non potrete accedere all’hard disk… è come perdere le chiavi di casa, della copia delle chiavi che si trovi dentro casa non ve ne farete assolutamente nulla una volta chiusi fuori); inoltre (b) il vostro hard disk è blindato finché il PC è spento, mentre una volta inserita la password ed avviata la sessione di Windows esso è vulnerabile alle intrusioni informatiche e telematiche come qualsiasi altro PC. Anzi, seguite il consiglio di chi con la telematica ci ha a che fare ogni giorno: siccome il PC che volete proteggere con DiskLock conterrà sicuramente delle informazioni preziose e riservate, evitate nel modo più assoluto di metterlo in rete, se volete che questa riservatezza sia veramente garantita.

6.       Non separatevi per nessun motivo dal foglietto che ospiterà la vostra password finché non l’avrete imparata a memoria: tenetelo nel portafogli, tenetelo addosso, tatuatevelo su un braccio, fate quel che volete insomma, ma non abbandonatelo sulla scrivania (o, peggio ancora, non scrivetelo sul classico post-it da attaccare al monitor del vostro PC). L’abbiamo visto fare tantissime volte, ai privati come nei pubblici uffici: a che serve una password che chiunque può leggere? Ed inoltre, non crederete che l’attaccante vi avverta prima di farvi visita, giusto? Magari piomberà sul vostro PC il giorno che siete assenti, o mentre siete in pausa caffè… e se trova il post-it con su scritta la vostra password appiccicato sul monitor, a cosa vi sarà servito installare DiskLock?

7.       Non appena imparata la vostra password a memoria, distruggete il foglietto di cui al punto 6: ovviamente, prima di fare una cosa così definitiva, siate ben certi di ricordare la password perfettamente, altrimenti potrete dire addio ai vostri dati! E tenete presente che, se vi ci è voluto solo un giorno per impararla a memoria, ciò potrebbe voler dire che avete la memoria di un elefante… ma, molto più probabilmente, vuol dire che questa password l’avete scelta troppo facile (magari avete scelto un nome, molto più facile da ricordare di una impronunziabile stringa ASCII), e quindi essa si trova sicuramente nel dizionario di un qualsiasi programma “cercapassword” appena decente. La cracking machine degli esempi precedenti, infatti, prima di avventurarsi nella ricerca di tutte le combinazioni possibili per una password alfanumerica di lunghezza sconosciuta, proverà tutte le parole contenute nel suo (sicuramente ricco) dizionario: ne proverà un milione al secondo, e considerando che le lingue più ricche di vocaboli (come ad esempio l’italiano) hanno un vocabolario di “appena” poche decine di migliaia di parole, ne deriva fatalmente che, utilizzando come password una parola della lingua italiana (o inglese, o francese), il vostro hard disk verrà espugnato in molto meno di un secondo da tale cracking machine (purché, ovviamente, essa sia fatta funzionare da un cracker esperto… ma noi alla SimplyTech, ve ne sarete accorti, consideriamo sempre lo scenario peggiore).

Ecco, si tratta di 7 consigli in tutto: seguiteli alla lettera, e potrete dire di aver veramente messo al sicuro i dati custoditi nel vostro hard disk, al di là di ogni ragionevole dubbio.

 


 

 



DiskLock



[c] 2004 SimplyTech