Path: cactus.org!milano!cs.utexas.edu!wupost!zaphod.mps.ohio-state.edu!sample. + eng.ohio-state.edu!purdue!mentor.cc.purdue.edu!pop.stat.purdue.edu! + hrubin From: hrubin@pop.stat.purdue.edu (Herman Rubin) Newsgroups: sci.crypt,sci.electronics Subject: Re: Applicable idea for Truly Random Number hardware Summary: Old ideas Message-ID: <20013@mentor.cc.purdue.edu> Date: 26 Sep 91 02:02:15 GMT References: <1991Sep20.131024.19997@lonex.rl.af.mil>Sender: news@mentor.cc.purdue.edu Followup-To: sci.crypt Lines: 30 Xref: cactus.org sci.crypt:4188 sci.electronics:17141 In article , mark@microunity.com (Mark Johnson) writes: > Suppose we have a sequence of bits, A = (a0, a1, a2, a3, ...). > It is produced by some physical process, for example a zener > diode or a Geiger-Muller tube. > Also suppose that the hardware is not perfectly "balanced" > (or "trimmed" or "optimized" or whatever word you prefer), so > that the sequence A doesn't contain equal numbers of ONES > and ZEROES. .................. > Now, consider the new sequence C = A XOR B. Each element ck of C > is just the XOR of the corresponding elements of A and B, > ck = ak XOR bk. > ==> What is the probability that an element of C is a ONE? <== In a general situation, this is much better than A or B is, and this can even be done conditionally. If we define h(A) to be the probability that A is 0 minus the probability of 1, then if A and B are independent, h(C) = h(A) * h(B). This appeared not later than the 1940s, and was proposed as a means of improving physical random numbers back then. A similar procedure, using decimal numbers, was used to improve the randomness of the published RAND numbers. -- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907-1399 Phone: (317)494-6054 hrubin@l.cc.purdue.edu (Internet, bitnet) {purdue,pur-ee}!l.cc!hrubin(UUCP)