• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..07-May-2022-

.deps/H03-May-2022-69,18142,453

bauer/H03-May-2022-2,4721,907

COPYINGH A D03-May-202218.8 KiB371302

MakefileH A D03-May-202291 KiB1,322908

Makefile.amH A D03-May-20223.4 KiB13388

Makefile.inH A D03-May-2022104.5 KiB1,3221,129

NOTESH A D03-May-202230.8 KiB599506

READMEH A D03-May-20226.9 KiB141112

Vtest.cH A D03-May-20227 KiB22196

Xtest.cH A D03-May-20221.4 KiB4511

bits.cH A D03-May-202240 KiB1,442704

bits.cruftH A D03-May-202220.4 KiB778681

chisq.cH A D03-May-20228.1 KiB279139

configure.acH A D03-May-2022716 3325

convertoperm.plH A D03-May-20222.1 KiB9673

copyright.hH A D03-May-20221,017 252

countx.cH A D03-May-20225.6 KiB241174

dab_bytedistrib.cH A D03-May-20223.1 KiB9734

dab_dct.cH A D03-May-202210.2 KiB327150

dab_filltree.cH A D03-May-20224.2 KiB156102

dab_filltree2.cH A D03-May-20228.1 KiB200140

dab_monobit2.cH A D03-May-20222.7 KiB10155

diehard_2dsphere.cH A D03-May-20226 KiB18272

diehard_3dsphere.cH A D03-May-20222.8 KiB10448

diehard_birthdays.cH A D03-May-20228.2 KiB26097

diehard_bitstream.cH A D03-May-20229.4 KiB281140

diehard_count_1s_byte.cH A D03-May-202210.2 KiB329111

diehard_count_1s_stream.cH A D03-May-202213.7 KiB422164

diehard_craps.cH A D03-May-20224.2 KiB16567

diehard_dna.cH A D03-May-20227.2 KiB248147

diehard_operm5.cH A D03-May-20227 KiB251130

diehard_operm5.c.saveH A D03-May-20226.6 KiB239206

diehard_operm5.cruftH A D03-May-20226.6 KiB239213

diehard_opso.cH A D03-May-20225.2 KiB15141

diehard_oqso.cH A D03-May-20224.1 KiB13849

diehard_parking_lot.cH A D03-May-20225.4 KiB15844

diehard_rank_32x32.cH A D03-May-20223.4 KiB13767

diehard_rank_6x8.cH A D03-May-20223.1 KiB12869

diehard_runs.cH A D03-May-20225.5 KiB18693

diehard_runs_working.cH A D03-May-20225.6 KiB19095

diehard_squeeze.cH A D03-May-20224.1 KiB13751

diehard_sums.cH A D03-May-202210.9 KiB28283

dieharder_rng_types.cH A D03-May-20224.8 KiB16681

dieharder_test_types.cH A D03-May-20224.3 KiB18078

histogram.cH A D03-May-20222.8 KiB10248

kstest.cH A D03-May-202212.6 KiB469243

kstest.cruftH A D03-May-20224.8 KiB196164

libdieharder.3H A D03-May-20226.8 KiB191148

marsaglia_tsang_gcd.cH A D03-May-202212.8 KiB336125

marsaglia_tsang_gorilla.cH A D03-May-20221.6 KiB6826

op5dat.forH A D03-May-202236.2 KiB460459

parse.cH A D03-May-20223.5 KiB14481

prob.cH A D03-May-2022768 3614

random_seed.cH A D03-May-20221.8 KiB5317

rank.cH A D03-May-20225.4 KiB204100

rgb_bitdist.cH A D03-May-202212.5 KiB332128

rgb_bitdist.cruftH A D03-May-202210.8 KiB284258

rgb_kstest_test.cH A D03-May-20222.9 KiB8727

rgb_lagged_sums.cH A D03-May-20223.3 KiB9828

rgb_lmn.cH A D03-May-20227.2 KiB22761

rgb_minimum_distance.cH A D03-May-20227.7 KiB22198

rgb_operm.cH A D03-May-202218.6 KiB635269

rgb_permutations.cH A D03-May-20224.1 KiB164104

rgb_persist.cH A D03-May-20222.4 KiB8237

rgb_timing.cH A D03-May-20221.3 KiB5427

rijndael-alg-fst.cH A D03-May-202262.2 KiB1,4011,241

rng_XOR.cH A D03-May-20222.4 KiB9445

rng_aes.cH A D03-May-20222.5 KiB9448

rng_ca.cH A D03-May-20226 KiB17290

rng_dev_arandom.cH A D03-May-20221.4 KiB6747

rng_dev_random.cH A D03-May-20221.4 KiB6747

rng_dev_urandom.cH A D03-May-20221.4 KiB6747

rng_file_input.cH A D03-May-20229.9 KiB353198

rng_file_input_raw.cH A D03-May-20227.6 KiB251113

rng_jenkins.cH A D03-May-20221.3 KiB5230

rng_kiss.cH A D03-May-20223.1 KiB11251

rng_stdin_input_raw.cH A D03-May-20221.2 KiB5239

rng_superkiss.cH A D03-May-20223.3 KiB12965

rng_threefish.cH A D03-May-20223.9 KiB12966

rng_uvag.cH A D03-May-20226 KiB20879

rngav.cH A D03-May-20223.6 KiB183146

rngs_gnu_r.cH A D03-May-202225.7 KiB951674

sample.cH A D03-May-20222.9 KiB8524

skein_block64.cH A D03-May-20228.6 KiB244193

skein_block_ref.cH A D03-May-20225 KiB14592

static_get_bits.cH A D03-May-20228 KiB259116

std_test.cH A D03-May-20229.2 KiB297105

sts_monobit.cH A D03-May-20223.7 KiB13361

sts_runs.cH A D03-May-20222.9 KiB12662

sts_serial.cH A D03-May-202212.3 KiB338154

timing.cH A D03-May-2022786 4020

version.cH A D03-May-20221.6 KiB5524

README

1========================================================================
2
3Author Contact Information:
4
5   Robert G. Brown
6   Duke University Dept. of Physics, Box 90305
7   Durham, N.C. 27708-0305
8   Phone: 1-919-660-2567
9   Fax: 919-660-2525
10   Email: rgb@phy.duke.edu
11   URL: http://www.phy.duke.edu/~rgb
12
13========================================================================
14
15               Notes About the Tests in Dieharder
16
17Dieharder is original code written by and Copyright Robert G. Brown
18(with different code modules written over the period 2003-present).  The
19tests included (or expected to be included in the future) in dieharder,
20are, however, derived from descriptions from several places.
21
22  * Diehard, a famous suite of random number tests written over many
23years by George Marsaglia.  The original Diehard sources (written in
24Fortran) are (of course) Copyright George Marsaglia according to the
25Berne convention, where authors retain copyright with or without a
26notice in any original work.  The original Diehard code written by
27Marsaglia did not include a copyright notice or an explicit license in
28or with the sources that have been made publically available on the web
29for many years.  When contacted, Dr. Marsaglia has indicated his wish to
30restrict commercial usage of his code and permit only academic/research
31related use.  For this reason the the algorithms are fully
32re-implemented, in original code, in dieharder to keep authorship and
33GPL licensing issues clear.  However, all diehard-equivalent tests are
34clearly labelled as such and academically attributed to Dr. Marsaglia.
35
36  * The National Institute of Standards and Technology (NIST)
37Statistical Test Suite (STS) as described in publication SP800-22b.
38Although this test suite was developed with government support and is
39explicitly in the public domain, and is available in C source.  There is
40some overlap between STS and Diehard -- for example, both have binary
41matrix rank tests -- but the STS focusses primarily on bitlevel
42randomness and the suitability of a random number generator for use in
43cryptographic applications.  The tests described in SP800-22b that are
44implemented in dieharder are completely rewritten in original C by
45Robert G. Brown to keep copyright and GPL issues clear.  All STS-derived
46tests are clearly labelled as such and are academically attributed to
47the various authors of the suite (Andrew Rukhin, Juan Soto, James
48Nechvatal, Miles Smid, Elaine Barker, Stefan Leigh, Mark Levenson, Mark
49Vangel, David Banks, Alan Heckert, James Dray, San Vo).
50
51  * Original tests or timing operations inserted by Robert G. Brown.
52Almost any distribution that can be computed on the basis of a source of
53random numbers with a derived statistic with known or reliably
54measurable statistical properties can serve as a test of random numbers
55using the general approach implemented in Diehard, the STS, Dieharder,
56and elsewhere.
57
58  * Tests described in Knuth's The Art of Computer Programming.
59
60  * User-contributed tests.
61
62  * Tests described elsewhere in the literature.
63
64In all cases some effort has been made to correctly attribute the
65originator of a test algorithm, and if there are any errors in this
66regard they will be happily corrected once they are brought to the
67attention of the author.
68
69========================================================================
70
71                         To Build Dieharder
72
73Dieharder can be built from source in most cases by simply typing "make"
74on the command line while in the source directory.  However, it does
75require certain resources to build, notably the Gnu Scientific Library
76in a revision no earlier than 1.4 (and ideally greater than 1.6).  It
77has been tested primarily on gcc/linux-based systems, but should port
78well to any unixoid environment with at most some minor hacking of the
79include files or systems calls used.
80
81If one is using an RPM-based linux, the easiest way to simply build and
82install the library is to either take a chance on installing a binary
83rpm, preferrably one that was built on a system with the same general
84distribution and environment, or rebuilding the source RPM.  However,
85RPM based installations are actually less desireable with a tool such as
86diehard than source builds, since part of its appeal is the availability
87of its source and the ease with which new tests or generators can be
88directly implemented.
89
90Dieharder is an open source project for a reason -- it simply is not
91possible to trust a test suite of this sort without access to the source
92because even a subtle error in the sources or data used to perform a
93test will cause the test to return incorrect answers, conceivably to the
94detriment of all concerned.  With the source readily available, any user
95is free to examine or modify the source for any test and determine
96whether or not the test is working and participate in the critical
97process whereby academia arrives at a consensus truth.
98
99========================================================================
100
101                 Licensing and Revision Control
102
103Dieharder is (as noted) Copyright Robert G. Brown, 2003-2006.  It has
104been kept under revision control (first CVS, more recently Subversion)
105since the inception of the process in 2003 and all incremental changes
106to the code as it was developed are carefully documented.
107
108Dieharder was deliberately developed to by a GPL project, since
109alternative random number test suites were either incomplete with regard
110to the span of test possibilities of interest to the author, restricted
111or unclear about their licensing restrictions, or both.  In addition, by
112integrating from the beginning with the Gnu Scientific Library (which is
113a full GPL project with the viral version of the license) it becomes
114itself a GPL project in any event.
115
116It is strongly suggested that prospective users of this test read the
117terms of the license included with this source distribution in the file
118COPYING.  In summary, permission is granted to freely use and modify the
119sources and distribute the result or any binary objects derived
120therefrom as long as the terms of the GPL are abided by.  These terms
121require the preservation of all copyright and license information in the
122sources and that the source of any and all revisions to the original
123dieharder code be made available upon request to any receivers of a
124dieharder binary, among other things.
125
126This program is distributed in the hope that it will be useful, but
127WITHOUT ANY WARRANTY; without even the implied warranty of
128MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
129General Public License for more details.
130
131If any user of the dieharder program should revise the program in a way
132that is likely to be of use to others, they are encouraged to at least
133offer to contribute the revision back to the project (subject to the
134"editorial" approval of the primary author).  Contact Robert G. Brown to
135arrange for such a contribution.
136
137========================================================================
138
139
140
141