True Random


There are two principal methods used to generate random numbers. One measures some physical phenomenon that is expected to be random and then compensates for possible biases in the measurement process. The other uses computational algorithms that produce long sequences of apparently random results, which are in fact completely determined by a shorter initial value, known as a seed or key. The latter type are often called pseudo-random number generators.

Pseudo-random implementations, like LCG (linear congruential generator), usually uses a seed using a couple of runs with with a slightly different values of the multiplier coefficient (more on LCG).

True randomness can achieved from the sound a Zener diode caused by its avalanche breakdown, another way is sampling statics or a “white noise” this can be done using any simple receiver.

is doing just that, offering a free, online generator.

generate integer using the HTTP service.
Generating 1 random number [1 to 100, base 10] is easy!
http://www.random.org/integers/?num=1&min=1&max=100&col=1&base=10&format=plain&rnd=new
Watch

The downsize is active connection to the internet and a small delay, even thou the output does not need parsing.

quick&dirty wrapping:

Private Function trueRandom(ByVal num As Long, ByVal min As Long, ByVal max As Long) As Long()
    On Error Resume Next
    With Inet1
        .Document = "/integers/?num=" & num & "&min=" & min & "&max=" & max & "&col=1&base=10&format=plain&rnd=new"
        .RemoteHost = "www.random.org"
        .URL = "http://www.random.org/integers/?num=" & num & "&min=" & min & "&max=" & max & "&col=1&base=10&format=plain&rnd=new"
    End With
    Dim s as String
    s=Inet1.OpenURL
    'Here a Small Delay...
    trueRandom=CInt(Trim$(s))
End Function

Leave a Reply