entropy
Marko Vojinovic
vvmarko at gmail.com
Mon Jan 11 18:36:20 UTC 2010
On Monday 11 January 2010 15:51:20 Roberto Ragusa wrote:
> Tim wrote:
> > Using psuedo code, what it did was:
> >
> > x = random number between 1 and 200
> > y = random number between 1 and 200
> > draw dot at x,y
> > repeat
>
> Your "plot some graph" trick is actually a powerful way to detect
> stupid random number generation, which can possibly lead to
> significant security issues in some contexts.
Just to add, for the sake of completeness :-) --- this idea is not used only
in two dimensions. You can also plot random numbers as points in 3D space, or
higher (if you are able to visualize them :-) ). If you get a surface-like
shape instead of a cube-like shape, there is correlation, ie. the numbers are
not random.
OTOH, you can get visually well-distributed graph of points (which suggests no
correlation) for completely non-random distributions of numbers (think dense
lattice or similar regular distributions), so plotting graphs is far from
conclusive evidence of randomness.
IIRC from courses, randomness is in general a very tricky thing. There is no
such thing as "a set of random numbers", but rather only a "a set of numbers
that *appear* random in particular context". This means that each random
number generator should be chosen (and verified to be good enough) for each
particular problem where you want to use it. There is no "one size fits all"
generator. That said, the best "one size fits most" generator is the one
produced by measuring nuclear decays or such, and these are as random as one
can get, in principle. :-)
Best, :-)
Marko
More information about the users
mailing list