pwarren / rtl-entropy

An entropy generator using SDR peripherals, including rtl-sdr and BladeRF
http://rtl-entropy.org
GNU General Public License v3.0
357 stars 43 forks source link

fix initial non-randomness #1

Closed cladisch closed 10 years ago

cladisch commented 10 years ago

In non-encryption mode, write out not the old buffer but the buffer that contains the entropy we just collected. Writing out the old buffer made the output a little bit too predictable:

$ rtl-entropy 2>/dev/null | xxd | head 0000000: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000010: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000020: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000030: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000040: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000050: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000060: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000070: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000080: 0000 0000 0000 0000 0000 0000 0000 0000 ................ 0000090: 0000 0000 0000 0000 0000 0000 0000 0000 ................

pwarren commented 10 years ago

Hi Cladisch,

Thanks for the bug report :)

I've gone about fixing it a different way. We now hold off emiting any entropy until we've had enough buffers worth of debiased input xored together. see commit cc8d0ff009d744f58330e10584f7a2601c205074

Cheers. Paul