Physical random number generators and their use in cryptography
M. Stipčević1
1Photonics and Quantum Optics Research Unit, Centre of Excellence for Advanced Materials and Sensing Devices, Ruđer Bošković Institute, Zagreb, Croatia
Corresponding author: mario.stipcevic@irb.hr
Random numbers and random number generators (RNGs), seem to be of an ever increasing importance. Random numbers are essential in cryptography, Monte Carlo calculations, numerical simulations, statistical research, randomized algorithms, industrial testing, lottery etc. Today, random numbers are most critically required in cryptography and its numerous applications in our everyday life: mobile communications, e-mail access, online payments, cashless payments, ATMs, e-banking (TAN numbers), internet trade, point of sale, PINs for prepaid cards, wireless keys, general cyber-security, secure file erasing on the computer, industrial control of distributed systems SCADA (power grid, …), etc. The reason for that is the importance of protected, secure communication in all these applications. Security of data, whether stationary or on the move through an unsecure channel (e.g. communication) is achieved by cryptography: the science and art of data protection and secret/private communications.
Since beginning of mankind until roughly the end of the Cold War, cryptography was generally perceived as something interesting only to rulers, military, secret services and spies, however, with proliferation of secure cashless payment smart-cards, cash dispensers, points of sale, the birth of computer age and Internet in early 1990’s and finally recent explosion of mobile communications, cryptography flourished as an indispensable ingredient of modern life. Now, suddenly, everyone has willingly or unwillingly, knowingly or unknowingly became a user of cryptographic products. This also boosted research of random number generators as an indispensable ingredient of any cryptographic product.
Today, cryptography itself is a part of computer science, rigorously treated by mathematical proofs. For security reasons, so called “Kerckhoff principle” assumes that an adversary knows the cryptographic that she or he attacks. The only part not known to an adversary is a “secret key” and other (optional) one-time data. It follows that the key and other one-time data must be provably random, otherwise the adversary knows them by the Kerckhoff principle.
Therefore especially valuable are the information-theoretic provable physical RNGs which, at the state of the art, seem to be possible only by harvest of randomness inherent to certain quantum systems and such generator we call Quantum RNG (QRNG). On the other hand, current industry standards dictate use of RNGs based on free running oscillators (FRO) whose randomness is derived from electronics noise present in logic circuits and which, although quantum in their nature, cannot be strictly proven. This approach is currently used in 3-rd and 4-th generation FPGA and ASIC hardware, unsuitable for realization of provable RNG. We compare weak and strong aspects of the two approaches and discuss possibility of building a QRNG on a chip level.
In this talk we briefly summarize physical RNGs and their usage in cryptography and give an example of a QRNG developed at RBI