Il Blog di Peppe Totaro
10Mag/13Off

Una lezione di vita del prof. Silvio Micali

Seguire una Lectio Magistralis del prof. Silvio Micali significa avere il privilegio di ascoltare le parole di un pioniere dell'Informatica che continua a contruibire all'evoluzione di questa meravigliosa scienza.

Sono doppiamente felice per il conferimento del Premio Turing (paragonabile per prestigio al Premio Nobel), insieme a  Shafi Goldwasser, ed i risultati ottenuti dal prof. Micali, laureatosi alla Sapienza, poiché sono uno studente dottorando dell'Ateneo di Roma e, soprattutto, sono siciliano. Egli, infatti, è nato a Palermo nel 1954 e dal capoluogo siciliano ha iniziato il suo cammino verso una splendida "avventura scientifica".

In particolare, ho apprezzato la semplicità e la chiarezza della sua lezione, costituita in gran parte da un lungo percorso di ringraziamenti rivolti alle persone che hanno ispirato e formato il suo pensiero umanistico e scientifico. Inoltre, in più occasioni, il prof. Micali si è soffermato sul ruolo fondamentale dei suoi giovani collaboratori esaltando i principi del lavoro di squadra, i quali sono indispensabili per il raggiungimento di qualsiasi obiettivo importante.

Infine, i dottorandi di Informatica della Sapienza, di cui sono orgoglioso di far parte, hanno avuto l'enorme privilegio di incontrare il prof. Silvio Micali nell'aula seminari del Dipartimento di Informatica per un sano ed illuminante confronto su argomenti scientifici e sociali.

Non posso nascondere che l'evento di oggi ha generato nel sottoscritto un'autentica iniezione di fiducia. In un periodo così delicato per il nostro Paese, l'insegnamento del prof. Micali rappresenta senza dubbio un esempio da seguire con spirito di sacrificio e passione per conferire una dignità sociale alle nostre vite.

Lectio Magistralis del prof. Silvio Micali

Un momento della Lectio Magistrali del prof. Sivlio Micali

 Aggiornamenti

La Lectio Magistralis di Silvio Micali presso l'Aula Magna della Sapienza, praticamente gremita, è stato un evento seguito e documentato dalle TV locali e nazionali più importanti.

Servizi televisivi:

6Mag/13Off

Lectio magistralis del prof. Silvio Micali

Pubblicizzo con grande entusiasmo e piacere la Lectio Magistralis del prof. Silvio Micali che si terrà venerdì 10 maggio alle ore 10 presso l'Aula Magna della Sapienza. Sarò presente all'evento e consiglio a tutti di prenotarsi tramite il sistema di iscrizione delle cerimonie istituzionali per non perdersi questa fantastica opportunità.

Il prof. Silvio Micali è stato insignito quest'anno del Premio Turing, la più alta onoreficenza per contributi di natura scientifica all'informatica, paragonabile per prestigio al Premio Nobel e alla Medaglia Fields. È la prima volta che questo premio viene conferito ad un italiano.

Non mancate.

17Mag/08Off

Feedback e riflessioni su Diceware

Questo articolo è stato pubblicato nel 2008 (prima versione del blog) e da allora non è stato più revisionato, quindi alcuni contenuti o informazioni presenti in esso potrebbero non essere più validi. Questo sito non è responsabile per eventuali errori causati da questo problema.

Ricordarsi la passwordDopo il buon successo ottenuto dal precedente articolo sull'argomento password (Diceware: la sicurezza in un dado), ecco un nuovo post che riprende la tecnica Diceware e continua la mia dissertazione sul tema.

Come promesso, cercherò di affrontare nei prossimi interventi il tema sicurezza da più angolazioni e non solo con riferimento a password e passphrase. In questo post vorrei fare alcune semplici riflessioni su Diceware prendendo spunto dai commenti ricevuti. Ne approfitto per ricordare che chiunque può inviare la sua opinione sia tramite l'apposita form dei commenti che scrivendo al mio indirizzo e-mail.

Il "gioco dei dadi" (così molti amici hanno ribattezzato Diceware) per la selezione di password e passphrase ha dato vita a un feedback molto interessante. I commenti sono stati sia critici che entusiasti, ma in ogni caso Diceware ha incuriosito tutti, un po' per l'aspetto ludico e un po' per l'originalità della soluzione.

Le critiche rivolte all'uso di Diceware si possono riassumere in tre punti:

  • procedimento lungo e cervellotico
  • scarsa utilità
  • "problemi" di memoria

In realtà nessuno ha preso in modo netto una posizione di contrasto all'uso di Diceware, piuttosto una parte del feedback ha ritenuto questo metodo pleonastico in considerazione delle vere esigenze di un utente medio.

Il mio punto di vista su Diceware è assolutamente positivo. Non voglio né fare pubblicità né difendere a spada tratta Diceware, ma semplicemente valutare il feedback ricevuto e rispondere alle domande che mi sono state rivolte con le mie considerazioni. Quindi mi limiterò a discutere tout court dei punti appena enucleati, anche perché prossimamente sarà pubblicato un approfondimento di Diceware in cui potrete trovare risposte più esaustive o ulteriori spunti di riflessione.

Fondamentalmente la tecnica Diceware consta di 5 semplici passi (lista di parole, numero di parole, lancio dei dadi, ricerca delle parole e voilà la password). Il download e l'eventuale stampa della lista di parole sono operazioni preliminari, anche se sono configurate come parte del procedimento. Con questo intendo dire che una volta scaricata la lista (e stampata), non dovremo più occuparci di questo primo passo per tutte le password e passphrase che ci serviranno. In fin dei conti ciò che resta da fare è lanciare i dadi un po' di volte. Quando uso questa tecnica (ripeto che la lista è ormai stampata quindi parto subito con i lanci) riesco a ottenere la mia parola o frase d'ordine al più in due minuti, cioè il tempo necessario a lanciare i dati e cercare le parole. Per questo motivo non credo affatto che il procedimento sia lungo e complesso, anzi è molto divertente. Inoltre, è possibile velocizzare le operazioni di lancio dei dadi seguendo alcuni semplici e intuitivi consigli come quello di preparare una scatola, metterci dentro 5 dadi, scuoterla e avere una cinquina per ogni "scossa" data alla scatola.

Qualcuno ha commentato che, pur essendo facile eseguire il procedimento, preferirebbe affidarsi al proprio buon senso e non ritiene Diceware così utile in un contesto "normale" come quello di un comune internauta. Prima di meditare sul buon senso e sulla necessità, storco subito il naso sulla normalità che dovrebbe caratterizzare un comune utente della Rete. A mio parere la privacy è privacy. Sicuramente una multinazionale avrà esigenze maggiori nella protezione dei dati, ma credo che sia ugualmente importante proteggere dati sensibili ed economicamente importanti come quelli bancari o la propria corrispondenza elettronica. Anche se Diceware non costituisce un sistema di sicurezza, può aiutare chiunque ad avere una buona password e già questo costituisce un buon punto a favore della propria privacy.

Per quanto riguarda buon senso e necessità, innanzitutto credo che non vi sia alcuna necessità. L'uso di Diceware non è obbligatorio, ma è solo un ottimo strumento per assecondare il carattere di dualità di una password ovvero non essere scontata, ma neanche troppo difficile da ricordare (norme basilari di sicurezza). In linea con questo ragionamento, trovo indispensabile non dover decidere poiché in una nostra decisione potrebbe insinuarsi una qualche "debolezza" della password o passphrase (si pensi a quante persone utilizzano la propria data di nascita o il nome del cane). E il non dover decidere è proprio una peculiarità di Diceware, perché basta lanciare dei dadi e quindi affidarsi a un processo davvero casuale (a meno che il negoziante ci abbia venduto i dadi truccati). Se non siete ancora convinti sull'utilità potete sempre fare una ricerca e trovare (come nel sito ufficiale di Diceware e nella versione italiana) numerose esperienze negative dovute alla "leggerezza" nella scelta di password e passphrase.

L'ultima critica, probabilmente quella che più mi affascina, è relativa alla memorizzazione di password e passphrase. Già nel post precedente avevo segnalato una chicca per la memorizzazione di una passphrase Diceware suggerita da Arnold Reinhold. La proposta di Reinhold è molto semplice e cerca di sviluppare un meccanismo mnemonico. Prima di tutto si deve conoscere il significato di ogni parola e poi si può "ricamare" sulla passphrase una storia che usa quelle parole. Reinhold propone un valido esempio in inglese, ma è giusto fornirne uno in italiano. Consideriamo la passphrase ottenuta dalla dimostrazione nel precedente post. Essa era composta dalle seguenti parole:

casi botole stadi maglie venivo

Senza perderci troppo tempo, una "storiella" che rievoca tutte queste parole potrebbe essere la seguente: Nella maggior parte dei casi è proibito introdurre bottiglie e fiaccole negli stadi di calcio, ma le maglie della squadra del cuore si possono portare e inoltre le vende anche qualche abusivo fuori dallo stadio.

Bisogna ammettere che per le password questo meccanismo potrebbe portare a una elefantiasi di informazioni, perché dovremmo ricordare troppe storielle in relazione alla grande quantità di password di cui facciamo uso. Eppure per le passphrase, ad esempio la chiave WPA in una rete Wi-Fi, una bella storia facile da ricordare può essere molto utile e soprattutto "pratica". Naturalmente ognuno è libero di crearsi il sistema di memorizzazione in base alle proprie preferenze.

Infine, vorrei sottolineare un altro aspetto ovvero la ripetitività delle password. Moltissimi utenti tendono ad utilizzare sempre la stessa password cambiando qualche carattere o, il più delle volte, lasciandola immutata. Questo comportamento è banalmente ravvisabile nella necessità di ricordarsi facilmente le password di molteplici account e non dover pensare ogni volta a una matrice per la propria password (per quanto possa essere varia la nostra vita, le parole significative sono sempre limitate). Anche in questa prospettiva Diceware può rivelarsi molto utile.

Personalmente nutro un forte interesse nei confronti di Diceware per la semplicità d'uso e la vera casualità insita nel procedimento. Tuttavia esistono molti altri metodi per "scegliere" una password, altrettanto sostenuti e ben documentati. Per completezza di informazione, senso critico e soprattutto il desiderio di soddisfare tutti coloro che mi hanno chiesto chiarimenti, mi prodigherò in una trattazione più approfondita in materia di password. Quindi oltre alla ulteriore disamina che seguirà su Diceware, redigerò altri interessanti metodi su password, passphrase e sicurezza in generale.

Giuseppe

4Mag/08Off

Diceware: la sicurezza in un dado

Questo articolo è stato pubblicato nel 2008 (prima versione del blog) e da allora non è stato più revisionato, quindi alcuni contenuti o informazioni presenti in esso potrebbero non essere più validi. Questo sito non è responsabile per eventuali errori causati da questo problema.

Dadi da giocoFinalmente pubblico con grande soddisfazione il mio primo "vero" articolo. Prima di addentrarmi nel merito del nuovo post, colgo l'occasione per ringraziare tutti coloro (oltre 180 accessi il primo giorno) che hanno apprezzato questa mia iniziativa e, mi auguro, continueranno a farlo.

In questo primo articolo voglio affrontare un problema molto comune: la scelta della password. Molti amici spesso mi chiedono se sia o meno conveniente adottare una password per più account oppure come "complicarla" per renderla più sicura. Tali quesiti rappresentano solo la punta dell'iceberg, poiché le problematiche legate alla scelta, all'uso e alla conservazione della password sono molteplici e soventemente ignorate, alimentando così i potenziali rischi connessi (frodi, truffe, violazioni della privacy, etc).

Un metodo molto valido per generare passphrase (frasi d'ordine) e password è Diceware. In sintesi, Diceware consiste in una tecnica che mediante l'utilizzo di uno o più normalissimi dadi permette di creare passphrase sicure e facili da ricordare. Non esiste una buona traduzione del termine Diceware, un po' come per software e hardware, ma basta sapere che dice in italiano significa dado. Per capire meglio le modalità d'uso di questa semplice e al contempo brillante tecnica ideata da Arnold Reinhold, ritengo che sia opportuno fare un breve excursus sui concetti fondamentali che gravitano attorno a Diceware.

Una password (in italiano "parola d'ordine") è una sequenza di caratteri alfanumerici, generalmente associata a uno username, che consente l'autenticazione per accedere a risorse protette. La password richiede un requisito fondamentale quale la segretezza onde evitare accessi "indesiderati". Oggi la password viene usata tipicamente per l'accesso a risorse informatiche o più in generale per usufruire di determinate tecnologie, come sistemi operativi, cellulari, parental control dei decoder, etc. Un utente di computer può usare una password per diversi scopi: login al proprio account, ricevere e-mail, accedere a database, etc. Una password non necessita di parole "reali" nella sua composizione. Le password che non contengono parole reali sono difficili da indovinare (buon requisito), ma non sono facili da ricordare (cattivo requisito). Una sequenza di parole per accedere a un sistema o a un programma viene detta passphrase. Una passphrase è simile a una password, ma risulta più lunga per una maggiore sicurezza e viene solitamente adoperata per accedere e compiere operazioni con sistemi crittografici come GPG. Le generazioni di numeri casuali rappresentano una pratica centrale nell'ambito di password, passphrase e della crittografia in generale. In realtà i numeri così ottenuti si dicono pseudo-casuali. Un generatore di numeri pseudo-casuali, in inglese pseudorandom numer generator (PNG) è un algoritmo per generare una sequenza di numeri che approssima le proprietà dei numeri casuali. La sequenza non è veramente random poiché essa è completamente determinata da un insieme relativamente piccolo di valori iniziali detti stati del PRNG. Altrimenti, sequenze più vicine alla vera casualità possono essere generate usando generatori hardware o hardware random number generator. Un generatore di quest'ultimo tipo è un apparato che genera numeri random a partire da un processo fisico.

Introdotti questi concetti, che saranno oggetto di approfondimenti, possiamo parlare di Diceware.

Diceware, come accennato prima, è un metodo che consente di generare passphrase tramite l'uso di dadi per scegliere a caso parole da una una lista speciale detta Diceware Word List o, in italiano, Lista di Parole di Diceware. La lista completa contiene oltre 7000 parole inglesi facili da ricordare, ma sono disponibili diverse versioni della lista che si differenziano per formato (versione in PostScript), lingua (Tarin Gamberini ha creato una lista di parole in italiano disponibile nei formati txt e pdf), layout di stampa (Patrick Feisthammel ha creato una lista in 11 pagine) e tipologia (Alan Beale ha realizzato una lista alternativa senza parole obsolete). Esistono altre liste che è possibile reperire tramite una semplice "googlata". Ogni parola della lista è formata al più da 5 caratteri (in lingue diverse dall'inglese vi possono essere parole un po' più lunghe) ed è preceduta da un numero a 5 cifre che identifica univocamente la parola. Tutte le cifre sono comprese tra 1 e 6, proprio per consentire di utilizzare i risultati dei lanci dei dadi (più avanti vedremo come) per scegliere una parola nella lista (sotto un piccolo estratto della lista in italiano).

12345 acque
12346 acuta
12351 acute
12352 acuti
12353 acuto
12354 ad
12355 adagi
12356 adagia
12361 adagio
12362 adatta

Per usare la lista di parole Diceware occorrono uno o più dadi che potete trovare facilmente e a buon prezzo in qualsiasi negozio di giocattoli (io li ho presi da un vecchio Monopoli). È importante non utilizzare generatori di numeri pseudo-casuali o simulatori di dadi, poiché ciò inficerebbe la casualità del processo. Procurati i dadi, eseguite semplicemente i 5 passi seguenti:

  1. Scaricate la lista di parole Diceware e, se lo desiderate, stampatela.
  2. Decidete quante parole dovranno comporre la vostra passphrase. Una frase segreta di cinque parole garantisce un buon livello di sicurezza.
  3. Lanciate il dado e scrivete ogni volta il numero ottenuto su un foglio di carta. Scrivete i numeri a gruppi di cinque e totalizzate tante cinquine per quante sono le parole della passphrase. Per velocizzare il processo potete lanciare cinque dadi alla volta (o utilizzare un'altra combinazione intermedia). Se utilizzate più di un dado, leggete i risultati da sinistra verso destra.
  4. Ottenuti i gruppi di cinque numeri, cercate nella lista la parola corrispondente a ogni cinquina (ad esempio 12345 corrisponde ad acque nella lista in italiano).
  5. Le parole ottenute costituiscono la vostra nuova passphrase, memorizzatela immediatamente. Il foglio utilizzato deve essere distrutto o custodito in un luogo sicuro.

Un esempio pratico è sempre il mezzo migliore per chiarire le idee. Supponiamo di voler generare una passphrase di cinque parole utilizzando la lista Diceware in italiano. In totale ci servono cinque cinquine di parole e quindi 25 lanci (se utilizziamo un dado). Ipotizziamo che siano usciti i seguenti numeri (esempio con la lista in italiano che prevede parole anche di 6 lettere):

1, 6, 6, 6, 5, 1, 5, 6, 5, 3,
5, 6, 3, 2, 2, 3, 5, 6, 1, 6,
6, 5, 2, 2, 4

che scritti in gruppi di cinque lanci diventano

1 6 6 6 5
1 5 6 5 3
5 6 3 2 2
3 5 6 1 6
6 5 2 2 4

In base alla lista di parole Diceware in italiano troviamo le seguenti parole

 1 6 6 6 5 casi
 1 5 6 5 3 botole
 5 6 3 2 2 stadi
 3 5 6 1 6 maglie
 6 5 2 2 4 venivo

Quindi la nuova passphrase sarà

casibotolestadimaglievenivo

Alcune parole della lista Diceware sono piuttosto corte (uno o due caratteri), quindi si potrebbe ottenere una passphrase non abbastanza forte. Se la vostra passphrase è lunga meno di 14 caratteri, è raccomandabile ripartire per creare una nuova frase e lo stesso vale per le passphrase facilmente riconoscibili. Bisogna precisare che nessuna delle due situazioni precedenti si verifica frequentemente.

Potete trovare diversi consigli nell'uso di Diceware, alcuni per garantire la segretezza della passphrase e altri di carattere "ludico". Il consiglio (quasi un mantra) da rispettare sempre è quello di procedere alla selezione della passwphrase al sicuro da occhi indiscreti ed evitare di lasciare tracce della stessa come i fogli di carta utilizzati per appuntare i risultati dei lanci. Altri semplici suggerimenti possono accrescere l'efficacia, anche in termini ludici, del metodo Diceware, ma per una trattazione completa si rimanda alla documentazione ufficiale, dove troverete anche una chicca per memorizzare facilmente la vostra passphrase.

In genere, i servizi che verificano la "complessità" delle password considerano un codice contenente solo lettere come prevedibile. Se volete aggiungere una sicurezza extra alla passphrase creata potete inserire una cifra o un carattere speciale tra quelli nel riquadro sottostante. Il meccanismo di scelta prevede sempre l'uso dei dadi. In questo caso sono necessari quattro lanci. Il primo lancio per scegliere una parola all'interno della passphrase, il secondo per scegliere la lettera della parola, il terzo e il quarto per individuare il carattere o la cifra da inserire dopo la lettere sorteggiata nei primi due lanci.

         T e r z o L a n c i o
         1   2   3   4   5   6

Q  1     ~   !   #   $   %   ^
u  2     &   *   (   )   -   =
a  3     +   [   ]   \   {   }
r  4     :   ;   "   '   <   >
t  5     ?   /   0   1   2   3
o  6     4   5   6   7   8   9

Fin qui si è parlato di passphrase, ma come si potrebbe formare una buona password come "promesso" nell'introduzione? Diceware è estremamente versatile e il suo impiego si presta a numerosi usi, tra cui la creazione delle password. Il procedimento è sempre lo stesso, l'unico aspetto che cambia è rappresentato dall'elemento che differenzia una passphrase da una password ovvero la lunghezza. Rispetto alle passphrase che generalmente si compongono dai 20 ai 40 caratteri (a volte anche più), una password ha tra i 6 e i 10 caratteri. Quindi un modo per generare una password può essere il seguente:

  1. Scegliete due parole utilizzando i dadi (serviranno quindi 10 lanci).
  2. Estraete con due lanci un carattere speciale dalla tabella precedente e inseritelo tra le due parole.
  3. Eliminate i caratteri sovrabbondanti alla fine della seconda parola se la password è troppo lunga.

Un esempio di password creata con questo procedimento potrebbe essere il seguente

lungo%russa che troncata per un formato di password a otto caratteri diventa lungo%ru

Una variante alla tecnica riassunta nei tre passi precedenti potrebbe consistere nell'inserire un carattere non tra le due parole, bensì all'interno di una parola. In quest'ultimo caso, potreste effettuare quattro lanci: il primo per decidere la parola (se il risultato è pari prendetela prima, se è dispari la seconda), il secondo per decidere la lettera dopo la quale inserire il carattere speciale e il terzo e il quarto per stabilire il carattere speciale. In ogni caso, siete liberi di dare spazio alla vostra fantasia ed escogitare la sequenza che preferite per formare la vostra password.

Password di questo tipo sono adatte per quei sistemi che limitano il numero di errori nell'autenticazione (bad login) per preservare gli utenti dagli attacchi. Nel caso in cui si operi in sistemi diversi, è preferibile costruirsi una password più forte. In futuro vedremo come generare una password più forte in relazione ai vari sistemi operativi, utilizzando sempre Diceware.

Diceware, come appare evidente, non costituisce alcuna protezione, non è un software che ci preserva dagli attacchi o dai malintenzionati della Rete. Infatti, se scelleratamente riveliamo la password a un "estraneo" o abbocchiamo a un tentativo di phishing, perderemo ugualmente la nostra protezione e quindi la nostra identità. Diceware è semplicemente un metodo gratuito che in modo molto trasparente ci dice cosa fare passo dopo passo per creare una password o una passphrase al fine di proteggere i nostri dati. Non occorre giudicare cosa sia difficile indovinare o affidarsi all'intuizione di qualcuno, basta lasciar fare tutto al caso ovvero ciò che è imprevedibile. Chiunque può facilmente imparare a usare Diceware (qualcuno non sa usare i dadi!), una tecnica tanto semplice quanto efficace, d'altronde "la soluzione più semplice è sempre la migliore".

Chi volesse approfondire Diceware, nonché le applicazioni e gli studi derivati, può attingere alla documentazione presente in Rete. Il sito ufficiale è un ottimo punto di partenza. Inoltre, per chi ha problemi con l'inglese può leggere la pagina ufficiale in lingua italiana a cura di Tarin Gamberini. Per quanto riguarda i concetti fondamentali alla base di Diceware (password, passphrase, etc) è sufficiente partire da una ricerca su Wikipedia e da lì ampliare la propria fame di sapere.

Prima di lasciarvi, ricordo che sono sempre disponibile per chiarimenti e domande. Potete inviarmi una mail al mio indirizzo oppure lasciare un commento. Il feedback è sempre gradito.

Giuseppe

   
Translate »