How much randomness is in human-generated random digit string?

416 Views Asked by At

Suppose someone is asked to provide a long string of random digits, for example:

4866710938572235108576927175549668592830123185576923856998372006958477486523
(just typed on keyboard, not generated in any way)

How good is it expected to be if used as random source?

For example, can I ask someone to think up a list of {1,2,3,4,5,6} numbers and use it instead of a dice (and expect each number to come with p=1/6 knowing the previous numbers).

Is it safe enough to just think up UUIDs without looking for UUID generator tools?

Is there some simple (not requiring any devices or pencil&paper) algorithm to improve "thought up" random sequences?

Update: Trying little experiment as suggested in one comment:

$ xxd -r -p > test
93B83C5F40691FBE582D54886E590C59B8A39623D7C5013B693D0598C58EB58A482BC857283D859C5830F5829C58BD482ACB4829E4859D58CBA482E859BCEF5928877018394E492855810F0384911D1496839B58394D36829C5029304E6839402885D59329D58F47B573FCE572BFCE472D768CB573D729559EF1905928492DC68BA58C8F83EF4823BC59ED5BAA582CE183944919EDE758B1120B060704B60330D16637D6477283BC5829E204CD3811B859E3AD8B50233549D12984BC5823591BCEADA86923EB568C923DD5482F694BCD68492BEA584BC9684BE8D8B8CA8C858BE45B9C9DB5CD62D8592ED8A923BC69E92D91343DCA9F3E042934

$ paq8l -4 test 
    Creating archive test.paq8l with 1 file(s)...
    test 250 -> 270    
    250 -> 292
    $ tail -n +3 test.paq8l  | wc -c
272
$ dd if=/dev/random of=test2 bs=10 count=25 iflag=fullblock 2> /dev/null
    $ paq8l -4 test2 
Creating archive test2.paq8l with 1 file(s)...
test2 250 -> 274         
250 -> 297

Both files (manualy typed and /dev/random-generated) seem to be uncompressible.

2

There are 2 best solutions below

3
On

I think I cannot answer your first question (and I would say that this is generally hard to tell - depends whether the person really wants to generate random numbers - I wouldn't use this in some critical applications).

However - speaking of pencil&paper PRNG there is one developed by Bruce Schneier in his Solitaire encryption algorithm.

3
On

If a human be asked to select random number from 1 to 10, the number 7 would be selected with probability near to 1/3. So, don't believe human-generated random numbers. :-)