1

I want to generate my own private key with dice and/or other very entropic phenomenon. But how can I calculate if my data have a good entropy ? I mean if I throw dice in a certain way too much time maybe my outcome will not be trully random, maybe my dice is not a very good dice and have imperfection etc.

So can I just throw it 300+ and if I don't have 0.166666% each result (1,2,3,4,5,6) it's not good ?

Also I want to write my own series of dice result just to compare how deficient is my brain when I try to generate true randomness.

Thanks

G. Maxwell
  • 7,676
  • 2
  • 19
  • 46

2 Answers2

1

Try using the an open source program called ent. Here are the results for rolling a die six times with the result vector of <666666>.

% echo -n "666666" | ./ent

Entropy = 0.000000 bits per byte.

Optimum compression would reduce the size of this 6 byte file by 100 percent.

Chi square distribution for 6 samples is 1530.00, and randomly would exceed this value less than 0.01 percent of the times.

Arithmetic mean value of data bytes is 54.0000 (127.5 = random). Monte Carlo value for Pi is 4.000000000 (error 27.32 percent). Serial correlation coefficient is undefined (all values equal!).

skaht
  • 3,017
  • 1
  • 12
  • 23
0

You may find this old thread on bitcointalk helpful -> https://bitcointalk.org/index.php?topic=24268.0

There are 2^160 possible addresses in Bitcoin. To put that in perspective there's an estimated 2^63 grains of sand on all of Earth's beaches, citation.

If you have a die and roll it 99 times, you have 6^99 different possible combinations. The number of different possible outcomes is so large that even with a dice that has imperfections causing less entropy the likelyhood of someone else rolling the same 99 numbers is astronomically unfeasible.

m1xolyd1an
  • 5,566
  • 2
  • 14
  • 30