Lauch of a new extension for QRNG - Quantum Random Number Generator (Software & Hardware)

Launch of a new extension called Mini QRNG… True random numbers.

What is Mini QRNG?

Mini QRNG is Software and Hardware that includes three technological solutions to create QRNGs (Quantum Random Number Generators). Classified as follows:

a.- QRNG API. - Quantum random number generator obtained from external servers.

b.- MiniQRNG / Software. - Quantum Random number generator obtained using the physical properties (quantum) of the mobile phone camera.

c.- MiniQRNG / Hardware. - Quantum Random number generator obtained using hardware based on the quantum physics properties of a laser. Later on we will tell you how to build it at home at a low cost and use app inventor with serial or bluetooth communications. Includes circuit diagram with arduino nano.

In the extensions directory is the OpenQbitQRNGwithSSH extension which contains the blocks for the creation of QRNG (Quantum Random Number Generator) from the camera of your mobile device smartphone (QRNG API and MiniQRNG-Software) and also (MiniQRNG-Hardware).

In the HandBooks directory are the user manuals for the use of the OpenQbitQRNGwithSSH extension. In this directory you will find manuals in different languages ​​(Spanish, English, Italian, French, Dutch, German, Russian, Portuguese, Japanese and Chinese)


More information:



Very interesting Correct me if I’m wrong but setting the seed to the current millisecond in time, can you simulate a true random number since that millisecond will never repeat?


The origin (milisecond) of the commenting seed is not very viable to generate “true random numbers”.

In order to generate a “true random number” should be reviewed three basic points:

1.- Must review the entropy of the source where the seed will be obtained. This point is fundamental and must not come from any physical or software mechanism that will already have the predefined algorithm, that is, when generating it from a system to calculate a “time” or “hour” even if it is of a value that will never be repeated as the algorithm to obtain it is already well defined, this closes the entropy that may exist.

Example: In the case of the hour (seconds, milliseconds, nanoseconds, etc.) come from a predetermined source, this means that some hacker can anticipate the expected result. Although it is a number that will never be repeated, it is a result that can already be predicted in some way by analyzing the algorithm to obtain it.

2.- The source should preferably create what is called “white noise”.

3.- If it is possible to run the tests to verify that your random numbers are true and not pseudo-random, these tests are defined in the NIST (National Institute of Standard and Technology)

In summary, when generating a seed for random numbers, it must never come from a system that uses some predetermined algorithm.

In my extension are true random numbers, not simulation. These numbers are “QRNG - Quantum Random Number Generator”, the source that i use is the quantum mechanics based on the entropy of light-potons that a device can produce and i also include the calculation of a entropy in the extension to be able to measure and run NIST tests.

I hope my answer helps a little.

G Vidal.


Thanks for that great explanation. I like this topic a lot.

1 Like

You’re welcome.

The goal is to put all the tools using quantum computing within everyone’s reach. We have taken the first steps forward towards that goal and want to create the first made home quantum processor. At a low cost, DYI - Do it yourself.

More information:

G Vidal.


Wow, thanks, I have to read this several times. :upside_down_face:

Anyone who is not shocked by quantum theory
has not understood it.” (Niels Bohr)


Thank you for this wonderful software/hardware random number generator. You inspired me by building it in hardware. Does the hardware model need to be a specific type of LDR,. or do they all apply?
ldr photo resistance


I use LDR 5537, however i would think that you can use any, everything will depend on the sensitivity of each LDR when it is receiving the laser photons.

The most important thing is when you load the code to the Arduino device, in the DELAY parameter (time), the variable “time” is in milliseconds, this time must be adjusted depending on the LDR it uses or, in its case, to obtain a sample according to your needs.

It must be remembered that the LDR that we handle are very economical, however, they are photoresistors that their sensitivity to the laser can give slow sampling, however, it perfectly serves to obtain the true QRNG.

Another tip is the 50/50 beam splitter can be the most expensive component, if you buy it for professional use it will be high cost, however for practical use and to see how it works you can buy a beam splitter like this that I use and it is cheap.

G Vidal.

1 Like

All components found online and ordered them yesterday. I will share my results building a Home-QRNG. :slightly_smiling_face: