Re: newbies need help interpreting Diehard output
- From: mjt4941@xxxxxxxxxxxxx
- Date: 2 Feb 2007 22:56:35 -0800
On Feb 2, 11:28 am, Peter Pearson <ppear...@xxxxxxxxxxxxxxx> wrote:
On Fri, 02 Feb 2007 08:49:20 -0500, SySiphus wrote:
[snip]
. . . I have recently been helping a colleague of mine
with an encryption system he has been working on for a number of years.
Cipher design is much harder than designing a pseudorandom number
generator that will pass the Diehard tests.
yes, this is well understood, but as is the case with a OTP the
randomness of the numbers is greatly important.
[snip]
there is also the question of whether or not wee are reading the results
from the Diehard tests correctly. i am under the impression that the
optimal P value would be .5 signaling true randomness. i understand
that all samples will return a different value, and that the mean of the
sample means (in this case the mean of the P values) should be the
number that is actually checked. what i am not sure about is if
different test are weighted higher than others, and what to do if one
test seems to fail while others appear to pass with flying colors. i am
attaching a copy of the output from Diehard so someone may give us a few
pointers. i thank you all for your time
If your input is indistinguishable from random, the P values are
drawn from a uniform distribution over [0,1]. You don't particularly
want them to be near 0.5, and in fact if they were all close to 0.5,
that would indicate something nonrandom about your input. You want
them to look like numbers drawn randomly from [0,1].
that makes perfect sense.
(Don't miss
Donald Knuth's chapter on random numbers in The Art of Computer
Programming, volume 2.)
online or print?
What people particularly look for is crowding at the ends, values
anomalously close to 0 or 1, because that indicates that whatever
the test counts is happening too often or too seldom. For example,
if you run 10 tests and get a P value in [0, 0.001] or in
[0.999, 1], that's an outcome that would be unlikely with random
input.
i am guessing this means we shouldn't yet worry about the opso test
that returned a majority of the P values at 1.0000. i.e. run the
tests numerous times, if this test always fails then take not?
(Also, a P value in [0.123, 0.124] would be unlikely,
but that interval is not a priori special.)
If your numbers consistently fail any test, by which I mean
produce anomalously large or small P values more often that
random input would, then your numbers are inadequate for
cryptographic purposes, no matter how many other tests they
pass.
if in fact they fail the one test and that means back to the drawing
board... what are we heading back to the drawing board to tweak? what
is an opso test? what do these failing results mean in a language
other than Boolean? i mean pass fail is all well and good but i would
like to know what went wrong. thanks for the help.
SySiphus
.
- Follow-Ups:
- Re: newbies need help interpreting Diehard output
- From: Peter Pearson
- Re: newbies need help interpreting Diehard output
- References:
- newbies need help interpreting Diehard output
- From: SySiphus
- Re: newbies need help interpreting Diehard output
- From: Peter Pearson
- newbies need help interpreting Diehard output
- Prev by Date: Re: definition of statistical test for randomness
- Next by Date: Re: potential break or real break?
- Previous by thread: Re: newbies need help interpreting Diehard output
- Next by thread: Re: newbies need help interpreting Diehard output
- Index(es):
Relevant Pages
|