Maximizing the number of cells that can generate random numbers in SRAMs
Randomness can be extracted from any cell of the SRAM array.
The generation of random numbers by means of the method of the invention can be applicable in multiple fields. But the field where high-quality random numbers are requited is cryptography, with tasks like key generation, generation of "nonces", and generation of attack countermeasures. Ultra- low-power, low-cost lightweight cryptographic solutions use silicon Physical Unclonable Functions (PUF) to provide identity to devices and, in this way, ensure its authenticity. The power-up state of SRAM cells circuits is one of the most popular PUFs. Based on an initial selection process where the repeatability of the power-up value of each cell is evaluated, SRAM cells are classified to provide either identity or random numbers. However, due to the large variability in the fabrication process of nano-CMOS technologies, very few cells in an SRAM array can actually be used for random number generation using power-up methods. The developed method allows to extract randomness from any cell, independently of the technology of fabrication, improving dramatically the capabilities of these circuits for cryptographic applications.
Main innovations and advantages
A prior cell selection is not required · Instead, any cell, independently of each power up bias, can be used as a random number generator, thus taking advantage of all available cells.
A larger increase in minimum entropy is achieved when compared to other existing techniques, thus alleviating the need for intense post- processing.
The reading process can be performed at the nominal supply voltage, unlike other techniques, thus eliminating the technical difficulties of reading at a very low voltage.