Generatore di Numeri Casuali
L’invenzione consiste in un nuovo approccio per la generazione di veri numeri casuali (true random number generation, TRNG) capace al contempo di realizzare una funzione fisicamente non-clonabile (physically unclonable function, PUF). Tale funzione è svolta da un circuito comprendente due memristor a configurazione seriale/parallela, dove un bit casuale viene generato dall’applicazione di un impulso standard ai capi dei memristor, ed il valore del bit risulta dal confronto tra le resistenze dei due memristor durante la lettura. La configurazione a 2 memristor garantisce intrinsecamente l’uniformità dei valori di bit, cioè la pari probabilità (50%) che essi siano 0 o 1. La generazione di bit casuali può essere ripetuta un numero arbitrario di volte per applicazioni TRNG, o può essere eseguita una volta sola ai fini di fornire una firma hardware di un circuito per applicazioni PUF (ad esempio, sicurezza e contraffazione di chip). L’unicità della firma è garantita dall’intrinseca variabilità stocastica del funzionamento del memristor.
La presenza di 2 memristor garantisce l’uniformità (probabilità del 50%) dei bit generati indipendentemente dalla tensione applicata. Questo approccio supera le limitazioni degli schemi a un memristor che invece richiedono una pre-calibrazione della tensione da applicare per garantire una pari probabilità di generare 0 o 1, risultante in una più alta complessità circuitale ed un maggiore costo.
L’invenzione trova applicazione in sistemi su chip che richiedano generazione di numeri casuali per applicazioni di criptografia o che contengano una firma hardware ai fini della sicurezza dell’informazione trasmessa. Considerata la crescente quantità di sistemi su chip (system on chip, SoC) per applicazioni internet-of-things (IoT) con trasmissione di dati sensibili, vi è un grande interesse in funzioni TRNG e PUF ad alta densità, basso costo, basso consumo di potenza, e coerenti con i requisiti di uniformità, unicità è affidabilità