Details

The GNU C Library, known as glibc, is a free and open source version of the C standard library. If you've used open source software, then you've probably used a program built using this library.

Among the many other tools provided by this library is a Linear Congruential Generator. This generator uses bit masking to return only the last 31 bits of the Seed.

Pseudocode

// This code is adapted from the source code
// of GLIBC found here:
//
// https://sourceware.org/git/glibc.git

// The current state value
state = 1138;

// Our constants
a = 1103515245;
c = 12345;

// random number generator
function RandomNumber() {

	// Run the function
	state = ((a * state) + c) AND $7FFFFFFF;

	// Return the new value
	return state;

}
			


Test Results

Period Length Test

SeedPeriod LengthResult
113864000Passed
6553564000Passed
867530964000Passed
1677721664000Passed
12345678964000Passed
Minimum to Pass: 64,000

Plot Test

 

Count the 1s Test

Seed% Bits that are 1sResult
113849.93%Passed
6553550.06%Passed
867530949.74%Passed
1677721650.12%Passed
12345678949.85%Passed
Minimum to Pass: 45%

Dartboard Test

SeedDarts PlacedResult
11386944Passed
655357022Passed
86753096994Passed
167772166997Passed
1234567896997Passed
Minimum to Pass: 2,600

Crush Test

SeedCompression RateResult
1138101.14%Passed
65535101.14%Passed
8675309101.14%Passed
16777216101.14%Passed
123456789101.14%Passed
Minimum to Pass: 95%

Unique Bytes Test

SeedUnique High BytesUnique Low BytesResult
1138162256Passed
65535170256Passed
8675309167256Passed
16777216160256Passed
123456789154256Failed
Minimum to Pass: 160

High/Low Byte Test

SeedHigh After HighHigh After LowLow After HighLow After LowSpreadResult
11382448254825482455193Passed
655352420252625252528159Passed
86753092679248124812358359Passed
16777216254524872487248091Passed
1234567892517253025292423153Passed
Maximum to Pass: 500

Distribution Test

Seed113865535867530916777216123456789
0.0 to 0.1100596510481025961
0.1 to 0.2989970106810341055
0.2 to 0.3103210189881023990
0.3 to 0.49301004105110451030
0.4 to 0.5104099010069051012
0.5 to 0.697810139651042965
0.6 to 0.79899959999971018
0.7 to 0.899610219459161042
0.8 to 0.9104110179641039976
0.9 to 1.010011008967975952
Spread237161345415313
ResultPassedPassedPassedPassedPassed
Maximum to Pass: 500

Sample Output

1810185762204406801929825598454237949712622956621031508631246560285425478771366055621138152235
353448840423006497209676115814667916871783234612701111901203407048210548993631956703136235881305
13900828461458847743800661964703052821107739012215156421391279037112600976811191006198914108407
150207651617776211971269200258137952168315785320481115337929231368654572729071179213820988861573
489239258648364811195120893615256258573266075268034070791374018082379142151873464255642243
19195970564045788736966723821058122207103608887613322754456902268263869913553841579761672224625
16821783901205925335162702099658839902193263382615323034751822466864423513001675931438450808015
8244926361325857125132665503412693757231818863688124064739317446615102761038791435828468125038621
3179977142215783391316698208187724213728625865467800364710702997882101478869178360810104635611
201044856296364625704570038425601975115687811696613850938682323417049713472766585761440141961


A WFTID Website