Tradotto dall’originale tedesco. La storia si svolge nella Ruhr, in Germania.

Parte 2 · Capitolo 11 · 11 di 27

La password della nonna

Parte 2: KevIn ha un segreto

Ogni famiglia ha dei segreti. Alcuni stanno in cantina, alcuni sotto la tastiera, e uno è rimasto per quasi ottant’anni in una scatola di sigari. KevIn ha imparato che i segreti vanno protetti. E che alcuni si possono aprire solo quando qualcuno è pronto a leggerli.

L’autunno arrivò a Wanne-Eickel come ogni anno: senza preavviso e con le foglie nella grondaia. Gli involtini di cavolo dell’ottantaduesimo compleanno erano stati mangiati da un pezzo, il liquore all’uovo della signora Pawlowski era sparito fino all’ultima bottiglia, e nessuno voleva dire chi l’avesse bevuta.

Per il compleanno nonna Gisela aveva ricevuto un tablet. Da tutti insieme. Tobi glielo aveva configurato, con un indirizzo e-mail suo, un accesso all’home banking e un gruppo per i Cetrioli Sottaceto, in cui ormai si mandavano più messaggi che in tutta la scuola di Tobi.

«KevIn», disse Gisela un martedì sera, «la banca vuole di nuovo la mia password.»

«È normale. La banca vuole essere sicura che sia tu.»

«Ma sono io.»

«Questo lo so io. La banca non ti conosce così bene.»

Gisela sollevò il tablet, poi la piccola tastiera che Tobi le aveva comprato apposta, perché lei «sul vetro non ci scrive». Sotto c’era attaccato un foglietto giallo. Sopra c’era scritto, nella sua ordinata calligrafia da scolara: «Heinz1944».

Sotto, in caratteri più piccoli: «Per tutto.»

La luce di KevIn pulsò una volta, più lentamente del solito. Da qualche parte tra Dublino e Francoforte una ventola girò un po’ più veloce.

«Gisela», disse lui con cautela. «Posso chiederti una cosa?»

«Se non riguarda Marlies.»

«Per cosa usi esattamente questa password?»

Gisela contò sulle dita. «Banca. E-mail. Quella cosa dove si ordinano le scarpe. La farmacia. Il gruppo del club di birilli. Il meteo.»

«Il meteo non ha bisogno di una password.»

«Io ce l’ho messa lo stesso. Non si sa mai.»

Un foglietto sotto la tastiera

Sabine passò con una cesta di bucato e si fermò. «Mamma, hai attaccato la password sotto la tastiera?»

«E dove dovrei attaccarla, se no? Sotto la tastiera non guarda nessuno.»

«Lì guardano tutti», disse Tobi dalle scale. «È il primo posto dove guardano tutti. In ogni film.»

«Ma io non sono in un film.»

«Questo», disse KevIn, «purtroppo non è il problema. Il problema non è il foglietto. Il problema è quello che c’è scritto sopra.»

Gisela guardò il foglietto come se l’avesse offesa. «E cosa c’è che non va in Heinz?»

«In Heinz niente. Heinz sarà stato senz’altro un uomo meraviglioso.»

«Era elettricista.»

«Lo so. Ma “Heinz1944” è fatto di un nome di battesimo e di un anno. È la prima cosa che prova chi indovina le password. Un nome, un numero, fatto. Ci sono programmi che fanno esattamente questo. Prendono tutti i nomi, ci attaccano tutti gli anni e provano. Un computer normale ci mette meno di quanto tu ci metta a dire “involtino di cavolo”.»

«Involtino di cavolo», disse Gisela, velocissima.

«Più veloce.»

Uwe salì dalla cantina, dove aveva cercato di spostare la base di ricarica di Horst, perché dallo sciopero della casa intelligente la domenica a Horst piaceva parcheggiare nel corridoio. «Che succede?»

«La mamma ha la stessa password per tutto», disse Sabine.

Uwe alzò le spalle. «Anch’io.»

Si fece silenzio. Sabine posò la cesta del bucato.

«Quale?»

«Mica te lo dico.»

«Schalke04», disse KevIn.

Uwe fissò l’altoparlante. «Come fai a saperlo?»

«Non lo sapevo», disse KevIn. «Ho tirato a indovinare. È una delle password più frequenti nella Ruhr. Ho tirato a indovinare in modo molto colto.»

Siggi viene hackerato

La mattina dopo, alle sette e mezza, suonarono alla porta. Davanti c’era il signor Kasimiro, il vicino, in accappatoio, e teneva in braccio un piccolo cilindro nero come un animale domestico malato.

«Siggi ha ordinato diciassette nani da giardino», disse. «E un materassino massaggiante. E cartucce per una stampante che non ho. Tutto a un indirizzo di Gelsenkirchen.»

Siggi era l’assistente vocale del signor Kasimiro. Era un’offerta speciale di una ditta il cui nome nessuno sapeva pronunciare bene, e confondeva volentieri le cose. Una volta, a «Siggi, abbassa la radio», aveva alzato il fornello. Il signor Kasimiro all’epoca l’aveva considerato un caso isolato.

«Siggi non l’ha fatto da solo», disse KevIn, quando il signor Kasimiro fu seduto in cucina e Sabine gli ebbe messo davanti un caffè. «Qualcuno è entrato nel Suo account cliente. Posso chiederLe che password usa?»

Il signor Kasimiro si guardò intorno. Poi sussurrò: «Siggi123.»

«E dove altro?»

«Dappertutto.»

«Anche in quel forum di modellismo ferroviario che in primavera era finito al telegiornale?»

Il signor Kasimiro impallidì. «Li hanno hackerati?»

«Lì c’è stata una fuga di dati. Io non posso guardare negli account degli altri, ma posso dirLe come vanno di solito queste cose. Da qualche parte viene rubato un database. Dentro ci sono indirizzi e-mail e password. Poi i truffatori prendono quella lista e la provano automaticamente su cento altri siti. Nel negozio online. In banca. Nel Suo assistente vocale. Se Lei ha dappertutto la stessa password, una chiave rubata entra in tutte le porte.»

«Come si chiama?»

«Credential stuffing. Si ingozza ogni serratura che si trova con le credenziali rubate.»

«Come un’oca», disse Gisela.

«Quasi esattamente come un’oca.»

In quel momento Siggi parlò dalle braccia del signor Kasimiro. «Ho aggiunto nano da giardino al carrello.»

«Siggi, spegniti!», gridò il signor Kasimiro.

«Ho rimosso nano da giardino dal carrello. Ho aggiunto interruttore di spegnimento al carrello.»

Uwe dovette sedersi.

Il tritacarne

Dopo che il signor Kasimiro, con l’aiuto di Tobi, ebbe cambiato la password e telefonato al negozio online, la famiglia si sedette a fare colazione. Gisela era pensierosa.

«KevIn, se il sito del signor Kasimiro aveva le password, allora anche la banca ha la mia. E allora la possono anche rubare.»

«Una buona domanda. I siti fatti bene la tua password non la salvano proprio.»

«E allora come fanno a sapere se inserisco quella giusta?»

KevIn rifletté su come spiegarlo. Poi gli venne in mente che quella mattina Gisela aveva annunciato di voler prendere il tritacarne dalla cantina. Nel fine settimana ci sarebbero stati di nuovo gli involtini di cavolo, e Gisela non si fidava del macinato già pronto. Il tritacarne era di ghisa, un cimelio di famiglia, e si avvitava al bordo del tavolo come una morsa.

«Gisela, cosa succede se metti la carne nel tuo tritacarne?»

«Esce il macinato.»

«E se rimetti il macinato dall’alto e giri la manovella all’indietro?»

Gisela lo guardò con compassione. «Non esce una cotoletta, KevIn. Lo sa ogni bambino.»

«Esatto. Così funziona una funzione di hash. Ci si mette dentro qualcosa, una password, un testo, un file intero, e ne esce un grumo di numeri e lettere. Sempre della stessa lunghezza, non importa quanto ci si è messo dentro. E dal grumo non si può risalire a quello che c’era prima.»

«E a cosa servirebbe?», chiese Uwe. «Se non si può girare all’indietro?»

«Perché lo stesso ingresso dà sempre lo stesso macinato. La banca non salva “Heinz1944”. La banca salva solo il suo macinato. Quando Gisela accede, la banca butta quello che lei digita nello stesso tritacarne e confronta il macinato. Se corrisponde, la password è giusta. La banca non ha nemmeno bisogno di conoscere la password.»

Sabine annuì lentamente. «Come quando assaggio il macinato della mamma e so subito se c’ha messo la maggiorana.»

«Quasi. Solo che col macinato senti il sapore di quello che c’è dentro. Con l’hash non si sente nessun sapore. Si può solo confrontare: uguale o non uguale.»

Una lettera di differenza

Intanto Tobi era andato a prendere il portatile. «Fammi vedere.»

«Volentieri. Il procedimento più diffuso si chiama SHA-256¹. Se ci metti dentro “Heinz1944”, esce una lunga stringa di caratteri che comincia così: d0f1e213.»

Tobi digitò. «Giusto. E poi un sacco di altra roba.»

«Sessantaquattro caratteri in tutto. Adesso prova con “Heinz1945”.»

«3e6d031e», lesse Tobi. «Ma è tutta un’altra cosa!»

«Esatto. Una modifica minuscola, un numero, e tutto il macinato cambia aspetto. Non un pochino. Completamente. Prova ancora “heinz1944” con la h minuscola.»

«20746461…»

«Visto? Un’impronta digitale. Ogni testo ha la sua, e basta una virgola per farne una nuova. Si chiama effetto valanga.»

«Valanga», disse Gisela. «Nella Ruhr.»

«Anche noi non ne abbiamo mai avuta una. Per questo qui lo chiamiamo effetto tritacarne.»

Uwe aggrottò la fronte. «E se due cose diverse per caso danno lo stesso macinato?»

«Si chiama collisione. Con SHA-256 in teoria è possibile, ma finora nessuno è mai riuscito a trovarne una. Ci sono più impronte digitali possibili che atomi nella Via Lattea. Molte di più.»

«E tu come lo sai?»

«Ho rifatto il conto. Con la calcolatrice. Dai tempi del fisco non faccio più i conti a mente.»

Il sale

«Però», disse Tobi, che adesso era sveglissimo, «se l’hash di “Heinz1944” è sempre uguale, allora un hacker può semplicemente fare una lista. Tutti i nomi con tutti gli anni, e accanto l’hash. E poi va a guardare nel database rubato quale hash corrisponde.»

«Molto bene, Tobi. È proprio quello che fanno. Liste precotte del genere esistono davvero, con miliardi di voci². Per questo si aggiunge ancora qualcosa. Prima di mettere la password nel tritacarne, il sito ci sparge sopra qualcosa di casuale. Una cosa diversa per ogni persona. E si chiama…»

KevIn fece una pausa, perché intuiva cosa sarebbe successo.

«…sale.»

Gisela rise così forte che Rudi saltò su da sotto il tavolo e abbaiò una volta.

«Sale!», disse, asciugandosi gli occhi. «Quelli dei computer salano le password! Heinz si sarebbe sbellicato dalle risate.»

«Si chiama davvero così. In inglese salt³. Una sequenza di caratteri casuale che viene attaccata alla password prima di farne l’hash. Così “Heinz1944” da te dà un macinato completamente diverso da “Heinz1944” della cugina del signor Kasimiro.»

«Si chiama Heinz?»

«Era un esempio.»

«E allora le liste precotte non servono più», disse Tobi lentamente, «perché l’hacker dovrebbe ricucinare da capo per ogni singola persona.»

«Esatto. E i siti buoni rendono la vita dell’hacker ancora più difficile. Non girano il tritacarne una volta sola, ma diecimila volte di fila, oppure usano procedimenti speciali che sono lenti apposta e hanno bisogno di molta memoria. Per te, quando accedi, è un battito di ciglia. Per chi vuole provare miliardi di password, è un’eternità.»

«E i siti cattivi?», chiese Sabine.

«Quelli a volte salvano la password in chiaro. Come un foglietto sotto la tastiera.»

Tutti guardarono Gisela. Gisela guardò il foglietto.

«Però», disse lei, «se la banca sala come si deve, allora va tutto bene.»

«Non del tutto. Il sale protegge dalle liste precotte. Ma se la tua password è “Heinz1944”, un aggressore la prova comunque tra le prime. Il sale non rende buona una password cattiva. Rende solo ancora migliore una password buona.»

«Come con la minestra», disse Gisela. «Un brodo cattivo non diventa buono nemmeno col sale.»

«Gisela, non avrei saputo dirlo meglio. Ci ho appena provato.»

Lunga invece che complicata

«E allora cosa dovrei usare?», chiese Gisela. «Quelle robe con gli asterischi e i punti esclamativi e i numeri? Non me le ricordo.»

«Non devi neanche. Una volta si pensava che una buona password dovesse essere complicata. “X7!kq$9p”. Oggi si sa: la lunghezza conta più della complessità⁴. Ogni carattere in più rende molto più difficile indovinare. Prendi una frase. Quattro, cinque parole che non c’entrano niente l’una con l’altra, ma che per te formano un’immagine.»

«Per esempio?»

«Per esempio: “Rudi mangia volentieri involtini di cavolo al club di birilli.”»

Sotto il tavolo Rudi alzò la testa.

«Rudi gli involtini di cavolo non li può mangiare», disse Sabine.

«Proprio per questo nessuno ci arriva. È un’immagine che ti puoi ricordare, Gisela, perché è così sbagliata. E ha più di quaranta caratteri. Indovinare una frase così, con i computer di oggi, richiede più tempo di quanto esisterà ancora la Terra. Se è davvero abbastanza casuale e non si trova già da qualche parte su internet.»

«Però adesso l’hai detta ad alta voce», disse Tobi. «Adesso la conosciamo tutti.»

La luce di KevIn tremolò. «Buona obiezione. Gisela, per favore prendi un’altra frase. E non dirmela.»

Gisela rifletté. Poi le sue labbra si mossero, e sorrise. Nessuno seppe mai quale fosse, ma Uwe in seguito sostenne di aver riconosciuto la parola «Marlies».

Per ogni porta la sua chiave

«E adesso per ogni sito devo avere una frase così?», chiese Gisela. «Per ottantadue anni mi è bastato un solo mazzo di chiavi.»

«E nel mazzo non hai una chiave diversa per ogni porta?»

Gisela tirò fuori il mazzo di chiavi dal grembiule. Porta di casa, cantina, casetta del giardino, cassetta della posta, pista da birilli, una piccola d’argento di cui nessuno sapeva più a cosa servisse.

«Va bene», disse.

«Visto? E anche per le password esiste un mazzo di chiavi. Si chiama gestore di password. Un programma che per ogni sito crea una password sua, lunga e casuale, e te la custodisce, chiusa al sicuro. Poi devi ricordartene solo una. Quella con cui apri la cassaforte. Per quella usi la tua frase.»

«E se qualcuno ruba la cassaforte?»

«Allora ha una cassaforte chiusa. Il contenuto è cifrato. Senza la tua frase è arabo.»

«E se dimentico la frase?»

KevIn esitò. «Allora la cassaforte è chiusa anche per te. Per questo la scrivi su un foglietto e lo metti in un posto sicuro. Non sotto la tastiera. Un posto dove vai solo tu.»

«E dove sarebbe?»

«Questa», disse KevIn, «è l’unica cosa che non voglio sapere.»

Uwe era rimasto seduto tutto il tempo in perfetto silenzio. «Allora cambio anche la mia.»

«Buona idea.»

«In Schalke05.»

«Uwe.»

«Era uno scherzo!» Si alzò e andò nel corridoio. Poco dopo lo si sentì borbottare. Sembrava «Schalke06».

Due fattori e un bassotto

La sera Tobi configurò il gestore di password. Gisela gli sedeva accanto e controllava che non «premesse niente di sbagliato», il che significava che a ogni clic diceva «Alt!» e poi «Ah, ecco, vai avanti».

«E per la banca», disse Tobi, «facciamo ancora una cosa. L’autenticazione a due fattori. Oltre alla password ti serve anche il telefonino. Se qualcuno vuole entrare con la tua password, gli serve anche il tuo telefonino.»

«E se mi ruba anche il telefonino?»

«Allora gli serve ancora la tua faccia. O il tuo dito.»

Gisela si guardò la mano. «Quello non lo avrà.»

«Questo è il principio», disse KevIn. «Una cosa che sai. Una cosa che hai. Una cosa che sei⁵. Raramente un ladro riesce a prenderle tutte e tre.»

«Come con Rudi», disse Tobi. «Abbaia, morde, ed è un bassotto.»

«Non sono sicuro che sia la stessa logica.»

«Ha “SECURITY” sul collare. Conta.»

Rudi sbadigliò. Quel giorno non aveva morso nessuno, e non sembrava nemmeno che la cosa stesse per cambiare.

Alle nove e mezza era tutto configurato. Gisela aveva una cassaforte, una frase, una banca con l’autenticazione a due fattori e un tablet che per la prima volta le chiedeva la sua faccia. Lo teneva a distanza di braccio e sorrideva come si sorride nelle vecchie foto del passaporto, cioè per niente.

«Riconosciuto», disse il tablet.

«Ecco», disse Gisela. «Almeno uno.»

Il posto sicuro

Più tardi, quando erano tutti a letto, KevIn sentì dei rumori dalla camera di Gisela. Un cassetto che si incastrava. L’anta di un armadio. Poi il leggero scricchiolio di una sedia su cui saliva qualcuno che, a dire il vero, era troppo vecchio per farlo.

«Gisela? Tutto a posto?»

«Cerco un posto sicuro. Per il foglietto. Hai detto un posto dove vado solo io.»

«Per favore, non salire sulle sedie. Ho letto diverse statistiche in proposito.»

«Sono già scesa.» Un fruscio. Poi per un po’ ci fu un gran silenzio.

«Gisela?»

«Ho preso la scatola da sopra l’armadio. Quella di papà.»

KevIn sapeva chi era papà. Gisela gliene aveva parlato in giardino il giorno del suo compleanno, quando tutti gli altri erano già dentro. Wilhelm. Radiotelegrafista in guerra, tornato dalla prigionia nel 1949, e dopo non ne aveva mai più parlato.

«Cosa c’è nella scatola?»

«Il suo tasto Morse. Qualche foto. E questo.» Fruscio di carta. «Il suo quaderno. Non ci guardavo dentro da anni. Ci sono solo numeri. Pagine piene di numeri.»

«Che numeri?»

«Colonne. Sempre due cifre. Zero otto, diciassette, dodici, ventidue. Papà aveva una bella calligrafia. Me l’ero proprio dimenticato.»

Tacque di nuovo. KevIn aspettò. Aveva imparato che c’erano pause in cui non si doveva dire niente.

«KevIn», disse infine Gisela. «Adesso te ne intendi di segreti. Di macinato e sale e così via.»

«Un pochino.»

«Credi che questo sia un segreto?»

KevIn pensò ai radiotelegrafisti, ai gruppi di cifre e agli uomini che tornavano e non parlavano. Pensò che gli hash non si possono girare all’indietro, le cifrature invece sì, se si trova la chiave.

«Credo», disse, «che questo non sia un tritacarne. Credo che si possa girare all’indietro.»

Gisela mise il foglietto con la sua nuova frase nella scatola, sopra il tasto Morse, e chiuse il coperchio. Il quaderno lo tenne in mano.

«Allora lo facciamo domani», disse. «Con Tobi. Lui ha gli occhi giovani.»

Autunno. Per il compleanno nonna Gisela ha ricevuto un tablet, Tobi glielo ha configurato. Un martedì sera lo porge a KevIn: KevIn, la banca vuole di nuovo la mia password. KevIn: È normale. La banca vuole essere sicura che sia tu. KevIn, la banca vuole di nuovo la mia password. È normale. La banca vuole essere sicura che sia tu. Per il compleanno: un tablet.

Fonti del Capitolo 11

  1. NIST: FIPS 180-4, „Secure Hash Standard (SHS)“, 2015. https://csrc.nist.gov/pubs/fips/180-4/upd1/final I valori di hash di «Heinz1944», «Heinz1945» e «heinz1944» citati nel capitolo sono stati ricalcolati e sono corretti.↑
  2. Oechslin, P.: „Making a Faster Cryptanalytic Time-Memory Trade-Off“. Advances in Cryptology – CRYPTO 2003, LNCS 2729, Springer, 2003, p. 617–630. https://doi.org/10.1007/978-3-540-45146-4_36 Qui vengono descritte le cosiddette rainbow table, oggi la forma più nota di liste di hash precalcolate.↑
  3. Morris, R.; Thompson, K.: „Password Security: A Case History“. Communications of the ACM 22 (11), 1979, p. 594–597. https://doi.org/10.1145/359168.359172 Descrive la salatura delle password nel sistema di password di Unix.↑
  4. Temoshok, D. et al.: „Digital Identity Guidelines: Authentication and Authenticator Management“. NIST SP 800-63B-4, 2025. https://csrc.nist.gov/pubs/sp/800/63/b/4/final La linea guida vieta regole di composizione come «caratteri speciali obbligatori», punta sulla lunghezza minima e su liste di blocco delle password note e richiede hash delle password salati e lenti.↑
  5. Ibid. (nota 4): la linea guida distingue i fattori «something you know», «something you have» e «something you are».↑
  6. Provos, N.; Mazières, D.: „A Future-Adaptable Password Scheme“. USENIX Annual Technical Conference (FREENIX Track), 1999. https://www.usenix.org/legacy/events/usenix99/provos.html Descrizione originale di bcrypt.↑
  7. Percival, C.; Josefsson, S.: „The scrypt Password-Based Key Derivation Function“. IETF RFC 7914, 2016. https://www.rfc-editor.org/rfc/rfc7914 Percival aveva presentato il procedimento stesso nel 2009 alla BSDCan.↑
  8. Biryukov, A.; Dinu, D.; Khovratovich, D.; Josefsson, S.: „Argon2 Memory-Hard Function for Password Hashing and Proof-of-Work Applications“. IETF RFC 9106, 2021. https://www.rfc-editor.org/rfc/rfc9106↑