Milano, 16 gennaio 2016 - Ha salvato i cellulari, tablet e pc di tutto il mondo con un algoritmo, ma l’ha scoperto grazie a uno studente. Sebastiano Vigna, milanese di 48 anni, docente del dipartimento di Informatica all’Università Statale, è l’eroe - ignoto ai più - che ha salvato i principali browser da un difetto di sistema. Il suo «xorshift128+», sviluppato al Laboratorio di Algoritmica per il Web, è stato adottato da Chrome, Firefox e Safari per risolvere un problema riscontrato in JavaScript, il linguaggio usato da tutte le pagine web per la creazione degli effetti dinamici, che riguardava la generazione di numeri pseudocasuali necessari a identificare le transazioni negli acquisti online o per introdurre casualità nei videogiochi.
Professor Vigna, partiamo dal principio. «Fin dagli anni Quaranta si sono messi a punto algoritmi che permettono di calcolare in maniera deterministica dei numeri mimando la casualità che si può ottenere solo con processi fisici, come il lancio di un dado, che però sarebbero troppo costosi da riprodurre su larga scala per generare i milioni di bit casuali al secondo di cui si ha bisogno sul web. Fino al mese scorso, le sequenze di numeri pseudocasuali fornite dai browser più comuni erano basate su un algoritmo che poteva creare seri problemi. A scoprirlo è stata una una start-up che si occupa di scommesse online. L’algoritmo estraeva numeri simili più spesso di quanto ci si poteva attendere».
A questo punto interviene lei. «No. La start-up ha segnalato a Google il problema che ha rimpiazzato il generatore di JavaScript con l’algoritmo “xorshift128+”».
Ma non l’hanno contattata? «Ho una pagina web dove metto a disposizione i generatori che ho progettato, con tutti i parametri. Quelli di Google hanno trovato e usato il mio. Io l’ho saputo da un mio studente che ha letto la notizia in un blog degli ingegneri di Google. Ma c’è un aspetto ancora più comico».
Dica. «Mio fratello insegna sicurezza informatica all’Università di Santa Barbara, California. Anche lui aveva letto del nuovo algoritmo e ci ha fatto una lezione, ma senza sapere che l’avevo inventato io».
Ma questo codice sarà installato ed eseguito su quasi tutti i terminali esistenti. Non le viene in tasca nulla? «I miei codici sono di dominio pubblico. Non si guadagna».
Perché ha voluto fare l’informatico? «Appena sono arrivati i computer in Italia ne ho voluto uno. Alla fine della scuola media ho cominciato a programmare. E se ti prende, come altre dipendenze, dopo non ti passa più. Alla Statale mi sono laureato in matematica e ho conseguito un dottorato in Informatica. Oggi programmo algoritmi e realizzo teoremi. Un misto di pratica e teoria che mi piace».
Primo computer? «Un Commodore 64. Poi un’Amiga. C’erano i videogiochi. Ma mi sono stufato presto. Mi piacerebbe più scriverli che giocarci».
Ci descriva la sua passione. «Creare un oggetto che poi si moltiplica quando lo esegui ti dà l’adrenalina. I generatori partono da poche righe di codici ma poi generano miliardi di numeri. È come creare un essere vivente e farlo vivere. Poi trent’anni fa dovevi inserire tutto tu su un computer e ti veniva la passione. Oggi hai già i programmi installati. E nessuno sa farli».
Prossimi obiettivi? «Siamo entrati in un team interdisciplinare nel Centro per la Complessità e i Biosistemi della Statale: un mix di biologi, fisici e informatici dediti allo studio dei geni relativi alla diagnosi del cancro».