EP3375130A1 - Method and device for optics based quantum random number generation - Google Patents

Method and device for optics based quantum random number generation

Info

Publication number
EP3375130A1
EP3375130A1 EP16795249.8A EP16795249A EP3375130A1 EP 3375130 A1 EP3375130 A1 EP 3375130A1 EP 16795249 A EP16795249 A EP 16795249A EP 3375130 A1 EP3375130 A1 EP 3375130A1
Authority
EP
European Patent Office
Prior art keywords
entropy
pixels
random numbers
extractor
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP16795249.8A
Other languages
German (de)
French (fr)
Inventor
Bruno Sanguinetti
Grégoire RIBORDY
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ID Quantique SA
Original Assignee
ID Quantique SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US14/937,202 priority Critical patent/US9772820B2/en
Priority claimed from US14/937,202 external-priority patent/US9772820B2/en
Application filed by ID Quantique SA filed Critical ID Quantique SA
Publication of EP3375130A1 publication Critical patent/EP3375130A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena

Definitions

  • the present disclosure pertains to a device for quantum random number generation based on an optical process of quantum nature comprising a light source emitting photons randomly as well as to a corresponding method, both allowing to obtain random numbers of high quality.
  • the present disclosure is situated in the context of the generation of random numbers.
  • the generation of high quality random numbers is essential to security of many applications such as cryptographic protocols, both classical and quantum.
  • conventional asymmetric key protocols like the well known DSA-, RSA- and Diffie- Hellman-algorithms, use random numbers, tested for primality, to generate their keys.
  • Another example is the unconditionally secure one-time pad protocol which needs a string of perfectly random numbers of a length equal to that of the data to be encrypted.
  • the main limitation of this protocol is the requirement for key exchange.
  • Quantum key distribution offers a way to generate two secure keys at distant locations, but its implementation also requires a vast quantity of random numbers. All these examples reflect Kerckhoffs' principle which dates back to the 19th century and states that the security of a cypher must reside entirely in the key.
  • Random number generation nowadays thus not only concerns defense issues such as initially targeted by Kerckhoffs' studies but has influence on many other fields like computer technology and science in general, economy, lotteries and games, as well as privacy issues of institutional— or individual's personal data stored or 'encrypted based on protocols using random numbers.
  • high quality random numbers are hard to produce, in particular they cannot be generated by a deterministic algorithm such as a computer program.
  • existing algorithm-based quasi-random number generators may advantageously be used for simulation purposes, but are not adapted for cryptography, since the resulting quasi-random numbers are, in principle, reproducible.
  • a physical random number generator is required, such as explained by C. H.
  • image sensors have been used to generate random numbers of classical origin by extracting information from a moving scene, e.g., a lava lamp, or using sensor readout noise, like disclosed by R.G. Mende, L.C. Noll, and S. Sisodiya in patent US 5,732,138 entitled “Method for Seeding a Pseudo- Random Number Generator with a Cryptographic Hash of a Digitization of a Chaotic System", 1998.
  • Other examples for such kind of physical random number generators are dis- closed in US 6,831,980, US 6,215,874, W02013/003943, EP 1 821 196, W001/95091.
  • QRNGs quantum random number generators
  • Known QRNGs are based on specialized hardware, such as single photon sources and detectors like disclosed, for example, by A. Stefanov, N. Gisin, 0. Guinnard, L. Guinnard, and H.
  • QRNGs indeed produce random numbers of quantum, i.e., random origin
  • the corresponding devices are complex and cost intensive.
  • Devices which generate random numbers of classical origin have a low performance in terms of randomness and throughput.
  • the device should have reduced size, complexity, and production cost as well as increased scope of applicability as compared to existing devices.
  • the present disclosure proposes a device that achieves the objectives identified above, as well as a corresponding method.
  • the device for random number generation based on an optical process of quantum nature distinguishes by the fact that it further comprises a light detector adapted to absorb the randomly emitted photons and to measure a number n of photons produced by said light source in a time interval T, and a randomness extractor, wherein the detector comprises a photon sensor acting as a photon-to-electron converter, an amplifier for converting the electron signal received from the photon sensor into a voltage and amplifying the voltage signal V, as well as an analog-to-digital converter for treating the amplified signal V received from the amplifier by encoding the amplified signal V into digital values d and sending these digital values d to the randomness extractor for further processing such as to produce quantum random numbers (QRNs) based on said number n of photons produced by the light source in a time interval T.
  • QRNs quantum random numbers
  • the light source may be chosen as a light emitting diode or a laser diode and the photon sensor may be formed by a CCD camera or a CMOS camera.
  • the camera respectively in general the photon sensor, is operated in the linear regime where its Fano factor is close to 1, and— for optimal performance— the analog-to-digital converter is tuned such as to have an electron-to-digital conversion factor ⁇ fulfilling the condition ⁇ > 1.
  • the device for generating random numbers can include a plurality or family of randomness extractors and the device can be calibrated using these extractors.
  • the device includes a light source that emits photons and a photon sensor with a plurality of pixels that absorbs the photons emitted from the light source.
  • the device can include a processor with soft- ware that calculates respective minimum entropy levels for the pixels of the photon sensor, and based on these calculated entropy levels, matches or associates one of the randomness extractors with each of the pixels.
  • the extractor associated with the each pixel can generate a number of high-entropy bits for generating a random number.
  • the disclosure is also related to a corresponding method and computer program means adapted to implement this method.
  • Figure 1 schematically illustrates the distribution of probability P(n) that a number n of photons is measured by an image sensor's pixel, said probability being the combination of quantum uncertainty a q originating from the quantum nature of a light source and technical noise Gt originating from the technical equipment used.
  • Figure 2 schematically illustrates the principal components of a device for random number generation according to an exemplary aspect, these components being a light source, a detector, and a randomness extractor, wherein the detector comprises several sub-elements, as well as the operating principle of the device.
  • Figure 3 schematically illustrates an example of a device for random number generation according to an exemplary aspect, the device comprising an LED as a light source, a detector illuminated by said LED, and a randomness extractor which treats the digital output of the detector.
  • Figures 4a and 4b show, for an ATIK 383L camera, respectively for the camera included in the Nokia N9 mobile telephone, the Fano factor F for various illuminating intensities.
  • Figures 5a and 5b show normalized histograms of the photon distributions obtained when using an ATIK 383L CCD camera and a Nokia N9 CMOS camera, respectively, as a detector.
  • Figure 6 schematically illustrates a block diagram of device for random number generation according to another aspect of the present disclosure.
  • Figure 7A illustrates an example of a photon sensor according to the exemplary aspect to illustrate a method for calibrating the random number generation device described herein.
  • Figure 7B illustrates a distribution of probability P(n) that a number n of photons is measured by the pixels in the corresponding regions "A", "B", and "C" as shown in Figure 7A.
  • Figure 8 illustrates a graph depicting a representation illustrating a minimum en- tropy variation that is plotted as a function of the absorbed photons n according to an aspect of the present disclosure.
  • Figure 9 illustrates a flowchart for a method of calibration of the random number generation device at a pixel level according to an aspect of the present disclosure.
  • Figure 10 illustrates a method for calibration of the random number generation device according to an aspect of the present disclosure.
  • the concept of the present disclosure relies on the fact that some properties of a quantum state are unknown before measurement as well as fundamentally unpredictable.
  • One such property, used in most known QRNGs, is the path taken by a photon impinging on a beamsplitter.
  • Another such property is the number of photons produced by a light source in a time interval T. It is the latter effect which is used in the context of this disclosure.
  • most light sources emit photons at random times or emit a random number of photons at a time.
  • both of these effects shall in the further course of the description be embraced by the wording that such light sources emit photons randomly. In any case, it is impossible to predict the number of photons emitted per unit time.
  • Quantum noise This quantum effect is usually called “quantum noise” or “shot noise” and has been shown to be a property of the light field rather than a technical limitation of the light source or of the detector, see e.g., the article “Experimental Realization of Sub-Shot Noise Quantum Imaging” by G. Brida, M. Genovese, and I. R. Berchera published in Nat. Photon, 4(4):227-230, 2010. Only some particular light sources, namely amplitude-squeezed light, can overcome this fundamental noise, such as reported by Daniel F. Walls in the article “Squeezed States of Light” published in Nature, 306: 141-146, 1983.
  • the basic assump- tions of this approach consist in that (a) a number n of photoelectrons can be measured by a detector, e.g., an image sensor's pixel, with a probability P(n), (b) this measured distribution will be, assuming that the detector is operating in a linear regime, the combination of quantum uncertainty o q and technical noise ⁇ ,, and (c) from a single shot measurement these two noise components cannot be distinguished, however the technical noise a t is assumed to be fully deterministic and thus known to an adversary.
  • a detector e.g., an image sensor's pixel
  • a device adapted to realize the above concept comprises, such as shown schematically in Figure 2, a light source 1, a detector 2, and a randomness extractor 3.
  • the light source 1 may be chosen amongst a light emitting diode (LED), a laser diode (LD), or any other adequate light source, even ambient light, as long as the source emits photons randomly in the meaning defined above.
  • the detector 2 comprises several elements and can be modeled, such as also schematically indicated in Figure 2, as lossy channel 2.1 with a transmission probability ⁇ , similar to a beamsplitter with a given splitting ratio, followed by a photon sensor 2.2 acting as a photon-to-electron converter with unit efficiency.
  • the transmission probability ⁇ contains all the losses due to the optical elements and the photon sensor's 2.2 quantum efficiency.
  • the photon sensor 2.2 may be realized by any kind of photon detector, in particular by an image sensor with an array of pixels or even by each individual pixel of such an image sensor, like a nowadays commercially available CCD or CMOS camera or similar off-the-shelf components adapted to act as an image sensor and having sufficient light sensitivity.
  • the detector 2 further comprises processing electronics, in particular an amplifier 2.3 for converting the electron signal received from the photon sensor 2.2 into a voltage and amplifying the voltage signal V as well as an analog-to-digital converter (ADC) 2.4 which treats the amplified signal V received from the amplifier 2.3 by encoding the amplified signal V representing photon, respectively electron numbers into digital values and sending these values to further processing, i.e., to said randomness extractor 3 which will be described in more detail hereafter.
  • the amplifier 2.3 and the ADC 2.4 may also be chosen amongst commercially available elements. All the above mentioned components may be inte- grated at a circuit, package or dye level.
  • the randomness extractor can be implemented in software, but is also possible to realize that component by hardware.
  • an electron-to- digital conversion factor ⁇ . If ⁇ > 1 , then for each possible number of electrons generated by the photon sensor 2.2, i.e., for each possible number of photons produced by the light source 1 and absorbed by the sensor 2.2, there is one unique digital value or code at the output of the ADC 2.4, i.e., at the output of the detector 2.
  • the condition ⁇ > 1 is thus not an obligatory requirement, but preferred for optimal performance of the device.
  • noise needs to be added, since noise of different origins like, e.g., thermal noise, leakage current, or readout noise cannot be avoided in a real device. In general, this noise fol- lows a normal distribution and adds linearly to the signal, like symbolically indicated in Figure 1.
  • a device such as described above allows to access the shot noise statistics of the light source 1 and thus to generate random numbers of quantum origin.
  • each photon absorbed by the photon sensor 2.2 will generate an electron, in particular within a corresponding pixel if an image sensor with an array of pixels is used.
  • the number of electrons generated in time interval T is unpredictable, due to the quantum nature of light and of the absorption process.
  • the number of electrons is converted to a voltage, amplified and digitized by components internal or external to the sensor 2.2. It is important that the amount of light and the parameters for the amplification and digitization are appropriate, so that a significant amount of quantum entropy is collected.
  • an appropriately tuned randomness extractor 3 allows to ensure that the output random numbers have a quan- turn origin, i.e., that the amount of quantum entropy per output bit is close to 1 , such as will become clear in the further course of the description which will also specify in more detail the required amount of light and said parameters for the amplification and digitization.
  • the detector preferably should fulfill the condition ⁇ > 1 mentioned above.
  • the measured value X can be encoded over b bits, but it is of course possible to encode the value on another basis than the binary system.
  • the entropy H(X q ) of quantum origin per bit of the output will be on average H(X g )/b ⁇ l. Assuming adequately chosen operating conditions such as mentioned here above, where the ADC 2.4 is not saturated, the entropy s per bit can be approximated by dividing H(X q ) by the number of output bits of the ADC. To obtain a string of perfectly random bits, i.e., with unit quantum entropy per bit, an extractor is required.
  • an extractor computes a number k of high-entropy output bits y t from a number 1 > k of lower-entropy input bits r,-. This can be done by performing a vector-matrix multiplication between the vector formed by the raw bit values r,- and a random 1 x k matrix M (performed modulo 2) according to
  • the matrix M serving as randomness extractor 3 usually is a pre-generated constant. For raw input bits with entropy s per bit, the probability that the output vector yi deviates from a perfectly random bit string is bounded by
  • an adequate randomness extractor 3 may also be realized by a hash function performing an operation equivalent to the above described matrix-multiplication extractor. This is known to the person skilled in the art and thus doesn't need to be further described at this place.
  • a device such as described above, comprising a light source 1, a detector 2, and a randomness extractor 3 of the type just described, as well as the results which may be obtained with such a device, two different exemplary designs of the proposed random number generator shall now be exposed.
  • image sensors like the ones found in digital cameras and smartphones have improved enormously. Their readout noise nowadays is of the order of a few electrons and their quantum efficiencies can achieve 80%.
  • image sensors are 5 intrinsically parallel and offer high data rates. It is thus possible to use such image sensors as a component of a quantum random number generator, which shall in the following be demonstrated both with a commercial astronomy monochrome CCD camera, an ATI 383L camera, and a CMOS sensor in a mobile phone, a Nokia N9 camera. The latter is a color camera from which only the green pixels were used for the purpose of the following demonstration.
  • Figure 3 schematically illustrates an example of a device for random number gen- eration according to an exemplary aspect of the present disclosure, the device comprising a light source 1 which is realized by a LED, a camera 2 which is fully and homogeneously illuminated by said LED and the raw data of which, i.e., the binary representation of pixel values produced by the camera 2, are concatenated and passed through a randomness extractor 3 which in turn outputs quantum random numbers (QRNs) ready to be used.
  • the camera 2 is supposed to be formed either by said ATIK 383L camera or said Nokia N9 camera.
  • a well-controlled light source like a LED like as schematically shown in Figure 3, is used.
  • a number of photons n is absorbed by the photon sensor 2.2 of each camera 2 and converted into an equal number of electrons. This charge is in turn converted into a voltage by the amplifier 2.3 and finally digitized by the ADC 2.4.
  • these components are supposed to form part of the camera 2 in Figure 3.
  • the amplifier gain which in commercially available cameras corresponds to the "ISO" setting, is chosen such that each additional input electron will result in an output voltage increase sufficient to be resolved by the ADC, which means that each electron increases the digital output code c by at least 1.
  • both detectors have a large range of intensities where the Fano factor is close to 1, in particular both the ATIK and the Nokia cameras have good linearity, i.e., better than 0.998 for a large range of light intensities.
  • the statistics are dominated by the quantum uncertainty, i.e., by the shot noise.
  • saturation occurs, which means that the Fano factor decreases, as the output is a constant.
  • the Nokia N9 camera this happens at intensities corresponding to about 450 to 500 absorbed photons per pixel, whilst for the ATIK camera this happens at about 2 x 10 4 absorbed photons per pixel. This is due to the high amplifier gain used, which was chosen at ISO 3200.
  • a Fano factor much greater than 1 is observed, which is due to the detector's technical noise.
  • Image sensors such as CCD and CMOS have various sources of noise, like thermal noise, leakage current and readout noise.
  • Thermal and leakage noise accumulate with integration time, such that it is possible to eliminate or at least greatly reduce these noise sources by using short exposure times, e.g., exposure times of the order of a millisecond, e.g., in the range of 0.1 to 100 milliseconds.
  • readout noise becomes the dominant source of technical noise and is given by the readout circuit, the amplifier and the ADC.
  • noise is usually counted in electrons
  • the ATIK 383L CCD camera and the Nokia N9 CMOS camera have a noise of 10 e ⁇ , and 3.3 e ⁇ , respectively.
  • the exposure time has to be chosen depending on the type of camera, i.e., the type of detector 2, and the light intensity such that the detector works in its linear regime and that, preferably, the readout noise becomes the dominant source of technical noise. In practice, the exposure times thus may vary greatly.
  • Table 1 Normalized histograms of the obtained photon distributions are shown in Figures 5a and 5b for the ATIK 383L CCD camera and for the Nokia N9 CMOS camera, respectively.
  • equation (2) it is then possible on the basis of these facts and operating parameters to use equation (2) to calculate the amount of entropy of quantum origin per pixel, which is 8.9 bits and 6.4 bits for the ATIK 383L CCD camera and for the Nokia N9 CMOS camera, respectively. These are encoded over 16 and 10 bits, respectively, resulting in an average entropy per output bit of 0.56 for the ATIK 383L CCD camera and 0.64 for the Nokia N9 CMOS camera. These results are also figuring in Table 1.
  • an adequate extractor 3 is applied according to equation (3) which allows to apply a mixing of the randomness of quantum origin contained in each raw bit obtained from the detector 2 into the output bits of the randomness extractor 3 forming the final digital output of the QRNG as well as to increase the entropy in the output bits of the randomness extractor 3 as compared to the one in the raw bits obtained from the detector 2. This is an important reason why it is preferable, but not necessary for realization of a QRNG according to the present disclosure that the inevitable technical noise a t of the detector 2 is smaller, or comparable to, the quantum uncertainty a q .
  • the choice of the extractor 3, in particular with respect to its dimension k, is done according to the above mentioned principles.
  • the detected photon number distribution can be described by a Poisson distribution and its minimum entropy can be approximated by equation (1).
  • the size and the compression factor of the extractor 3 may be tuned such as to ensure that each bit of output from the extractor has an amount of quantum entropy close to 1 by determining the size and the compression factor of the randomness ex- tractor so that the number of output bits per measurement is smaller than the minimal entropy of the detected photon number distribution.
  • a second testing step may consist in the "die harder" randomness tests which can be applied on both the extracted bit strings, i.e., the raw random numbers produced at the output of the detector 2 and the random numbers delivered by the randomness extractor 3.
  • This set of tests contains the NIST test, the diehard tests and some extra tests. The QRNG according to the present disclosure passed all these tests.
  • a QRNG Quality of the random numbers generated
  • other parameters of a QRNG are important, e.g., the production speed of the random numbers, as well as affordability and portability of the device.
  • speed is not as important as the affordability and portability which are provided by this system.
  • a quantum random number generator based on an image sensor can provide very reasonable performance in terms of speed.
  • Consumer grade devices such as the CCD and CMOS detectors used acquire data at rates between 100 Megapixels per second and 1 Gigapixel per second. After the necessary processing, each pixel will typically provide 3 random bits so that rates between 300 Mbps and 3 Gbps can be obtained.
  • processing can be done either on a Field Programmable Gate Array (FPGA) or could be embedded directly on a CMOS sensor chip, in- eluding the processing step realized by the randomness extractor 3 which in that case is fea- tured by hardware.
  • FPGA Field Programmable Gate Array
  • CMOS sensor chip CMOS sensor chip
  • implementing the randomness extractor 3 fully in the software of a consumer device is possible and can sustain random bit rates greater than 1 Mbps, largely sufficient for most consumer applications. Therefore, it is possible to realize a device for quantum random number generation according to the present disclosure by using technol- ogy compatible with consumer and portable electronics.
  • a corresponding method for random number generation comprises the steps of providing a light source 1 emitting photons randomly, providing a light detector 2 adapted to absorb the randomly emitted photons and to measure the number n of photons produced by said light source 1 in a time interval T and comprising a photon sensor 2.2, an amplifier 2.3, and an analog-to-digital converter 2.4, and providing a randomness ex- tractor 3, such as to allow detecting the number n of photons produced by said light source 1 in a time interval T and converting said number of photons into a corresponding number of electrons with the help of said photon sensor 2.2 of detector 2, converting the electron signal received from the
  • the photon sensor 2.2 of detector 2 is illuminated by the light source 1 with a photon intensity situated within a range of intensities where the Fano factor of the photon sensor 2.2 is close to 1. It is also possible to control the mean number of absorbed photons by adjusting the exposure time of the camera, within the limit that the exposure time needs to be chosen such that the camera works in its linear regime.
  • the raw digital values r, generated at the output of detector 2, respectively the digital values y ( at the output of the randomness extractor 3 are encoded over b bits, or are encoded on another basis than the binary system.
  • a device for quantum random number generation allows generation of high quality random numbers of quantum origin since being based on a fundamentally random physical process.
  • the random numbers may be generated at a high rate.
  • the device can be implemented with commercially-available imaging devices such as CMOS and CCD cameras which are small and low cost. Also, it can be easily integrated on a printed circuit board.
  • all elements such as light source, light detector, and randomness extractor, as well as other, optional components like for self-testing and further data processing such as encryption and transmission can be integrated at the system, circuit, package or dye level, which improves size, ease of use, security, reliability and energy efficiency of the whole device.
  • many mobile and computing devices nowadays include an image sensor of a type adapted to be used, either by minor modification or in some cases directly, as a detector such as required in a device according to the present disclosure to generate quantum random numbers.
  • image sensors have low-power consumption compatible with mobile and bat- tery powered applications.
  • the randomness extractor can be implemented in hardware or, by software.
  • the device can be integrated with other components such as a camera, encryption, transmission, diagnostic device etc.; in particular, given that many consumer electronics articles are anyway equipped with an image sensor adapted to be used for the purposes of the present disclosure, the latter may advantageously be integrated with such components and corresponding software into a computer, a telephone, in particular mobile computers or telephones, tablets, network cryptographic devices, personal cryptographic devices, electronic wallets, or any other type of similar instruments.
  • a camera such as a camera, encryption, transmission, diagnostic device etc.
  • the latter may advantageously be integrated with such components and corresponding software into a computer, a telephone, in particular mobile computers or telephones, tablets, network cryptographic devices, personal cryptographic devices, electronic wallets, or any other type of similar instruments.
  • the exemplary device for random number generation is provided with a single randomness extractor 3.
  • a light source 1 illuminates a matrix or array of pixels of the photon sensor 2.2 and the statistical distribution of the number of photons emitted by the light source 1 during a given time interval T is utilized as the source of randomness.
  • each pixel can produce an integer that is statistically distributed according to the Poisson distribution, as discussed above.
  • the randomness extractor 3 is provided to not only remove defects, but also to make the distribution of the integers uniform and unbiased.
  • the actual entropy that is produced by a particular pixel of the array of photon sensor 2.2 can depend on local parameters, including the level of illumination, the sensitivity of the pixel, and the like.
  • Figure 6 schematically illustrates a block diagram of device for random number generation according to another aspect of the present disclosure.
  • a random number generation device that provides high entropy per bit by adapt- ing one of a plurality of randomness extractors based on the quality and conditions of each pixel.
  • a group of pixels will yield sub-optimal entropy, for example, due to insufficient illumination, pixel saturation, or other pixel defects and nonlinearities.
  • the amount of genuine quantum entropy generated by each pixel or group of pixels is evaluated and the measured value from such pixels is sent to the appropriate extractor, that will yield sufficiently high-entropy output bits.
  • the random number generation device shown includes many of the same components of the exemplary aspect described above with respect to Figure 2. Namely, the device includes a light source 1 and a detector 2, which further includes a lossy channel 2.1, a photon sensor 2.2, an amplifier 2.3 and a ADC 2.4. The details of these components are described above and are the same and, therefore, will not be further described.
  • the random number generation device includes a plurality of randomness extractors. As shown, the device includes a pair of randomness extrac- tors 3a and 3b, but it should be appreciated that the exemplary device can include three or more randomness generators in accordance with the spirit of the disclosure described herein.
  • the random number generation device optimizes the random bit output after randomness extraction by adapting one or more randomness extractors 3a and 3b to each element of the photon sensor 2.2.
  • the size and compression factor of the randomness extractor must be tuned according to the element or pixel with the lowest entropy. As a result, for all other pixels, the randomness extractor will be suboptimal, leading to a degraded random output throughput.
  • this limitation is not well suited to dealing with entropy degradation due to aging of the photon sensor 2.2 or the like. Indeed, it is possible that, due to aging effects (e.g., degradation of the light source 1 or the like), the entropy of the pixel elements can fall below the minimum threshold of the randomness extractor, leading to imperfect randomness generation.
  • the random number generation device goes through a periodic calibration in which the entropy of each pixel is measured and then the plurality of randomness extractors 3 a and 3b are matched to the pixels.
  • the randomness extractors are matched to the pixels (or regions of pixels) such that the measured entropy is higher than the minimum entropy threshold of the selected randomness extractor and that the selected randomness extractor is the most efficient extractor meeting the previous measured condition.
  • the randomness extractors can be implemented using vector-matrix multiplication, hash functions or the like and can be implemented using software and/or a combination of software and hardware.
  • the matching can be implemented by identifying the entropy level of the pixel (or region of pixels), determining which randomness extractors of the plurality have a minimum entropy threshold that is below the measured entropy level, and then adjusting the software and are hardware such that the digital values corresponding to the electron signals output by the respective pixel are input to the matched/associated randomness extraction during normal operation of the device (i.e., when the device is operating to generate random numbers).
  • the plurality of randomness extractors can concentrate the randomness that exists in many weakly-random bits into a few bits each with high level of randomness, for example, a minimum entropy of approximately 1.
  • the randomness extractor can be configured on a by bit operation. That is, if it is determined known that a bit-string (e.g., 10 bits long) has a minimum entropy H m , n > 1 , then the randomness extractor can apply an operation that depends on all the bits, such as taking the XOR of the 10 bits, resulting in a single bit output that has an entropy very close to 1.
  • the randomness extractors can be based on vector-matrix multiplication.
  • an input bit vector with low en- tropy-per-bit of length X is multiplied by a (fixed) random bit matrix of size X, Y, which results in a shorter output bit vector of size Y with high entropy-per-bit.
  • matrix size is an appropriate compromise between the efficiency of the extractor, i.e., how much of the entropy is extracted, and the requirement for computational resources.
  • a larger matrix will extract randomness more efficiently, but require more gates to be implemented or longer software runtimes or requires larger buffers to acquire bits.
  • the randomness extractors can be selected as hash functions that concentrate the entropy from an arbitrary-length input string into a fixed-length output that has higher entropy per bit.
  • each of the plurality of randomness extractors 3a and 3b can have a different minimum entropy threshold according to the exemplary aspect.
  • each pixel will be associated with a particular extractor of the plurality of randomness extractors 3 a and 3b.
  • the pixels may be grouped by extractor.
  • the random number generation device will operate for a period of time before a calibration of the device is performed.
  • the calibration includes measuring the entropy of each pixel (or a portion thereof) of the photon sensor 2.2 and then determining the optimal randomness extractor of the plurality of randomness extractors 3a and 3b to be used for each pixel (or grouping of pixels).
  • the process for selecting the optimal ran- domness extractor for a pixel or grouping of pixels will be described in more detail below with respect to Figure 10.
  • Figure 7 A illustrates an example of a photon sensor according to the exemplary aspect to illustrate a method for calibrating the random number generation device described herein.
  • the photon sensor which should be understood to be photon sensor 2.2, for example, is composed of X number of pixels. Furthermore, each pixel can be classified from X (1; i ) to X ( , N ) based on the particular pixel's column number and row number. As described above, based on a typical light source used (e.g., an LED light source), the number of photons emitted per unit of time is governed by a Poisson distribution. As a result, the number of detectable photons shows a statistical variation depending on the pixel location which is described as a Poisson distribution.
  • a typical light source used e.g., an LED light source
  • illumination may not be uniform, for example because of the geometric arrangement of the device, which can lead to additional statistical variations depending on pixel location.
  • the detected signal can also depend on pixel intrinsic characteristic and defaults (as it may be a dead or hot pixel). Therefore, the level of detected signal will very across the pixel array, which implies that the level of ex- tractable entropy will also vary across the pixel array.
  • a first region “A” (which corresponds to pixel location ⁇ 3 ⁇ 4 ) ) is a light sensor region having high intensity illumination and high photon density detection.
  • a second region “B” is a light sensor region with a medium intensity illumination and medium photon density detection.
  • a third region “C” is a light sensor region with low intensity illumination and low photon density detection.
  • a dead pixel is illustrated in X(i ,t ).
  • Figure 7B further illustrates a distribution of probability P(n) that a number n of photons is measured during a timeslot by the pixels in the corresponding regions "A", "B", and "C".
  • the probability P(n) can be based on the combination of quantum uncertainty ⁇ ? originating from the quantum nature of a light source and technical noise originating from the technical equipment used.
  • the mean of the distribution and the probability P(n) that the number n of photons will be measured is highest at the pixel location X(ij), and is slightly lower at the adjacent pixels (e.g., X(i j -i) or X(ij+i)) to the focal pixel, and lowest at pixels spaced farther from the focal pixel (e.g., X(ij>), for example at pixel X(ij+ 2
  • the measured values output at each pixel are encoded over b bits according to an exemplary aspect, although it is of course possible to encode values on another basis than the binary system.
  • the amount of quantum entropy corresponds to the entropy of a Poisson distribution with a mean equal to the average number n of photons absorbed, where n is the number of absorbed protons.
  • the minimum entropy variation is calculated according to the following formula:
  • Figure 8 illustrates a graph depicting a representation illustrating a minimum entropy variation that is plotted as a function of the absorbed photons n.
  • the graph illustrated in Figure 8 provides several regions that can be defined depending on the illumination in the regions, as defined by a number of photons detected in the region.
  • Figure 8 illustrates regions "A" and "B” that correspond to the regions of the pixel array described above with respect to Figure 7A.
  • region “B” is the area defined as 1 - ⁇ log( «) - ⁇ 10
  • region "A" is the area where 10 - ⁇ log( w) 1000 .
  • n is equal to the mean of the number of photons absorbed over a given time interval T.
  • Area "A” is the most illuminated pixel or region, whereas Area “B” is less illuminated.
  • the minimum entropy levels or thresholds H A and Hg are defined accordingly.
  • UMAX corresponds to the highest level of entropy the pixel can obtain before saturation, which leads to a "null” extractor, as will be discussed in detail below.
  • Area "C” could have insufficient or be saturated, and, therefore, need to be associated with the null extractor.
  • the entropy s of quantum origin per bit of output is defined on average as H min lb, where b is the number of bits over which the measured values output at each pixel are encoded.
  • the entropy 3 ⁇ 4 for raw input bits per bit for region "A" is H b and likewise the entropy 3 ⁇ 4 for region "B” is J3 ⁇ 4/b.
  • the randomness extractor is required to obtain a string of perfectly random bits (i.e., with a unit quantum entropy per bit).
  • the randomness extractor is configured to calculate a number k of high entropy output bits y j from a number / - k of lower entropy bits r t -. This operation may be done by performing a vector-matrix multiplication between the vector formed by the raw bit values r ⁇ and a random / x k matrix M, according to formula (3).
  • a minimum entropy H A and 3 ⁇ 4 can be calculated and a dedicated randomness extractor can be associated based on the respective minimum entropy values as described above.
  • matrix MA is a lxk A matrix
  • matrix M B is lxk B matrix with k A k B .
  • the random number generation device is configured to be periodically calibrated.
  • the normal operation i.e., generation of random numbers, as described above
  • the device can associate each such element with a particular randomness extractor of the plurality of randomness extractors 3a and/or 3b. According to one exemplary aspect, this association is performed by determining that the measured entropy is higher than the minimum entropy threshold of the selected extractor.
  • the device can ensure that the selected randomness extractor is the most efficient of all the extractors that satisfies this condition. Accordingly, once this association is made, random number generation device can return to normal operation (i.e., generation of random numbers) where the associated randomness extractor for a given pixel or region of pixels will receive the respective digital values from the specific pixel or region of pixels to produce quantum random numbers based on the number n of photons produced by the light source in a time interval T, as described above.
  • normal operation i.e., generation of random numbers
  • the calibration process can be repeated periodically.
  • the random number generation device is configured to adjust the number generation process to avoid or minimize aging effects of the photon sensor 2.2 that lead to entropy degradation.
  • Figure 9 illustrates a flowchart for a method of calibration of the random number generation device at pixel level according to an aspect of the present disclosure.
  • Figure 9 illustrates a method for selecting a particular randomness extractor according to the response of a specific pixel subjected to illumination.
  • the calibration starts and N reading cycles of each pixel are performed through pixel illumination as described above (shown as step 905 in Figure 9).
  • the illumination can be continuous, i.e. the light source is on during the whole N reading cycles, or pulsed, i.e. the light source is turned on and off at each cycle of the N cycles.
  • the output of the N reading cycles are used to plot histograms of photons detected (Step 910).
  • the amount of photons absorbed n and associated entropy minimum entropy H min is estimated for each pixel.
  • One possible approach to estimate the minimum entropy is to calculate the mean photon number associated with the statistical distribution represented by the histogram.
  • the device can for example calculate and store for each pixel X ( j j) an estimate of the average the absorbed photons per reading cycle n X( j j) and a pixel-specific minimum entropy
  • the exemplary aspect of the device includes a plurality of randomness extractors 3 a and 3b.
  • a third randomness extractor 3o is provided.
  • the randomness extractor which includes a set of extractors (3a, 3b, and 3o) can be chosen depending on the number of photons detected by a pixel over a reading cycle.
  • extractor 3a is designed to transform M bits in N bits (with 2 x N ⁇ M), where extractor 3 a is dedicated to areas with higher illumination.
  • extractor 3b has the capacity to transform M bits in N bits (with 10 x N ⁇ M), where extractor 3b is dedicated to low light illumination areas.
  • extractor 3o transforms M bits in 0 bits, which is dedicated to areas with saturation or very low light illumination (e.g., the null extractor described above).
  • an extractor from a family of predefined set of extractors (the set of extractor 3a, 3b and 3o) is associated to each illumination area (e.g., respectively, A, B and C of Figure 7a) and by consequence to a pixel or a sub-matrix of pixels (a sub matrix does not need to be formed of adjacent pixels).
  • Said step 920 relies on two sub-steps 925 and 930 where the software of the disclosed device is executed to determine which randomness extractor should be used for which pixel.
  • the device will associate extractor 3o with the pixel X (step 930a).
  • n A , 3 ⁇ 4, and njyiA can be predetermined thresholds for associating the ran- domness extractors.
  • the device assumes that the pixel is absorbing at a very low light and thus assigns the null extractor, as described above.
  • the device recognizes that pixel has reached saturation and again assigns the null extractor, as described above.
  • the result of the process described in Fig. 9 is an "entropy to extractor map". This map associates each pixel to a particular extractor of the family of extractors (as an example 3a, 3b, 3o).
  • This calibration process described in Fig. 9 may be done as a boot step before quantum random number generation operation, when the disclosed device is turned on.
  • the activation of this cali- bration process can be triggered by events such as time interval since last calibration, change in environmental conditions or even external user request.
  • Figure 10 illustrates the method for calibration of the random number generation device based on live update, which means that calibration is done while random bits acquisition is done in parallel.
  • the operation cycles starts in order to generate random numbers. This is done while light source 1 illuminates the photon sensor 2.2 including a matrix of pixels and absorbed photons are measured to characterize the output of the light sensor matrix in a second step 1010.
  • the illumination can be continuous or pulsed.
  • This illumination-reading step 1010 enables simul- taneously to acquire random bits and update the "entropy to extractor map" based on said acquired bits.
  • step 1020 the values read at Step 1010 on each pixel of the light sensor matrix are stored in a buffer.
  • the buffer used for each pixel is determined according to the "entropy to extractor map".
  • a buffer can be associated to a single pixel. In this case, the values read from this specific pixel are appended at each step 1020 to the buffer.
  • a buffer can also be associated to a sub-matrix consisting of more than one pixel. Note that the sub-matrix does not need to consist of adjacent pixels.
  • the values read from all the pixels of the sub-matrix are appended at each 1020 to the buffer.
  • the buffers of Step 1020 are emptied from time-to-time (not shown on Figure 10). This is achieved by sending at least some of the values stored in the buffer to the randomness extractor associated with this buffer and erasing these values from this buffer.
  • a minimum entropy H min is calculated at each reading cycle. This calculation takes into account the minimum entropy value calculated at the previous step, as well as the current illumination-reading cycle.
  • One possibility to calculate this minimum entropy is to update a moving average of the mean number of photons absorbed in a cycle and to use this value to calculate the minimum entropy.
  • the moving average can be updated after each reading while the random number generation device is operating to ensure that a defective element will not impact random numbers output.
  • the entropy to extractor map is updated, which implies that one of the randomness extractor of the plurality of randomness extractors 3a and 3b is defined for each pixel (or region of pixels) based on the minimum entropy Hmin calculated at Step 1030.
  • the calibration process is done in parallel to random number generation device normal operation and the calibration process ends when the operation cycle ends (Step 1050).
  • a null or "dummy" randomness extractor can be implemented for the random number generation device.
  • pixels can be faulty or degrade over time where they do not exhibit an entropy level that is sufficient for practical purposes of gen- erating a random number according to the device and method described above.
  • These elements can be referred to as "hot" elements or pixels of the photon sensor.
  • the null randomness extractor can be applied or associated with these pixels or regions of pixels.
  • the digital values generated by any "hot" elements will be output to the null randomness extractor, which, in turn, does not output any random bits for the random number generation.
  • randomness extractor 3a can be an operational extractor and randomness extractor 3 b can be a null extractor.
  • a "sufficient" minimum entropy level can readily be viewed as a predetermined threshold stored in memory of the random number generating device and the entropy levels for each pixel can be compared against this predetermined threshold to determine whether the pixel exhibits a sufficient entropy level to be used to generated output bits for a random number.
  • a device for quantum random number generation allows generation of high quality random numbers of quantum origin since being based on a fundamentally random physical process.
  • the device maximizes the bit rate produced by selecting the optimal randomness extractors for each element.
  • the device is configured to overcome aging effects by periodically performing and repeating the calibration step and using multiple randomness extractors with each element.
  • the device overcomes the develop- ment of "hot" elements that exhibit an entropy level that is too low and insufficient for random number generation.
  • the calibration method enables the device to maintain optimal randomness and avoid pixels that might be dead (“white pixels") due to several effects, including aging, thermal, mechanical, illumination power, electrostatic fields and the like.
  • the calibration method enables opti- mal random number generation even if certain single elements of the photon sensor 2.2 may be defective.
  • the present disclosure is also related to computer program means stored in a computer readable medium adapted to implement the above described method.
  • the systems and methods described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the methods may be stored as one or more instructions or code on a non- transitory computer-readable medium.
  • Computer-readable medium includes data storage.
  • such computer-readable medium can comprise RAM, ROM, EEPROM, CD-ROM, Flash memory or other types of electric, magnetic, or optical storage medium, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a processor of a general purpose computer.
  • module refers to a real- world device, component, or arrangement of components implemented using hardware, such as by an application specific integrated circuit (ASIC) or field-programmable gate array (FPGA), for example, or as a combination of hardware and software, such as by a microprocessor system and a set of instructions to implement the module's functionality, which (while being executed) transform the microprocessor system into a special-purpose device.
  • a module can also be implemented as a combination of the two, with certain functions facilitated by hardware alone, and other functions facilitated by a combination of hardware and software.
  • a module can be executed on the processor of a general purpose computer (such as the one described in greater detail in Fig. 3 above). Accordingly, each module can be realized in a variety of suitable configurations, and should not be limited to any example implementation exemplified herein.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Light Receiving Elements (AREA)
  • Investigating, Analyzing Materials By Fluorescence Or Luminescence (AREA)

Abstract

A method and device for generating random numbers based on an optical process of quantum nature. According to one exemplary aspect, the method includes randomly emitting photons from a light source and absorbing the emitted photons by a photon sensor having a plurality of pixels. Furthermore, respective minimum entropy levels can be calculated for each of the pixels of the photon sensor and a randomness extractor can be associated with each of pixels based on the calculated minimum entropy level of that pixel. After this calibration, the method and device generates a number of high-entropy bits used for generating a random number.

Description

METHOD AND DEVICE FOR OPTICS BASED QUANTUM
RANDOM NUMBER GENERATION
FIELD OF TECHNOLOGY
The present disclosure pertains to a device for quantum random number generation based on an optical process of quantum nature comprising a light source emitting photons randomly as well as to a corresponding method, both allowing to obtain random numbers of high quality.
BACKGROUND
In general, the present disclosure is situated in the context of the generation of random numbers. In fact, the generation of high quality random numbers is essential to security of many applications such as cryptographic protocols, both classical and quantum. For example, conventional asymmetric key protocols, like the well known DSA-, RSA- and Diffie- Hellman-algorithms, use random numbers, tested for primality, to generate their keys. Another example is the unconditionally secure one-time pad protocol which needs a string of perfectly random numbers of a length equal to that of the data to be encrypted. The main limitation of this protocol is the requirement for key exchange. Quantum key distribution offers a way to generate two secure keys at distant locations, but its implementation also requires a vast quantity of random numbers. All these examples reflect Kerckhoffs' principle which dates back to the 19th century and states that the security of a cypher must reside entirely in the key.
It is therefore of particular importance that the key used in a cryptographic algorithm is secure, which in practice requires it to be chosen at random. In the past, weaknesses in random number generation have resulted in the breaking of a number of systems and protocols, such as reported by Arjen K. Lenstra, James P. Hughes, Maxime Augier, Joppe W. Bos, Thorsten 5 Kleinjung, and Christophe Wachter in their article "Ron was Wrong, Whit is Right" published in 2012 in the Cryptology ePrint Archive. Such breakings concern many kind of fields like operating system security, see the article "Cryptanalysis of the Random Number Generator of the Windows Operating System" by Leo Dorrendorf, Zvi Gutterman, and Benny Pinkas published in ACM Trans. Inf. Syst. Secur., 13(1): 1-32, 2009, communication protocols, see the article "Openssl — - Predictable Random Number Generator" by Luciano Bello published in Debian security advisory 1571-1, 2008, digital rights management, see the publication "Ps3 Epic Fail" by Bushing, Marcan, Segher, and Sven at the 27th Chaos Communication Congress, 2010, and Financial Systems, see the article "Android Bug Batters Bitcoin Wallets" by Richard Chirgwin published in The Register, 2013. Random number generation nowadays thus not only concerns defense issues such as initially targeted by Kerckhoffs' studies but has influence on many other fields like computer technology and science in general, economy, lotteries and games, as well as privacy issues of institutional— or individual's personal data stored or 'encrypted based on protocols using random numbers. However, high quality random numbers are hard to produce, in particular they cannot be generated by a deterministic algorithm such as a computer program. In fact, existing algorithm-based quasi-random number generators may advantageously be used for simulation purposes, but are not adapted for cryptography, since the resulting quasi-random numbers are, in principle, reproducible. To ensure the uniqueness and, importantly, the random- ness of the generated bit string, a physical random number generator is required, such as explained by C. H. Vincent in the article "The Generation of Truly Random Binary Numbers" in Journal of Physics E: Scientific Instruments, 3(8):594, 1970, or Y. Saitoh, J. Hori, and T. Kiryu in the article "Generation of Physical Random Number Using Frequency Modulated LC Oscillation Circuit with Shot Noise" in Electron Comm. Jpn. 3, 88(5): 12-19, 2005. In the past, two types of physical random number generators have been proposed which exploit the statistical nature of physical processes. Generators of the first type use processes which in principle obey deterministic laws but have chaotic nature due to complexity and incomplete knowledge of the initial system state. As an example, image sensors have been used to generate random numbers of classical origin by extracting information from a moving scene, e.g., a lava lamp, or using sensor readout noise, like disclosed by R.G. Mende, L.C. Noll, and S. Sisodiya in patent US 5,732,138 entitled "Method for Seeding a Pseudo- Random Number Generator with a Cryptographic Hash of a Digitization of a Chaotic System", 1998. Other examples for such kind of physical random number generators are dis- closed in US 6,831,980, US 6,215,874, W02013/003943, EP 1 821 196, W001/95091. However, the performance both in terms of randomness and throughput of such devices, respectively of corresponding methods, has been low.
Generators of the second type use physical processes which feature some intrinsic fundamental randomness, such as quantum mechanical processes. For this reason, quantum random number generators (QRNGs), which by their nature produce a string which cannot be predicted, even if an attacker has complete information on the device, are of particular interest, like explained in more detail in the article "Quantum Random-Number Generation and Key Sharing" by J. G. Rarity, P. C. M. Owens, and P. R. Tapster, published in Journal of Modern Optic, 41 (12):2435-2444, 1994. Known QRNGs are based on specialized hardware, such as single photon sources and detectors like disclosed, for example, by A. Stefanov, N. Gisin, 0. Guinnard, L. Guinnard, and H. Zbinden in their article "Optical Quantum Random Number Generator" published in Journal of Modern Optic, 47(4):595-598, 2000, photon pair sources in combination with beam splitters such as disclosed by Wolfgang Dultz and Eric Hildebrandt in their patent US 6,393,448 entitled "Optical Random-Number Generator Based on Single-Photon Statistics at the Optical Beam Splitter", 2002, or the device proposed by W. Wei and H. Guo in the article "Bias-Free True Random-Number Generator" published in Opt. Letters, 34(12): 1876-1878, 2009, or homodyne detection like disclosed for example by Christian Gabriel, Christoffer Wittmann, Denis Sych, Ruifang Dong, Wolfgang Mauerer, Ulrik L. Andersen, Christoph Marquardt, and Gerd Leuchs in their article "A Generator for Unique Quantum Random Numbers Based on Vacuum States" published in Nat. Photon, 4(10):71 1 - 715, 2010. Other examples for such kind of physical random number generators are disclosed in US 7,284,024, US 2012/045053, JP 2009/070009, EP 2 592 547, GB 2 473 078, and W002/091147. These QRNGs, however, have significant drawbacks, in particular in terms of size and complexity due to the required specialized hardware as well as in terms of speed and scalability, which entails high production cost, respectively limited applicability.
The solutions according to prior art therefore inherently comprise several problems. If known QRNGs indeed produce random numbers of quantum, i.e., random origin, the corresponding devices are complex and cost intensive. Devices which generate random numbers of classical origin have a low performance in terms of randomness and throughput.
SUMMARY
It is an object of the disclosed system and method to overcome the above- mentioned difficulties and to realize a device for quantum random number generation as well as a corresponding method. The device should have reduced size, complexity, and production cost as well as increased scope of applicability as compared to existing devices.
To this effect, the present disclosure proposes a device that achieves the objectives identified above, as well as a corresponding method. In an exemplary aspect, the device for random number generation based on an optical process of quantum nature according to the present disclosure distinguishes by the fact that it further comprises a light detector adapted to absorb the randomly emitted photons and to measure a number n of photons produced by said light source in a time interval T, and a randomness extractor, wherein the detector comprises a photon sensor acting as a photon-to-electron converter, an amplifier for converting the electron signal received from the photon sensor into a voltage and amplifying the voltage signal V, as well as an analog-to-digital converter for treating the amplified signal V received from the amplifier by encoding the amplified signal V into digital values d and sending these digital values d to the randomness extractor for further processing such as to produce quantum random numbers (QRNs) based on said number n of photons produced by the light source in a time interval T.
According to certain aspects of this device, the light source may be chosen as a light emitting diode or a laser diode and the photon sensor may be formed by a CCD camera or a CMOS camera. The camera, respectively in general the photon sensor, is operated in the linear regime where its Fano factor is close to 1, and— for optimal performance— the analog-to-digital converter is tuned such as to have an electron-to-digital conversion factor ξ fulfilling the condition ξ > 1.
These and other operating parameters of the camera, of the processing electronics, and of the randomness extractor which are specified in more detail in the following description allow to realize a small size and low cost quantum random number generator which produces high quality random numbers of quantum origin and which may be integrated in number of stationary or mobile apparatuses and instruments.
According to another exemplary aspect of the present disclosure, the device for generating random numbers can include a plurality or family of randomness extractors and the device can be calibrated using these extractors. In this aspect, the device includes a light source that emits photons and a photon sensor with a plurality of pixels that absorbs the photons emitted from the light source. In addition, the device can include a processor with soft- ware that calculates respective minimum entropy levels for the pixels of the photon sensor, and based on these calculated entropy levels, matches or associates one of the randomness extractors with each of the pixels. After this calibration process of the device, the extractor associated with the each pixel can generate a number of high-entropy bits for generating a random number.
The disclosure is also related to a corresponding method and computer program means adapted to implement this method.
Other features and advantages of the present disclosure are mentioned in the dependent claims as well as in the description disclosing in the following, with reference to the figures, the system and method in more detail. The above simplified summary of example aspects serves to provide a basic understanding of the present disclosure. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects of the present disclosure. Its sole purpose is to present one or more aspects in a simplified form as a prelude to the more detailed description of the disclosure that follows. To the accomplishment of the foregoing, the one or more aspects of the present disclosure include the features described and exemplarily pointed out in the claims.
BRIEF DESCRPTION OF THE DRAWINGS
The attached figures exemplarily and schematically illustrate the principles as well as several aspects of the present disclosure. The figures, which are incorporated into and constitute a part of this specification, illustrate one or more example aspects of the present disclosure and, together with the detailed description, serve to explain their principles and implementations. Figure 1 schematically illustrates the distribution of probability P(n) that a number n of photons is measured by an image sensor's pixel, said probability being the combination of quantum uncertainty aq originating from the quantum nature of a light source and technical noise Gt originating from the technical equipment used.
Figure 2 schematically illustrates the principal components of a device for random number generation according to an exemplary aspect, these components being a light source, a detector, and a randomness extractor, wherein the detector comprises several sub-elements, as well as the operating principle of the device.
Figure 3 schematically illustrates an example of a device for random number generation according to an exemplary aspect, the device comprising an LED as a light source, a detector illuminated by said LED, and a randomness extractor which treats the digital output of the detector.
Figures 4a and 4b show, for an ATIK 383L camera, respectively for the camera included in the Nokia N9 mobile telephone, the Fano factor F for various illuminating intensities.
Figures 5a and 5b show normalized histograms of the photon distributions obtained when using an ATIK 383L CCD camera and a Nokia N9 CMOS camera, respectively, as a detector.
Figure 6 schematically illustrates a block diagram of device for random number generation according to another aspect of the present disclosure.
Figure 7A illustrates an example of a photon sensor according to the exemplary aspect to illustrate a method for calibrating the random number generation device described herein. Figure 7B illustrates a distribution of probability P(n) that a number n of photons is measured by the pixels in the corresponding regions "A", "B", and "C" as shown in Figure 7A.
Figure 8 illustrates a graph depicting a representation illustrating a minimum en- tropy variation that is plotted as a function of the absorbed photons n according to an aspect of the present disclosure.
Figure 9 illustrates a flowchart for a method of calibration of the random number generation device at a pixel level according to an aspect of the present disclosure.
Figure 10 illustrates a method for calibration of the random number generation device according to an aspect of the present disclosure.
DETAILED DESCRIPTION
In the following, the exemplary device and method shall be described in detail with reference to the above mentioned figures. Example aspects are described herein in the context of a system, method and computer program product for identifying a path of a com- puter resource along a tree. Those of ordinary skill in the art will realize that the following description is illustrative only and is not intended to be in any way limiting. Other aspects will readily suggest themselves to those skilled in the art having the benefit of this disclosure. Reference will now be made in detail to implementations of the example aspects as illustrated in the accompanying drawings. The same reference indicators will be used to the extent pos- sible throughout the drawings and the following description to refer to the same or like items.
In a first part, the concept of the proposed system, including its various entropy sources and how the entropy of quantum origin can be extracted, shall be described. In a second part, two different exemplary designs of the proposed random number generation shall be exposed. Finally, the results obtained with the help of these random number generators in terms of generated random numbers shall be presented, including tests performed on the generated random numbers.
The concept of the present disclosure relies on the fact that some properties of a quantum state are unknown before measurement as well as fundamentally unpredictable. One such property, used in most known QRNGs, is the path taken by a photon impinging on a beamsplitter. Another such property is the number of photons produced by a light source in a time interval T. It is the latter effect which is used in the context of this disclosure. In fact, most light sources emit photons at random times or emit a random number of photons at a time. For ease of the language, both of these effects shall in the further course of the description be embraced by the wording that such light sources emit photons randomly. In any case, it is impossible to predict the number of photons emitted per unit time. This quantum effect is usually called "quantum noise" or "shot noise" and has been shown to be a property of the light field rather than a technical limitation of the light source or of the detector, see e.g., the article "Experimental Realization of Sub-Shot Noise Quantum Imaging" by G. Brida, M. Genovese, and I. R. Berchera published in Nat. Photon, 4(4):227-230, 2010. Only some particular light sources, namely amplitude-squeezed light, can overcome this fundamental noise, such as reported by Daniel F. Walls in the article "Squeezed States of Light" published in Nature, 306: 141-146, 1983. Beside these very specific sources, the number of photons emit- ted by a light source per unit of time T is governed by a Poisson distribution with standard deviation σ == « ? where n is the mean number of photons emitted in time interval T. Therefore, this quantum effect may be exploited to realize a QRNG by using a detector capable of resolving this distribution, such as to generate random numbers originating from a fundamentally random physical process. Such as schematically illustrated in Figure 1 , the basic assump- tions of this approach consist in that (a) a number n of photoelectrons can be measured by a detector, e.g., an image sensor's pixel, with a probability P(n), (b) this measured distribution will be, assuming that the detector is operating in a linear regime, the combination of quantum uncertainty oq and technical noise σ,, and (c) from a single shot measurement these two noise components cannot be distinguished, however the technical noise at is assumed to be fully deterministic and thus known to an adversary. As will become clear in the following, it is preferable, but not necessary, for realization of a QRNG according to the present disclosure that the inevitable technical noise at of the detector is smaller, or comparable to, the quantum uncertainty aq originating from the quantum nature of the light source. A device adapted to realize the above concept comprises, such as shown schematically in Figure 2, a light source 1, a detector 2, and a randomness extractor 3. The light source 1 may be chosen amongst a light emitting diode (LED), a laser diode (LD), or any other adequate light source, even ambient light, as long as the source emits photons randomly in the meaning defined above. The detector 2 comprises several elements and can be modeled, such as also schematically indicated in Figure 2, as lossy channel 2.1 with a transmission probability η, similar to a beamsplitter with a given splitting ratio, followed by a photon sensor 2.2 acting as a photon-to-electron converter with unit efficiency. In this model, the transmission probability η contains all the losses due to the optical elements and the photon sensor's 2.2 quantum efficiency. The photon sensor 2.2 may be realized by any kind of photon detector, in particular by an image sensor with an array of pixels or even by each individual pixel of such an image sensor, like a nowadays commercially available CCD or CMOS camera or similar off-the-shelf components adapted to act as an image sensor and having sufficient light sensitivity. A small quantity of light from the light source 1 impinges on the photon sensor 2.2. This can be done by guiding, reflecting or scattering at the dye, package or assembly level. For each absorbed photon y, the photon sensor 2.2 generates an electron e , such as symbolically indicated in Figure 2. The detector 2 further comprises processing electronics, in particular an amplifier 2.3 for converting the electron signal received from the photon sensor 2.2 into a voltage and amplifying the voltage signal V as well as an analog-to-digital converter (ADC) 2.4 which treats the amplified signal V received from the amplifier 2.3 by encoding the amplified signal V representing photon, respectively electron numbers into digital values and sending these values to further processing, i.e., to said randomness extractor 3 which will be described in more detail hereafter. The amplifier 2.3 and the ADC 2.4 may also be chosen amongst commercially available elements. All the above mentioned components may be inte- grated at a circuit, package or dye level. Advantageously, the randomness extractor can be implemented in software, but is also possible to realize that component by hardware. Furthermore, in the context of the processing electronics, it is possible to define an electron-to- digital conversion factor ξ. If ξ > 1 , then for each possible number of electrons generated by the photon sensor 2.2, i.e., for each possible number of photons produced by the light source 1 and absorbed by the sensor 2.2, there is one unique digital value or code at the output of the ADC 2.4, i.e., at the output of the detector 2. The condition ξ > 1 is thus not an obligatory requirement, but preferred for optimal performance of the device. To complete the model of the detector, noise needs to be added, since noise of different origins like, e.g., thermal noise, leakage current, or readout noise cannot be avoided in a real device. In general, this noise fol- lows a normal distribution and adds linearly to the signal, like symbolically indicated in Figure 1.
Consequently, a device such as described above allows to access the shot noise statistics of the light source 1 and thus to generate random numbers of quantum origin. In fact, each photon absorbed by the photon sensor 2.2 will generate an electron, in particular within a corresponding pixel if an image sensor with an array of pixels is used. The number of electrons generated in time interval T is unpredictable, due to the quantum nature of light and of the absorption process. The number of electrons is converted to a voltage, amplified and digitized by components internal or external to the sensor 2.2. It is important that the amount of light and the parameters for the amplification and digitization are appropriate, so that a significant amount of quantum entropy is collected. Not all the entropy generated by this process has a quantum origin, because some is due to classical noise, such as electrical, thermal, amplification, digitization noise or structure given by the image itself. However, an appropriately tuned randomness extractor 3 allows to ensure that the output random numbers have a quan- turn origin, i.e., that the amount of quantum entropy per output bit is close to 1 , such as will become clear in the further course of the description which will also specify in more detail the required amount of light and said parameters for the amplification and digitization.
In fact, at the output of the detector 2, a random variable X = Xq + Xh where Xq and Xt are independent random variables taken from the quantum uncertainty distribution Dq and the technical noise distribution Dt, respectively, is obtained. The technical noise is assumed to be completely known to an adversary, called "Eve" in Figure 1, such that it is only possible to rely upon the quantum entropy generated. Thus, the amount of quantum entropy at the output of the detector 2 will correspond to the entropy of a Poisson distribution with a mean equal to the average number of photons absorbed n, which— expressed in bits— is (l).
For large values of n this expression can be approximated to:
H{Xq y In (2 eny (2\ (2 ))
V-,/* To collect this entropy entirely, the detector preferably should fulfill the condition ξ > 1 mentioned above. The measured value X can be encoded over b bits, but it is of course possible to encode the value on another basis than the binary system. The entropy H(Xq) of quantum origin per bit of the output will be on average H(Xg)/b<l. Assuming adequately chosen operating conditions such as mentioned here above, where the ADC 2.4 is not saturated, the entropy s per bit can be approximated by dividing H(Xq) by the number of output bits of the ADC. To obtain a string of perfectly random bits, i.e., with unit quantum entropy per bit, an extractor is required. As detailed in the article "A Randomness Extractor for the Quantis Device" by M. Troyer and R. Renner, published in Id Quantiqiie Technical Report, 2012, and the content of which is incorporated herein by reference, an extractor computes a number k of high-entropy output bits yt from a number 1 > k of lower-entropy input bits r,-. This can be done by performing a vector-matrix multiplication between the vector formed by the raw bit values r,- and a random 1 x k matrix M (performed modulo 2) according to
Although the elements of M are randomly distributed, the matrix M serving as randomness extractor 3 usually is a pre-generated constant. For raw input bits with entropy s per bit, the probability that the output vector yi deviates from a perfectly random bit string is bounded by
ε = 2- (4)-
Alternatively, an adequate randomness extractor 3 may also be realized by a hash function performing an operation equivalent to the above described matrix-multiplication extractor. This is known to the person skilled in the art and thus doesn't need to be further described at this place. In order to demonstrate the feasibility of a device such as described above, comprising a light source 1, a detector 2, and a randomness extractor 3 of the type just described, as well as the results which may be obtained with such a device, two different exemplary designs of the proposed random number generator shall now be exposed. In fact, in recent years, image sensors like the ones found in digital cameras and smartphones have improved enormously. Their readout noise nowadays is of the order of a few electrons and their quantum efficiencies can achieve 80%. Besides their ability to resolve quantum noise with high accuracy, such image sensors are 5 intrinsically parallel and offer high data rates. It is thus possible to use such image sensors as a component of a quantum random number generator, which shall in the following be demonstrated both with a commercial astronomy monochrome CCD camera, an ATI 383L camera, and a CMOS sensor in a mobile phone, a Nokia N9 camera. The latter is a color camera from which only the green pixels were used for the purpose of the following demonstration.
Figure 3 schematically illustrates an example of a device for random number gen- eration according to an exemplary aspect of the present disclosure, the device comprising a light source 1 which is realized by a LED, a camera 2 which is fully and homogeneously illuminated by said LED and the raw data of which, i.e., the binary representation of pixel values produced by the camera 2, are concatenated and passed through a randomness extractor 3 which in turn outputs quantum random numbers (QRNs) ready to be used. The camera 2 is supposed to be formed either by said ATIK 383L camera or said Nokia N9 camera.
At first place, it shall be checked that the above mentioned cameras comply with the manufacturer's specification and that the operating conditions are appropriate for the generation of quantum random numbers. With respect to the latter point, it is important that the photon number distribution does not exceed the region where the camera, respectively the photon detector realized therewith, is linear and that there are enough digital codes to repre- sent each possible number of absorbed photons, i.e., that the condition ξ > 1 already mentioned above is fulfilled.
To characterize the two cameras mentioned above, a well-controlled light source like a LED, such as schematically shown in Figure 3, is used. According to the principles shown in Figure 2, a number of photons n is absorbed by the photon sensor 2.2 of each camera 2 and converted into an equal number of electrons. This charge is in turn converted into a voltage by the amplifier 2.3 and finally digitized by the ADC 2.4. For ease of description, these components are supposed to form part of the camera 2 in Figure 3. The amplifier gain, which in commercially available cameras corresponds to the "ISO" setting, is chosen such that each additional input electron will result in an output voltage increase sufficient to be resolved by the ADC, which means that each electron increases the digital output code c by at least 1. This can be checked by illuminating the cameras with a known amount of light. By doing so and using the nominal quantum efficiency of the cameras to infer n, one observes ξ = c/e to be 2.3 codes/electron for the ATI camera, and 1.9 codes/electron for the Nokia cam- era, as expected from the devices' specifications.
The value of ξ can then be used to infer the number n of absorbed photons from the digital reading. This allows to evaluate the Fano factor F, defined as F = σ^(η)/η, which is expected to be 1 for a Poisson distribution. Conversely, the fact that for a linear detector the Fano factor F = 1 can be used to measure Qe and ξ. Figures 4a and 4b show, for the ATIK camera, respectively for the Nokia camera, the Fano factor F obtained in this way for various illuminating intensities of these detectors. Accordingly, both detectors have a large range of intensities where the Fano factor is close to 1, in particular both the ATIK and the Nokia cameras have good linearity, i.e., better than 0.998 for a large range of light intensities. In this range, the statistics are dominated by the quantum uncertainty, i.e., by the shot noise. At strong illuminations, saturation occurs, which means that the Fano factor decreases, as the output is a constant. For the Nokia N9 camera, this happens at intensities corresponding to about 450 to 500 absorbed photons per pixel, whilst for the ATIK camera this happens at about 2 x 104 absorbed photons per pixel. This is due to the high amplifier gain used, which was chosen at ISO 3200. At low illumination intensities, a Fano factor much greater than 1 is observed, which is due to the detector's technical noise.
Image sensors such as CCD and CMOS have various sources of noise, like thermal noise, leakage current and readout noise. Thermal and leakage noise accumulate with integration time, such that it is possible to eliminate or at least greatly reduce these noise sources by using short exposure times, e.g., exposure times of the order of a millisecond, e.g., in the range of 0.1 to 100 milliseconds. In this case, readout noise becomes the dominant source of technical noise and is given by the readout circuit, the amplifier and the ADC. In image sensors, noise is usually counted in electrons The ATIK 383L CCD camera and the Nokia N9 CMOS camera have a noise of 10 e~, and 3.3 e~, respectively. However, it is not possible to generalize the values of the exposure times indicated above for all types of cameras, since this also depends on the impinging light intensity. In fact, the exposure time has to be chosen depending on the type of camera, i.e., the type of detector 2, and the light intensity such that the detector works in its linear regime and that, preferably, the readout noise becomes the dominant source of technical noise. In practice, the exposure times thus may vary greatly.
In view of the working principles of a QRNG according to the present disclosure mentioned above, in order to allow using these cameras to generate random numbers of quantum origin, the cameras need to be illuminated such that the mean number of absorbed photons n is sufficient to give a quantum uncertainty σ = as large as possible whilst not saturating the detectors. Therefore, in practice, the ATIK and Nokia cameras used here to demonstrate feasibility of a device for quantum random number generation according to the present exemplary aspects are illuminated during a time interval T sufficient to generate 1,5 x 104 e and 410 e respectively. The specifications and operating parameters mentioned here above are summarized in Table 1. Normalized histograms of the obtained photon distributions are shown in Figures 5a and 5b for the ATIK 383L CCD camera and for the Nokia N9 CMOS camera, respectively.
ATIK 383 L Nokia N9
Noise at (e~) 10 3.3
Saturation (e~) 2 x 104 450-500
Illumination (e~) 1 ,5 x 104 410
Quantum uncertainty σς (e~) 122 20
Offset ( 144 -6
Output bits per pixel 16 10
Quantum entropy per pixel 8.9 bits 6.4 bits
Quantum entropy per raw bit 0.56 0.64
Table 1 : Specifications of and Operating Parameters Employed for the Two Cameras
At second place, it is then possible on the basis of these facts and operating parameters to use equation (2) to calculate the amount of entropy of quantum origin per pixel, which is 8.9 bits and 6.4 bits for the ATIK 383L CCD camera and for the Nokia N9 CMOS camera, respectively. These are encoded over 16 and 10 bits, respectively, resulting in an average entropy per output bit of 0.56 for the ATIK 383L CCD camera and 0.64 for the Nokia N9 CMOS camera. These results are also figuring in Table 1. Finally, an adequate extractor 3 is applied according to equation (3) which allows to apply a mixing of the randomness of quantum origin contained in each raw bit obtained from the detector 2 into the output bits of the randomness extractor 3 forming the final digital output of the QRNG as well as to increase the entropy in the output bits of the randomness extractor 3 as compared to the one in the raw bits obtained from the detector 2. This is an important reason why it is preferable, but not necessary for realization of a QRNG according to the present disclosure that the inevitable technical noise at of the detector 2 is smaller, or comparable to, the quantum uncertainty aq. The choice of the extractor 3, in particular with respect to its dimension k, is done according to the above mentioned principles. In fact, as mentioned above, the detected photon number distribution can be described by a Poisson distribution and its minimum entropy can be approximated by equation (1). Thus, the size and the compression factor of the extractor 3 may be tuned such as to ensure that each bit of output from the extractor has an amount of quantum entropy close to 1 by determining the size and the compression factor of the randomness ex- tractor so that the number of output bits per measurement is smaller than the minimal entropy of the detected photon number distribution. In the particular case of the matrix-multiplication extractor introduced above, this can be done using equation (4) and ensuring that the extractor's parameters 1 and k, for a mean entropy s per bit, are chosen such as to ensure that the probability ε that the extractor's output bit string deviates from a perfectly random one is small. In particular, equation (4) above allows to calculate that by using the camera in the Nokia cell phone and an extractor with a compression factor of 4, for example, with k = 500
1 1 8
and 1 = 2000, it would take ~10 trials to notice a deviation from a perfectly random bit string. Thus, if everybody on earth used such a device constantly at l Gbps, it would take ~1080 times the age of the universe for one to notice a deviation from a perfectly random bit string.
In order to test the quality of random numbers generated in such manner, 48 frames corresponding to approximately 5 Gbits of raw random numbers generated using the above described framework were collected and processed on a computer through an extractor with a 2000 bit input vector and a 500 bit output vector, which allowed to generate 1.25 Gbits of random numbers. Although random number generators are notoriously hard to test, it is possible to check the generated bit string for specific weaknesses. A first testing step may be to individuate potential problems of the system and then test for them. In the present case, the generated random bit string was tested before extraction. At this stage, the entropy per bit is still considerably less than unity; moreover, possible errors could arise from damaged or dead pixels of the detector 2 and from correlations between pixel values due to electrical noise. In fact, besides increasing the mean entropy per bit, the randomness extractor 3 also ensures that if some pixels become damaged, covered by dust, or suffer from any other problem, an extremely good quality of the randomness is maintained. A second testing step may consist in the "die harder" randomness tests which can be applied on both the extracted bit strings, i.e., the raw random numbers produced at the output of the detector 2 and the random numbers delivered by the randomness extractor 3. This set of tests contains the NIST test, the diehard tests and some extra tests. The QRNG according to the present disclosure passed all these tests.
Next to the quality of the random numbers generated, other parameters of a QRNG are important, e.g., the production speed of the random numbers, as well as affordability and portability of the device. In fact, for many applications, such as the generation of cryptographic keys for conventional use or gaming, speed is not as important as the affordability and portability which are provided by this system. Nevertheless, a quantum random number generator based on an image sensor can provide very reasonable performance in terms of speed. Consumer grade devices such as the CCD and CMOS detectors used acquire data at rates between 100 Megapixels per second and 1 Gigapixel per second. After the necessary processing, each pixel will typically provide 3 random bits so that rates between 300 Mbps and 3 Gbps can be obtained. To sustain such high data rates, processing can be done either on a Field Programmable Gate Array (FPGA) or could be embedded directly on a CMOS sensor chip, in- eluding the processing step realized by the randomness extractor 3 which in that case is fea- tured by hardware. Alternatively, implementing the randomness extractor 3 fully in the software of a consumer device is possible and can sustain random bit rates greater than 1 Mbps, largely sufficient for most consumer applications. Therefore, it is possible to realize a device for quantum random number generation according to the present disclosure by using technol- ogy compatible with consumer and portable electronics.
Thus, random numbers of a quantum origin can be extracted by illuminating a known image sensor and applying specific operating parameters to the photon sensor 2.2, the processing electronics, as well as the randomness extractor 3. In fact, according to the above figuring explanations with respect to a device for random number generation based on an op- tical process of quantum nature, a corresponding method for random number generation comprises the steps of providing a light source 1 emitting photons randomly, providing a light detector 2 adapted to absorb the randomly emitted photons and to measure the number n of photons produced by said light source 1 in a time interval T and comprising a photon sensor 2.2, an amplifier 2.3, and an analog-to-digital converter 2.4, and providing a randomness ex- tractor 3, such as to allow detecting the number n of photons produced by said light source 1 in a time interval T and converting said number of photons into a corresponding number of electrons with the help of said photon sensor 2.2 of detector 2, converting the electron signal received from the photon sensor 2.2 into a voltage and amplifying the voltage signal V with the help of said amplifier 2.3 of detector 2, and treating the amplified signal V received from the amplifier 2.3 by encoding the amplified signal V into digital values with the help of said analog-to-digital converter 2.4 of detector 2 and sending these values to the randomness extractor 3 for further processing such as to produce quantum random numbers (QRNs) based on said number n of photons produced by the light source 1 in a time interval T.
The photon sensor 2.2 of detector 2 is illuminated by the light source 1 during a time interval T which is chosen such that the mean number f absorbed photons n is sufficient to give a quantum uncertainty σ = ^η as large as possible whilst not saturating the photon sensor 2.2. In particular, the photon sensor 2.2 of detector 2 is illuminated by the light source 1 with a photon intensity situated within a range of intensities where the Fano factor of the photon sensor 2.2 is close to 1. It is also possible to control the mean number of absorbed photons by adjusting the exposure time of the camera, within the limit that the exposure time needs to be chosen such that the camera works in its linear regime.
Advantageously, the raw digital values r, generated at the output of detector 2, respectively the digital values y( at the output of the randomness extractor 3 are encoded over b bits, or are encoded on another basis than the binary system.
In light of the above description of the device and of the corresponding method according to the present disclosure, its advantages are clear. Most importantly, a device for quantum random number generation according to the exemplary device and method allows generation of high quality random numbers of quantum origin since being based on a fundamentally random physical process. The random numbers may be generated at a high rate. The device can be implemented with commercially-available imaging devices such as CMOS and CCD cameras which are small and low cost. Also, it can be easily integrated on a printed circuit board. In fact, all elements such as light source, light detector, and randomness extractor, as well as other, optional components like for self-testing and further data processing such as encryption and transmission can be integrated at the system, circuit, package or dye level, which improves size, ease of use, security, reliability and energy efficiency of the whole device. Furthermore, many mobile and computing devices nowadays include an image sensor of a type adapted to be used, either by minor modification or in some cases directly, as a detector such as required in a device according to the present disclosure to generate quantum random numbers. Such image sensors have low-power consumption compatible with mobile and bat- tery powered applications. The randomness extractor can be implemented in hardware or, by software. Due to its small size, the device can be integrated with other components such as a camera, encryption, transmission, diagnostic device etc.; in particular, given that many consumer electronics articles are anyway equipped with an image sensor adapted to be used for the purposes of the present disclosure, the latter may advantageously be integrated with such components and corresponding software into a computer, a telephone, in particular mobile computers or telephones, tablets, network cryptographic devices, personal cryptographic devices, electronic wallets, or any other type of similar instruments. Thus, in general, the simplicity and performance of a device and method disclosed herein allow, in contrast to existing QRNG, to make widespread use of physical quantum random number generators, with an important impact on information security.
According to the exemplary aspect described above with respect to Figures 2 and 3, the exemplary device for random number generation is provided with a single randomness extractor 3. In particular, a light source 1 illuminates a matrix or array of pixels of the photon sensor 2.2 and the statistical distribution of the number of photons emitted by the light source 1 during a given time interval T is utilized as the source of randomness. According to the exemplary aspect, each pixel can produce an integer that is statistically distributed according to the Poisson distribution, as discussed above. Furthermore, the randomness extractor 3 is provided to not only remove defects, but also to make the distribution of the integers uniform and unbiased. Thus, as would be understood to one skilled in the art, the actual entropy that is produced by a particular pixel of the array of photon sensor 2.2 can depend on local parameters, including the level of illumination, the sensitivity of the pixel, and the like.
Figure 6 schematically illustrates a block diagram of device for random number generation according to another aspect of the present disclosure. According to this disclosure, a random number generation device is disclosed that provides high entropy per bit by adapt- ing one of a plurality of randomness extractors based on the quality and conditions of each pixel. As will be described in detail below, for photon sensors, often one or more or a group of pixels will yield sub-optimal entropy, for example, due to insufficient illumination, pixel saturation, or other pixel defects and nonlinearities. According to the exemplary embodiment, the amount of genuine quantum entropy generated by each pixel or group of pixels is evaluated and the measured value from such pixels is sent to the appropriate extractor, that will yield sufficiently high-entropy output bits.
As shown in Figure 6, the random number generation device shown includes many of the same components of the exemplary aspect described above with respect to Figure 2. Namely, the device includes a light source 1 and a detector 2, which further includes a lossy channel 2.1, a photon sensor 2.2, an amplifier 2.3 and a ADC 2.4. The details of these components are described above and are the same and, therefore, will not be further described. However, as further shown in Figure 6, the random number generation device includes a plurality of randomness extractors. As shown, the device includes a pair of randomness extrac- tors 3a and 3b, but it should be appreciated that the exemplary device can include three or more randomness generators in accordance with the spirit of the disclosure described herein. As discussed in detail below, the random number generation device according to Figure 6 optimizes the random bit output after randomness extraction by adapting one or more randomness extractors 3a and 3b to each element of the photon sensor 2.2. In particular, in a design where one randomness extractor is utilized for all pixels of the photon sensor 2.2 (for example, as described above with respect to Figure 2), the size and compression factor of the randomness extractor must be tuned according to the element or pixel with the lowest entropy. As a result, for all other pixels, the randomness extractor will be suboptimal, leading to a degraded random output throughput. As should be understood to one skilled in the art, this limitation is not well suited to dealing with entropy degradation due to aging of the photon sensor 2.2 or the like. Indeed, it is possible that, due to aging effects (e.g., degradation of the light source 1 or the like), the entropy of the pixel elements can fall below the minimum threshold of the randomness extractor, leading to imperfect randomness generation.
According to the exemplary configuration shown in Figure 6, the random number generation device goes through a periodic calibration in which the entropy of each pixel is measured and then the plurality of randomness extractors 3 a and 3b are matched to the pixels. In one aspect, the randomness extractors are matched to the pixels (or regions of pixels) such that the measured entropy is higher than the minimum entropy threshold of the selected randomness extractor and that the selected randomness extractor is the most efficient extractor meeting the previous measured condition. As described above, the randomness extractors can be implemented using vector-matrix multiplication, hash functions or the like and can be implemented using software and/or a combination of software and hardware. Thus, the matching can be implemented by identifying the entropy level of the pixel (or region of pixels), determining which randomness extractors of the plurality have a minimum entropy threshold that is below the measured entropy level, and then adjusting the software and are hardware such that the digital values corresponding to the electron signals output by the respective pixel are input to the matched/associated randomness extraction during normal operation of the device (i.e., when the device is operating to generate random numbers).
According to one aspect, the plurality of randomness extractors can concentrate the randomness that exists in many weakly-random bits into a few bits each with high level of randomness, for example, a minimum entropy of approximately 1. According to specific refinements of the exemplary aspect, the randomness extractor can be configured on a by bit operation. That is, if it is determined known that a bit-string (e.g., 10 bits long) has a minimum entropy Hm,n > 1 , then the randomness extractor can apply an operation that depends on all the bits, such as taking the XOR of the 10 bits, resulting in a single bit output that has an entropy very close to 1. According to another refinement, the randomness extractors can be based on vector-matrix multiplication. In this refinement, an input bit vector with low en- tropy-per-bit of length X is multiplied by a (fixed) random bit matrix of size X, Y, which results in a shorter output bit vector of size Y with high entropy-per-bit. It should be appreciated that the choice of matrix size is an appropriate compromise between the efficiency of the extractor, i.e., how much of the entropy is extracted, and the requirement for computational resources. In other words, a larger matrix will extract randomness more efficiently, but require more gates to be implemented or longer software runtimes or requires larger buffers to acquire bits. Finally, in another refinement, the randomness extractors can be selected as hash functions that concentrate the entropy from an arbitrary-length input string into a fixed-length output that has higher entropy per bit. According to the exemplary aspect as described above, each of the plurality of randomness extractors 3a and 3b can have a different minimum entropy threshold according to the exemplary aspect. Initially, each pixel will be associated with a particular extractor of the plurality of randomness extractors 3 a and 3b. According to one aspect, the pixels may be grouped by extractor. Preferably, the random number generation device will operate for a period of time before a calibration of the device is performed. The calibration includes measuring the entropy of each pixel (or a portion thereof) of the photon sensor 2.2 and then determining the optimal randomness extractor of the plurality of randomness extractors 3a and 3b to be used for each pixel (or grouping of pixels). The process for selecting the optimal ran- domness extractor for a pixel or grouping of pixels will be described in more detail below with respect to Figure 10.
Figure 7 A illustrates an example of a photon sensor according to the exemplary aspect to illustrate a method for calibrating the random number generation device described herein. As shown, the photon sensor, which should be understood to be photon sensor 2.2, for example, is composed of X number of pixels. Furthermore, each pixel can be classified from X(1;i) to X( ,N) based on the particular pixel's column number and row number. As described above, based on a typical light source used (e.g., an LED light source), the number of photons emitted per unit of time is governed by a Poisson distribution. As a result, the number of detectable photons shows a statistical variation depending on the pixel location which is described as a Poisson distribution. In practice, illumination may not be uniform, for example because of the geometric arrangement of the device, which can lead to additional statistical variations depending on pixel location. Moreover, the detected signal can also depend on pixel intrinsic characteristic and defaults (as it may be a dead or hot pixel). Therefore, the level of detected signal will very across the pixel array, which implies that the level of ex- tractable entropy will also vary across the pixel array.
As shown in Figure 7A, three regions are represented to illustrate the effect of the Poisson distribution and pixel intrinsic characteristics. A first region "A" (which corresponds to pixel location Χ¾)) is a light sensor region having high intensity illumination and high photon density detection. Next, a second region "B" is a light sensor region with a medium intensity illumination and medium photon density detection. Further, a third region "C" is a light sensor region with low intensity illumination and low photon density detection. Furthermore, for exemplary purposes, a dead pixel is illustrated in X(i,t). Figure 7B further illustrates a distribution of probability P(n) that a number n of photons is measured during a timeslot by the pixels in the corresponding regions "A", "B", and "C". As noted above, it should be appreciated that the probability P(n) can be based on the combination of quantum uncertainty σ? originating from the quantum nature of a light source and technical noise originating from the technical equipment used. As shown in Figure 7B, the mean of the distribution and the probability P(n) that the number n of photons will be measured is highest at the pixel location X(ij), and is slightly lower at the adjacent pixels (e.g., X(ij-i) or X(ij+i)) to the focal pixel, and lowest at pixels spaced farther from the focal pixel (e.g., X(ij>), for example at pixel X(ij+2 As described above, the measured values output at each pixel are encoded over b bits according to an exemplary aspect, although it is of course possible to encode values on another basis than the binary system.
As further described above, the amount of quantum entropy corresponds to the entropy of a Poisson distribution with a mean equal to the average number n of photons absorbed, where n is the number of absorbed protons. According to the example described herein, the minimum entropy variation is calculated according to the following formula:
In particular, Figure 8 illustrates a graph depicting a representation illustrating a minimum entropy variation that is plotted as a function of the absorbed photons n. As shown, the graph illustrated in Figure 8 provides several regions that can be defined depending on the illumination in the regions, as defined by a number of photons detected in the region. In particular, Figure 8 illustrates regions "A" and "B" that correspond to the regions of the pixel array described above with respect to Figure 7A. In the example of Figure 8, region "B" is the area defined as 1 -< log( «) -< 10 and region "A" is the area where 10 -< log( w) 1000 . As noted above, n is equal to the mean of the number of photons absorbed over a given time interval T. It should be appreciated that Area "A" is the most illuminated pixel or region, whereas Area "B" is less illuminated. Furthermore, the minimum entropy levels or thresholds HA and Hg are defined accordingly. Further, UMAX corresponds to the highest level of entropy the pixel can obtain before saturation, which leads to a "null" extractor, as will be discussed in detail below. For example, Area "C" could have insufficient or be saturated, and, therefore, need to be associated with the null extractor.
In general, the entropy s of quantum origin per bit of output is defined on average as Hminlb, where b is the number of bits over which the measured values output at each pixel are encoded. Thus, the entropy ¾ for raw input bits per bit for region "A" is H b and likewise the entropy ¾ for region "B" is J¾/b. As further described above, the randomness extractor is required to obtain a string of perfectly random bits (i.e., with a unit quantum entropy per bit). The randomness extractor is configured to calculate a number k of high entropy output bits yj from a number / - k of lower entropy bits rt-. This operation may be done by performing a vector-matrix multiplication between the vector formed by the raw bit values r{ and a random / x k matrix M, according to formula (3).
Thus, according to the exemplary aspect and the calculation shown in Figure 8, for each area detection "A" and B", a minimum entropy HA and ¾ can be calculated and a dedicated randomness extractor can be associated based on the respective minimum entropy values as described above. According to an exemplary aspect, matrix MA is a lxkA matrix and matrix MB is lxkB matrix with kA kB . It should further be appreciated that according to an exemplary aspect, when the light sensor saturates the photon sensor 2.2 and the specific pixels array of pixels, the entropy variation drops quickly to 0. In this case, the device will define the randomness extractor a 0 matrix since Hmin will be set to be null.
By calculating the minimum entropy Hmin for each pixel or each region (e.g., array of pixels), the random number generation device is configured to be periodically calibrated. In particular, the normal operation (i.e., generation of random numbers, as described above) can be temporarily interrupted to run the calibration phase. Based on the measured entropy for each pixel or each region (e.g., array of pixels), the device can associate each such element with a particular randomness extractor of the plurality of randomness extractors 3a and/or 3b. According to one exemplary aspect, this association is performed by determining that the measured entropy is higher than the minimum entropy threshold of the selected extractor. In addition, the device can ensure that the selected randomness extractor is the most efficient of all the extractors that satisfies this condition. Accordingly, once this association is made, random number generation device can return to normal operation (i.e., generation of random numbers) where the associated randomness extractor for a given pixel or region of pixels will receive the respective digital values from the specific pixel or region of pixels to produce quantum random numbers based on the number n of photons produced by the light source in a time interval T, as described above.
According to one exemplary aspect, the calibration process can be repeated periodically. As a result, the random number generation device is configured to adjust the number generation process to avoid or minimize aging effects of the photon sensor 2.2 that lead to entropy degradation.
Figure 9 illustrates a flowchart for a method of calibration of the random number generation device at pixel level according to an aspect of the present disclosure. In particular, Figure 9 illustrates a method for selecting a particular randomness extractor according to the response of a specific pixel subjected to illumination. In a first step 900, the calibration starts and N reading cycles of each pixel are performed through pixel illumination as described above (shown as step 905 in Figure 9). The illumination can be continuous, i.e. the light source is on during the whole N reading cycles, or pulsed, i.e. the light source is turned on and off at each cycle of the N cycles. For each pixel X(ij), the output of the N reading cycles are used to plot histograms of photons detected (Step 910). Next, at step 915, the amount of photons absorbed n and associated entropy minimum entropy Hmin is estimated for each pixel. One possible approach to estimate the minimum entropy is to calculate the mean photon number associated with the statistical distribution represented by the histogram. The device can for example calculate and store for each pixel X(jj) an estimate of the average the absorbed photons per reading cycle nX(jj) and a pixel-specific minimum entropy
As noted above, the exemplary aspect of the device includes a plurality of randomness extractors 3 a and 3b. In this example of Figure 9, it is assumed that a third randomness extractor 3o is provided. In this instance, the randomness extractor, which includes a set of extractors (3a, 3b, and 3o) can be chosen depending on the number of photons detected by a pixel over a reading cycle. According to the exemplary aspect, extractor 3a is designed to transform M bits in N bits (with 2 x N < M), where extractor 3 a is dedicated to areas with higher illumination. Moreover, extractor 3b has the capacity to transform M bits in N bits (with 10 x N < M), where extractor 3b is dedicated to low light illumination areas. Finally, extractor 3o transforms M bits in 0 bits, which is dedicated to areas with saturation or very low light illumination (e.g., the null extractor described above).
Referring again to Figure 9, at step 920, an extractor from a family of predefined set of extractors (the set of extractor 3a, 3b and 3o) is associated to each illumination area (e.g., respectively, A, B and C of Figure 7a) and by consequence to a pixel or a sub-matrix of pixels (a sub matrix does not need to be formed of adjacent pixels). Said step 920 relies on two sub-steps 925 and 930 where the software of the disclosed device is executed to determine which randomness extractor should be used for which pixel. According to the exemplary method, at step 925a, if ηχ¾) < ne, then the device will associate extractor 3o with the pixel X (step 930a). Moreover, at step 925b, if IIB < nx(jj) < nA, then the device will associate extractor 3b with the pixel X (step 930b). Further, at step 925c, if nA < nx(i,j) < ΠΜΑΧ, then the device will associated extractor 3 a with the pixel X (step 930c). Finally, at step 925d, if n A < li (jj), then the device will associate extractor 3o with the pixel X (step 930d). It should be appreciated that nA, ¾, and njyiA can be predetermined thresholds for associating the ran- domness extractors. In particular, it should be appreciated that for any number of photons absorbed below ¾, the device assumes that the pixel is absorbing at a very low light and thus assigns the null extractor, as described above. Similarly, when the number of photons absorbed is above ΠΜΑ , the device recognizes that pixel has reached saturation and again assigns the null extractor, as described above. The result of the process described in Fig. 9 is an "entropy to extractor map". This map associates each pixel to a particular extractor of the family of extractors (as an example 3a, 3b, 3o). This calibration process described in Fig. 9 may be done as a boot step before quantum random number generation operation, when the disclosed device is turned on. It can also be repeated from time-to-time during normal operation of the device (i.e., generation of random numbers). In this case, the activation of this cali- bration process can be triggered by events such as time interval since last calibration, change in environmental conditions or even external user request.
Alternatively, Figure 10 illustrates the method for calibration of the random number generation device based on live update, which means that calibration is done while random bits acquisition is done in parallel. As shown, in a first Step 1005, the operation cycles starts in order to generate random numbers. This is done while light source 1 illuminates the photon sensor 2.2 including a matrix of pixels and absorbed photons are measured to characterize the output of the light sensor matrix in a second step 1010. As mentioned above, the illumination can be continuous or pulsed. This illumination-reading step 1010 enables simul- taneously to acquire random bits and update the "entropy to extractor map" based on said acquired bits. In order to do so, two processes are done in parallel, namely: random bits storage (step 1020) and entropy to extractor map update (step 1040) based on Hmin calculation. At Step 1020, the values read at Step 1010 on each pixel of the light sensor matrix are stored in a buffer. The buffer used for each pixel is determined according to the "entropy to extractor map". A buffer can be associated to a single pixel. In this case, the values read from this specific pixel are appended at each step 1020 to the buffer. A buffer can also be associated to a sub-matrix consisting of more than one pixel. Note that the sub-matrix does not need to consist of adjacent pixels. In this case, the values read from all the pixels of the sub-matrix are appended at each 1020 to the buffer. The buffers of Step 1020 are emptied from time-to-time (not shown on Figure 10). This is achieved by sending at least some of the values stored in the buffer to the randomness extractor associated with this buffer and erasing these values from this buffer. On the other hand, at step 1030, at each reading cycle, a minimum entropy Hmin is calculated. This calculation takes into account the minimum entropy value calculated at the previous step, as well as the current illumination-reading cycle. One possibility to calculate this minimum entropy is to update a moving average of the mean number of photons absorbed in a cycle and to use this value to calculate the minimum entropy. As should be appreciated to one skilled in the art, since the calibration process is done in parallel to quantum random number generation proper operation, the moving average can be updated after each reading while the random number generation device is operating to ensure that a defective element will not impact random numbers output. Finally, at Step 1040, the entropy to extractor map is updated, which implies that one of the randomness extractor of the plurality of randomness extractors 3a and 3b is defined for each pixel (or region of pixels) based on the minimum entropy Hmin calculated at Step 1030. At that point, the calibration process is done in parallel to random number generation device normal operation and the calibration process ends when the operation cycle ends (Step 1050).
Referring back to Figure 6, according to one refinement of the exemplary aspect, a null or "dummy" randomness extractor can be implemented for the random number generation device. As with any camera or other photon sensor, pixels can be faulty or degrade over time where they do not exhibit an entropy level that is sufficient for practical purposes of gen- erating a random number according to the device and method described above. These elements can be referred to as "hot" elements or pixels of the photon sensor.
According to this aspect, the null randomness extractor can be applied or associated with these pixels or regions of pixels. In this instance the digital values generated by any "hot" elements will be output to the null randomness extractor, which, in turn, does not output any random bits for the random number generation. According to the configuration shown in Figure 6, randomness extractor 3a can be an operational extractor and randomness extractor 3 b can be a null extractor. Once the random number generation device performs the calibration method as described above, all pixels or regions of pixels that fail to exhibit a sufficient minimum entropy level will be associated with the null extractor. As should be appreciated to one skilled in the art, a "sufficient" minimum entropy level can readily be viewed as a predetermined threshold stored in memory of the random number generating device and the entropy levels for each pixel can be compared against this predetermined threshold to determine whether the pixel exhibits a sufficient entropy level to be used to generated output bits for a random number. In view of the above description of the device and corresponding method according to the present disclosure, its advantages are clear. Most importantly, a device for quantum random number generation according to the present disclosure allows generation of high quality random numbers of quantum origin since being based on a fundamentally random physical process. Furthermore, implementing the calibration method and technique disclosed herein, the device maximizes the bit rate produced by selecting the optimal randomness extractors for each element. Furthermore, the device is configured to overcome aging effects by periodically performing and repeating the calibration step and using multiple randomness extractors with each element. Finally, according to one refinement, the device overcomes the develop- ment of "hot" elements that exhibit an entropy level that is too low and insufficient for random number generation. In this regard, the calibration method enables the device to maintain optimal randomness and avoid pixels that might be dead ("white pixels") due to several effects, including aging, thermal, mechanical, illumination power, electrostatic fields and the like. Thus, one skilled in the art would understand that the calibration method enables opti- mal random number generation even if certain single elements of the photon sensor 2.2 may be defective.
Finally, it is to be noted that the present disclosure is also related to computer program means stored in a computer readable medium adapted to implement the above described method. For example, in various aspects, the systems and methods described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the methods may be stored as one or more instructions or code on a non- transitory computer-readable medium. Computer-readable medium includes data storage. By way of example, and not limitation, such computer-readable medium can comprise RAM, ROM, EEPROM, CD-ROM, Flash memory or other types of electric, magnetic, or optical storage medium, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a processor of a general purpose computer.
In various aspects, the systems and methods described in the present disclosure can be implemented in terms of modules. The term "module" as used herein refers to a real- world device, component, or arrangement of components implemented using hardware, such as by an application specific integrated circuit (ASIC) or field-programmable gate array (FPGA), for example, or as a combination of hardware and software, such as by a microprocessor system and a set of instructions to implement the module's functionality, which (while being executed) transform the microprocessor system into a special-purpose device. A module can also be implemented as a combination of the two, with certain functions facilitated by hardware alone, and other functions facilitated by a combination of hardware and software. In certain implementations, at least a portion, and in some cases, all, of a module can be executed on the processor of a general purpose computer (such as the one described in greater detail in Fig. 3 above). Accordingly, each module can be realized in a variety of suitable configurations, and should not be limited to any example implementation exemplified herein.
In the interest of clarity, not all of the routine features of the aspects are disclosed herein. It will be appreciated that in the development of any actual implementation of the present disclosure, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, and that these specific goals will vary for different implementations and different developers. It will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure. Furthermore, it is to be understood that the phraseology or terminology used herein is for the purpose of description and not of restriction, such that the terminology or phraseology of the present specification is to be interpreted by the skilled in the art in light of the teachings and guidance presented herein, in combination with the knowledge of the skilled in the relevant art(s). Moreover, it is not intended for any term in the specification or claims to be ascribed an uncommon or special meaning unless explicitly set forth as such.
The various aspects disclosed herein encompass present and future known equivalents to the known modules referred to herein by way of illustration. Moreover, while aspects and applications have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts disclosed herein.

Claims

1. A method for generating random numbers based on an optical process of quantum nature, the method comprising:
emitting photons from a light source;
absorbing, by a photon sensor having a plurality of pixels, the photons emitted from the light source;
calculating respective minimum entropy levels for the plurality of pixels of the photon sensor;
associating one of a plurality of extractors with at least one of the plurality of pixels based on the calculated minimum entropy level of the at least one pixel; and
generating, by the extractor associated with the at least one pixel, a number of high- entropy bits for generating a random number.
2. The method for generating random numbers according to claim 1, further comprising: converting, by an analog-to-digital converter, an electron signal received from the photon sensor into a voltage; and
amplifying, by an amplifier, the voltage signal and inputting the amplified voltage to the extractor associated with the at least one pixel of the photon sensor.
3. The method for generating random numbers according to claim 1 , wherein the gener- ating of the number of high-entropy bits comprises generating a number k of high-entropy output bits from a number / >- k of lower entropy bits r*.
4. The method for generating random numbers according to claim 1 , wherein the calculating of the minimum entropy levels comprises calculating an entropy of a Poisson distribu- tion with a mean equal to an average number of photons absorbed by regions of the plurality of pixels of the photon sensor.
5. The method for generating random numbers according to claim 4, further comprising periodically recalculating the minimum entropy levels for the plurality of pixels of the photon sensor.
6. The method for generating random numbers according to claim 5, further comprising associating the one of the plurality of extractors with another one of the plurality of pixels based on the recalculated minimum entropy levels.
7. The method for generating random numbers according to claim 1 , further comprising: comparing each of the calculated minimum entropy levels of one or more pixels with a predetermined threshold; and determining that the one or more pixels does not exhibit a minimum entropy level sufficient to generate output bits for a random number if the respective calculated minimum entropy level is below the predetermined threshold.
8. The method for generating random numbers according to claim 7, further comprising associating the one or more pixels that does not exhibit a minimum entropy level with a second extractor of the plurality of extractors, wherein the second extractor does not output the high-entropy bits.
9. The method for generating random numbers according to claim 1, further comprising: determining that the one or more pixels is saturated based on the respective calculated minimum entropy level; and associating the one or more pixels that is saturated with a second extractor of the plurality of extractors, wherein the second extractor does not output the high-entropy bits.
10. A device for generating random numbers based on an optical process of quantum nature, the device comprising:
a light source configured to emit photons;
a photon sensor having a plurality of pixels configured to absorb the photons emitted from the light source; and
a processor configured to calculate respective minimum entropy levels for the plurality of pixels of the photon sensor and to associating one of a plurality of extractors with at least one of the plurality of pixels based on the calculated minimum entropy level of the at least one pixel,
wherein the extractor associated with the at least one pixel is configured to generate a number of high-entropy bits for generating a random number.
11. The device for generating random numbers according to claim 10, further comprising: an analog-to-digital converter configured to convert an electron signal received from the photon sensor into a voltage; and
an amplifier configured to amplify the voltage signal to be inputted to the extractor associated with the at least one pixel of the photon sensor.
12. The device for generating random numbers according to claim 10, wherein the extrac- tor generates the number of high-entropy bits comprises generating a number k of high- entropy output bits yj from a number / >- k of lower entropy bits r,.
13. The device for generating random numbers according to claim 10, wherein the processor is configured to calculate the minimum entropy levels by calculating an entropy of a Pois- son distribution with a mean equal to an average number of photons absorbed by regions of the plurality of pixels of the photon sensor.
14. The device for generating random numbers according to claim 13, wherein the processor is further configured to periodically recalculate the minimum entropy levels for the plurality of pixels of the photon sensor.
15. The device for generating random numbers according to claim 14, wherein the one of the plurality of extractors is associated with another one of the plurality of pixels based on the recalculated minimum entropy levels.
16. The device for generating random numbers according to claim 10, wherein the processor is further configured to: compare each of the calculated minimum entropy levels of one or more pixels with a predetermined threshold; and determine that the one or more pixels does not exhibit a minimum entropy level sufficient to generate output bits for a random number if the respective calculated minimum entropy level is below the predetermined threshold.
17. The device for generating random numbers according to claim 16, wherein the one or more pixels that does not exhibit a minimum entropy level is associated with a second extractor of the plurality of extractors and the second extractor is configured to not output the high- entropy bits.
18. The device for generating random numbers according to claim 10, wherein the processor is further configured to: determine that the one or more pixels is saturated based on the respective calculated minimum entropy level; and associate the one or more pixels that is saturated with a second extractor of the plurality of extractors and the second extractor does not output the high-entropy bits.
19. The device for generating random numbers according to claim 10, wherein the light source is selected from a group of light sources consisting of a light-emitting diode, a laser diode, ambient light, or any other adequate light source emitting photons randomly.
20. The device for generating random numbers according to claim 10, wherein the photon sensor is selected from a group of photon detectors consisting of a CCD camera, a CMOS camera, in particular an image sensor with an array of pixels, or a photon detector having a single photon resolution for generating random numbers.
EP16795249.8A 2014-04-28 2016-10-31 Method and device for optics based quantum random number generation Pending EP3375130A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/937,202 US9772820B2 (en) 2014-04-28 2015-11-10 Method and device for optics based quantum random number generation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/937,202 US9772820B2 (en) 2014-04-28 2015-11-10 Method and device for optics based quantum random number generation
PCT/EP2016/076200 WO2017080860A1 (en) 2015-11-10 2016-10-31 Method and device for optics based quantum random number generation

Publications (1)

Publication Number Publication Date
EP3375130A1 true EP3375130A1 (en) 2018-09-19

Family

ID=57321265

Family Applications (1)

Application Number Title Priority Date Filing Date
EP16795249.8A Pending EP3375130A1 (en) 2014-04-28 2016-10-31 Method and device for optics based quantum random number generation

Country Status (3)

Country Link
EP (1) EP3375130A1 (en)
CN (1) CN107066236B (en)
WO (1) WO2017080860A1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3474485B1 (en) * 2017-10-20 2020-05-27 Secure-IC SAS Key generation from an imaging sensor
CN108037907B (en) * 2017-12-29 2021-03-02 太原理工大学 Quantum random number generation method based on vacuum parallelism
TWI747052B (en) * 2018-10-24 2021-11-21 大陸商廣州印芯半導體技術有限公司 Optical sensor with encryption function and image data encryption method
CN109375898B (en) * 2018-11-26 2019-09-13 弦海(上海)量子科技有限公司 Quantum True Random Number Generator chip and method based on CMOS detection
CN109918046A (en) * 2019-02-28 2019-06-21 徐文婷 A kind of improved device generated based on optical quantum random number
CN109918045A (en) * 2019-02-28 2019-06-21 徐文婷 A kind of implementation method that improved light quantum random number generates
CN110399118B (en) * 2019-07-15 2022-01-18 宇龙计算机通信科技(深圳)有限公司 Random number generation method and device, storage medium and electronic equipment
CN110535638B (en) * 2019-08-15 2023-07-28 深圳市矽赫科技有限公司 Voice communication device and terminal equipment based on quantum encryption
US11271747B2 (en) * 2019-09-16 2022-03-08 Lawrence Livermore National Security, Llc Optical authentication of images
CN110750236A (en) * 2019-10-28 2020-02-04 安徽安匠信息科技有限公司 Quantum random number generator based on CMOS image sensor
US20220391173A1 (en) 2019-11-05 2022-12-08 Crypta Labs Ltd Quantum random number generator
CN111028409B (en) * 2019-12-04 2021-12-24 中体彩科技发展有限公司 Random lottery number selection system and method
CN113138018A (en) * 2021-03-17 2021-07-20 太原理工大学 High signal-to-noise ratio broadband balance homodyne detector for quantum random number generation
CN113965318B (en) * 2021-09-18 2023-06-06 郑州信大捷安信息技术股份有限公司 Quantum migration security system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6831980B1 (en) * 1996-10-09 2004-12-14 Activcard Ireland Limited Random number generator and method for same
US8379848B2 (en) * 2011-07-07 2013-02-19 Cape Light Institute, Inc. Method of providing a portable true random number generator based on the microstructure and noise found in digital images
CN102681817B (en) * 2012-06-05 2015-03-04 太原理工大学 All-optical true random number generator with Tbps-level code rate
CN103713879B (en) * 2013-12-30 2017-02-01 中国科学技术大学 Unbiased high-speed quantum random number generator based on photon arrival time
CN104158085B (en) * 2014-08-30 2017-04-12 太原理工大学 No-time-delay flat-frequency-spectrum broadband photon integrated chaos semiconductor laser
CN104238996B (en) * 2014-09-04 2017-08-11 清华大学 The production method and device of the unrelated quantum random number in source

Also Published As

Publication number Publication date
CN107066236B (en) 2021-08-10
WO2017080860A1 (en) 2017-05-18
CN107066236A (en) 2017-08-18

Similar Documents

Publication Publication Date Title
US9772820B2 (en) Method and device for optics based quantum random number generation
WO2017080860A1 (en) Method and device for optics based quantum random number generation
Sanguinetti et al. Quantum random number generation on a mobile phone
JP7025458B2 (en) Quantum random number generator
US9335973B2 (en) Quantum random number generator
US20160328211A1 (en) Quantum random number generators
KR102190209B1 (en) Improved random number generator, especially improved true random number generator
KR101963393B1 (en) System and method for generating random number using image sensor, method for forming database, and computer readable recording medium thereof
US10652033B2 (en) Synthetic physically unclonable function derived from an imaging sensor
Park et al. Practical true random number generator using CMOS image sensor dark noise
Zhang et al. Portable true random number generator for personal encryption application based on smartphone camera
Xu et al. A $16\times 16$ Pixel Post-Processing Free Quantum Random Number Generator Based on SPADs
US20210344488A1 (en) Device and method for generating random bit sequences
Park et al. SCR-QRNG: Side-channel resistant design using quantum random number generator
CN215814135U (en) Quantum random number generator and encryption device
WO2023172998A1 (en) Cryptographic key and random number generation based on quantum systems
CN114448626B (en) Quantum random number generator with light source monitoring function and method
Lakshmi et al. A novel technique for random number generation using CMOS image sensor
Pooser Quantum random number generator
Tisa et al. One-chip quantum random number generator
Hughes et al. “The Collector”: A Gigabit True Random Number Generator Using Image Sensor Noise

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20180507

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RIN1 Information on inventor provided before grant (corrected)

Inventor name: RIBORDY, GREGOIRE

Inventor name: SANGUINETTI, BRUNO

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20210803

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS