• it

Articoli

Generare flussi casuali di bit in una pillola di Silicio

Lancio una moneta: testa. La lancio una seconda volta: testa. E poi ancora: testa, croce, croce, croce, testa, croce…. Se la moneta non è truccata, non posso prevedere quale sarà il risultato del prossimo lancio, anche guardando la serie dei risultati ottenuti. Posso sapere che avrò testa tante volte quanto croce, posso anche calcolare la probabilità di avere testa 7 volte su 10 lanci, posso dire tantissime cose, ma non posso prevedere il risultato del prossimo lancio.

 

Posso quindi ricorrere al lancio di una moneta per generare numeri binari casuali: se esce testa, la cifra estratta sarà 0, se esce croce 1. Così la stringa di risultati TTTXXXXTXTX diventa 00011110101, una stringa impredicibile di 0 ed 1 in posizioni completamente casuali; una stringa di “bit”, di “binary digit”, la base numerica su cui “contano” tutti i dispositivi elettronici.

 

Stringhe di bit casuali corrispondono a numeri casuali, fra cui numeri primi divisibili solo per se stessi - come 3, 5, 7, 11, ecc. È da numeri primi enormi che si costruiscono le chiavi crittografiche a protezione della nostra vita digitale. Più è certa la casualità, maggiore è la sicurezza delle chiavi che proteggono i nostri dati, le nostre foto, i nostri account social, le transazioni bancarie, le informazioni sulla nostra salute. Praticamente tutto ciò che viene affidato e trasmesso in rete.  Oltre ai sistemi di protezione dei nostri dati, i flussi di bit casuali oggi sono essenziali nel gaming, nel gioco d’azzardo, nella realtà virtuale, nelle simulazioni numeriche di sistemi complessi e nell’Internet Of Things.

 

 

Monete a parte, come posso generare, percepire e verificare la casualità?

 

François Morellet, Random Distribution of 40,000 Squares using the Odd and Even Numbers of a Telephone Directory, 1960.

 

Questa opera del 1960 di François Morellet è una delle più belle rappresentazioni della casualità. Morellet chiese alla sua famiglia di aprire a caso l’elenco telefonico di New York e di leggere un numero di telefono: se terminava con una cifra pari dipingeva una casella di colore rosso, se era dispari la dipingeva di blu.

Per i nostri occhi è facile percepire la casualità quando è rappresentata come fece Morellet: nei suoi quadri non si coglie nessuno schema, le sequenze di 40.000 pixel non mostrano nessuna struttura. In caso contrario, una mano malefica avrebbe alterato la casualità, con un pizzico di determinismo e di controllo esterno, permettendo dall’osservazione di una regione del quadro di prevedere cosa poteva apparire in un’altra regione.

 

https://xkcd.com/ Randall Munroe

 

 

Al di là del sistema utilizzato da Morellet, il metodo più comune per generare numeri casuali è tramite sofisticati algoritmi.

 

Questo metodo è molto veloce, economico e relativamente facile, tuttavia:

  • I software che generano i numeri casuali potrebbero avere degli errori, dei bug;
  • La ricetta utilizzata potrebbe avere una backdoor, una porta sul retro tramite la quale spiare la generazione e percepire quale possa essere la prossima cifra generata, violando lo schema di protezione;
  • Se riuscissi a conoscere i “semi” numerici utilizzati per inizializzare gli algoritmi, conoscerei tutta la sequenza delle cifre generate.

Ma, anche se l’architettura dell’algoritmo fosse perfetta ed i semi fossero ben custoditi, rimarrebbe comunque un problema di fondo, irriducibile: gli algoritmi sono strutture deterministiche ed estrarre casualità da un processo deterministico è un ossimoro, una contraddizione. Questa osservazione portò John Von Neumann, uno dei padri fondatori della Scienza dell’informazione, ad affermare: “Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin”.

 

Ovviare a queste limitazioni è possibile, ricorrendo all’analisi di fenomeni che, per la loro complessità o la natura stessa, producono risultati imprevedibili, esattamente come la nostra moneta.

 

Tuttavia, una moneta si può truccare, alterando la probabilità di ottenere 0 o 1, e così può accadere per ogni fenomeno governato dalla fisica classica. La casualità è vera e bella, ma fragile. Però, se passo al mondo microscopico, alla struttura della materia ed entro nel dominio della meccanica quantistica, sarà l’essenza stessa della Natura a proteggermi: in ogni istante il mondo sceglie una delle possibili infinite strade evolutive e quale prenderà non si può condizionare. Alcuni mondi sono più probabili di altri ma c’è una intrinseca, irriducibile impossibilità di prevedere quel che accadrà e quando accadrà. Un esempio è fornito dai nuclei instabili: in un materiale radioattivo un elemento della tavola periodica si trasforma in un altro ma quando accadrà e quale dei nuclei si trasformerà non lo possiamo prevedere, accadrà in modo casuale.  

 

Proprio il decadimento di nuclei radioattivi, dove la trasformazione è accompagnata dall’emissione di particelle sub-atomiche, raggi alpha, beta o gamma, è stato il fenomeno quantistico utilizzato per primo per generare bit di stato casuale.

 

 

Supponiamo che dei rivelatori “vedano” le particelle emesse durante un decadimento: come Morellet, potrei contarne il numero in un intervallo di tempo. Se il numero è pari, il valore del bit sarà 0, se dispari, 1. Robusto, semplice, quantistico ma poco pratico e poco efficiente: nessuno vuole tenere in tasca una sorgente radioattiva e se voglio che 1 e 0 abbiano la stessa probabilità il numero di particelle deve essere grande e “consumerò” tanti eventi per generare un solo bit.

 

 

Random Power, la start-up nata dall’intuizione di Massimo Caccia – professore ordinario di Fisica sperimentale presso l’Università dell’Insubria a Como, si basa sullo stesso principio, ma senza radioattività: gli impulsi non corrispondono alla rivelazione di particelle nucleari ma ad impulsi elettrici, auto-amplificati, all’interno di strutture in Silicio dedicate. Gli impulsi sono scatenati da singoli elettroni che, per la natura quantistica del Silicio e il fatto che non viviamo in un mondo congelato allo zero assoluto, in modo assolutamente imprevedibile saltano su livelli di energia che li svincolano dall’atomo a cui appartengono. Risentendo di un fortissimo campo elettrico all’interno del Silicio, impattano su altri sistemi atomici, liberano altri elettroni che, in un vero e proprio processo a valanga, originano in un miliardesimo di secondo un segnale di corrente rivelabile. Individuando quando il processo accade con una precisione non inferiore ad un miliardesimo di secondo ed analizzando la sequenza temporale degli eventi, si possono generare bit in una pillola di silicio.

 

Dalla Natura quantistica del Silicio ai bit, da questi ai numeri casuali e poi alla generazione di chiavi crittografiche, si risale il corso degli eventi per generare uno scudo quantistico inviolabile ed alimentare le tecnologie più rivoluzionarie per la cyber security. La valenza del progetto è stata riconosciuta e premiata per la seconda volta dall’Unione Europea nell’ambito del progetto-contenitore ATTRACT, dove la start-up, insieme ad una task force di partner europei, ha come obiettivo lo sviluppo entro tre anni di una piattaforma di sistemi avanzati di cybersecurity. Un obiettivo ambizioso ma un consorzio di estremo valore, che ha portato la compagine ad un finanziamento significativo al termine di un processo di valutazione competitiva estremamente selettivo: 1.211 proposte presentate in “Fase 1”, per un progetto pilota; 170 selezionate, tra le quali solo 87 hanno presentato un “scale-up project” per una “Fase 2”; solo 18 progetti sono stati considerati meritevoli, tra i quali quello legato a Random Power.

 

SECO – centro di eccellenza nel campo dell’innovazione tecnologica, dell’Internet of Things e dell’Intelligenza Artificiale – ed E4 Computer Engineering – il partner incaricato della System Integration e Commissioning – collaboreranno allo sviluppo di una scheda multi-generatore che sarà applicata alle infrastrutture dei data center. L’hardware si comporrà di un generatore di impulsi e di un chip disgiunto, progettato dalla francese WEEROC, che legge e processa i segnali emessi dal generatore.  

 

Parallelamente grazie al contributo di IMASENIC – chip design company spagnola – e NAGRAVISION - KUDELSKI Group verrà realizzato un chip monolitico che integra in un’unica soluzione il generatore e le funzionalità di analisi degli impulsi generati, per applicazioni in ambito IoT, automotive e comunicazioni. A questa fase del progetto parteciperà il gruppo IRIS della Fondazione Bruno Kessler, che si focalizzerà in particolare sulla progettazione del cuore del dispositivo, la matrice di “celle” che originano gli impulsi distribuiti casualmente nel tempo.

 

Infine, il consorzio lavorerà allo sviluppo di applicazioni agnostiche, che facilitino l’utilizzo dell’hardware in via di progettazione, con l’obiettivo di poter offrire un Root of Trust, la “radice” certificata di ogni processo crittografico.

 

Il progetto è partito ufficialmente il 15 Maggio 2022, con una durata di 26 mesi e con la squadra, ben integrata, di corsa al via.

 

 

Pubblicato da

 

 

 

Tag: Innovation