<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Dec 27, 2015 at 11:59 AM, Ron Garret <span dir="ltr"><<a href="mailto:ron@flownet.com" target="_blank">ron@flownet.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
On Dec 27, 2015, at 6:54 AM, ianG <<a href="mailto:iang@iang.org">iang@iang.org</a>> wrote:<br>
<br>
> The process we developed at CAcert was:<br>
><br>
> 1.  Everyone brings their favourite RNG on their laptop.  I used laptop photos of a white card in lowlight, similar to above, and hashed every photo.  One person used John Denker's audio device.  Another used the OpenSSL RNG ;-)<br>
><br>
> 2.  Each feed was then transferred on USB stick to a single offline computer.<br>
><br>
> 3.  All feeds were then combined (XOR'd together and hashed) by a 1 page C program.  Result was fed into the key generation process.<br></span></blockquote><div><br></div><div>Very cool!</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
</span>Concatenation would be more secure than XOR.  XOR can actually lose entropy if two of your sources are correlated.  Concatenation (followed by a hash) doesn’t have that problem.<br></blockquote><div><br></div><div>In the game above, if one attacker could see all the random numbers from the other people before committing to their own random number, the attacker could simply submit the XOR of the other random values, then XORed with the value the attacker desires to be the seed to the hash function.<br></div><div><br></div><div>Your scheme of concatenation, then feeding into a cryptographically strong hash algorithm, seems to defeat this attack.  What if the attacker hacks the hash algorithm on the air-gapped computer?  The nice part about the simple 1-page C program concept is the result could theoretically be manually verified.  On the other hand, do we really want all the participants looking at the resulting seed, or should it be kept secret?  Fun stuff.  I guess at some point we just have to accept some level of risk and move on.</div><div><br></div><div>Bill<br></div></div></div></div>