Ci sono cose che ricordiamo senza pensarci: un volto, una strada, una canzone, un momento importante. Poi ci sono le password. Stringhe di lettere, numeri e simboli che dobbiamo ricordare per dimostrare, ogni giorno, che siamo noi. Quando le inseriamo in un sito sembra tutto molto semplice: le scriviamo, premiamo "Accedi", ed entriamo. Ma dietro quel gesto, in un sistema fatto bene, succede molto di più.

Viene trasformata
La password non dovrebbe mai essere salvata così com'è. Prima passa attraverso una funzione matematica chiamata hash: il nome può sembrare tecnico, ma il concetto è semplice. La password entra da una parte, e dall'altra esce un valore completamente diverso, che non assomiglia più all'originale.

Si salva il valore trasformato
È proprio questo valore trasformato che il sistema dovrebbe conservare, non la password in chiaro. Quindi, se qualcuno riuscisse a rubare il database di un servizio, nella maggior parte dei casi non troverebbe tutte le password leggibili. Troverebbe soprattutto questi valori trasformati.

L'attaccante prova password già note
Questo non significa che le password siano automaticamente al sicuro. Chi prova ad attaccare un sistema può partire da password già conosciute: quelle più comuni, quelle più prevedibili, o quelle finite online dopo vecchie fughe di dati altrui.

Trasforma e confronta
A quel punto il meccanismo è semplice. Si prende una password possibile, la si trasforma nello stesso modo, e si confronta il risultato con quelli trovati nel database rubato. Se uno dei risultati coincide, quella password era quella giusta. Non si sta "leggendo" la password dal valore salvato, non si sta tornando indietro: si stanno provando delle ipotesi, una dopo l'altra, e controllando quale produce lo stesso risultato.

Perché una password complessa aiuta
Ed è proprio qui che si vede perché usare una password comune è così rischioso. Se è semplice, prevedibile o già usata da tantissime persone, è molto più probabile che venga provata presto, magari tra le prime. Se invece è lunga, unica e meno scontata, le combinazioni possibili aumentano enormemente: non perché diventi invulnerabile, ma perché chi attacca deve esplorare uno spazio di possibilità molto più grande prima di trovarla.

Non si torna indietro
C'è un altro punto importante: quella trasformazione iniziale è pensata proprio per andare in una sola direzione. Dalla password si può ottenere il valore trasformato, ma da quel valore non si può semplicemente tornare indietro e leggere la password originale. Ed è per questo che chi attacca non "decifra" una password: deve provare, una possibilità dopo l'altra, senza scorciatoie matematiche.

Cosa ci protegge davvero
Alla fine, quello che ci protegge non è mai una cosa sola: è una password unica, una password lunga, e un sistema che la gestisce correttamente da parte sua. Ma qui vale la pena essere precisi su cosa protegge cosa. L'hash protegge il database del servizio, se viene rubato. Non protegge te se quella stessa password la usi ovunque, se è debole, o se nel frattempo vive scritta su un foglio, in un file sul telefono, o dentro un servizio online che è, a sua volta, un database che qualcuno potrebbe violare un giorno.

Non stiamo affidando a una password solo un accesso: stiamo affidando pezzi della nostra vita digitale. Capire come viene trattata, dal lato del servizio e dal lato nostro, è il primo passo per proteggerli meglio. Il secondo, quello su cui stiamo lavorando con PacoKey, riguarda proprio quella seconda parte: dove e come tieni le password stesse, non solo come le tratta chi le riceve. Ne trovi la logica completa nella pagina Sicurezza.