Bitcoin Forum
April 16, 2024, 10:33:33 PM *
News: Latest Bitcoin Core release: 26.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 6 »  All
  Print  
Author Topic: I am going to build a true random number generator ...  (Read 7794 times)
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:21:51 PM
Last edit: April 26, 2014, 06:00:00 PM by DeathAndTaxes
 #1

Bitcoin relies on random numbers for keys and signatures.  Clients may also rely on them for encryption (salt), and seed generation (HD wallets).

Proving a PRNG is secure is a very difficult task and is impossible when the operating system is not built from source.  Quantum mechanics are non-deterministic and thus provide an alternative method of generating randomness.

I just need to wait for a missing component to arrive.

(Stupid broken image proxy - direct link http://i.minus.com/ibzPEHrUJ3pByt.jpg )
Bonus points if you can figure out what it is without using google.
1713306813
Hero Member
*
Offline Offline

Posts: 1713306813

View Profile Personal Message (Offline)

Ignore
1713306813
Reply with quote  #2

1713306813
Report to moderator
1713306813
Hero Member
*
Offline Offline

Posts: 1713306813

View Profile Personal Message (Offline)

Ignore
1713306813
Reply with quote  #2

1713306813
Report to moderator
"Governments are good at cutting off the heads of a centrally controlled networks like Napster, but pure P2P networks like Gnutella and Tor seem to be holding their own." -- Satoshi
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713306813
Hero Member
*
Offline Offline

Posts: 1713306813

View Profile Personal Message (Offline)

Ignore
1713306813
Reply with quote  #2

1713306813
Report to moderator
1713306813
Hero Member
*
Offline Offline

Posts: 1713306813

View Profile Personal Message (Offline)

Ignore
1713306813
Reply with quote  #2

1713306813
Report to moderator
1713306813
Hero Member
*
Offline Offline

Posts: 1713306813

View Profile Personal Message (Offline)

Ignore
1713306813
Reply with quote  #2

1713306813
Report to moderator
OnkelPaul
Legendary
*
Offline Offline

Activity: 1039
Merit: 1003



View Profile
April 07, 2014, 08:24:35 PM
 #2

My guess is it's a Geiger counter (I swear I did not check Google or anything else)...

Onkel Paul

FrozenBit
Full Member
***
Offline Offline

Activity: 657
Merit: 102


View Profile
April 07, 2014, 08:25:15 PM
 #3

 Good luck, that kind of entropy will be hard to create by machine.
bananaControl
Sr. Member
****
Offline Offline

Activity: 322
Merit: 250


Decentralize All The Things!


View Profile
April 07, 2014, 08:25:23 PM
 #4

Bonus points if you can figure out what it is without using google.

Some kind of radioactive source maybe?
murraypaul
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


View Profile
April 07, 2014, 08:27:54 PM
 #5

An example going back to 1957: http://en.wikipedia.org/wiki/ERNIE#ERNIE

BTC: 16TgAGdiTSsTWSsBDphebNJCFr1NT78xFW
SRC: scefi1XMhq91n3oF5FrE3HqddVvvCZP9KB
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:28:00 PM
 #6

Good luck, that kind of entropy will be hard to create by machine.

The entropy isn't created by a machine it is a created by the environment.  The circuit would just record entropy which already exists.
Nagle
Legendary
*
Offline Offline

Activity: 1204
Merit: 1000


View Profile WWW
April 07, 2014, 08:28:12 PM
 #7

Proving a PRNG is secure is a very difficult task and is impossible when the operating system is not built from source.  Quantum mechanics are non-deterministic and thus provide an alternative method of generating randomness.
Of course. Are you using a noise diode or a radiation source?
iraszl
Sr. Member
****
Offline Offline

Activity: 266
Merit: 257

Enthusiast


View Profile
April 07, 2014, 08:28:40 PM
 #8

Nice project! Is this the first time anyone had this idea?
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:29:50 PM
 #9

An example going back to 1957: http://en.wikipedia.org/wiki/ERNIE#ERNIE

True they certainly aren't "new" however the availability of low cost micro controllers, design tools, and open source hardware means it is more economical to be done by a hobbyist.
murraypaul
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


View Profile
April 07, 2014, 08:30:47 PM
 #10

Nice project! Is this the first time anyone had this idea?

Ernie 1-4 have been running monthly premium bond draws for 57 years, so not quite, no Smiley

BTC: 16TgAGdiTSsTWSsBDphebNJCFr1NT78xFW
SRC: scefi1XMhq91n3oF5FrE3HqddVvvCZP9KB
OnkelPaul
Legendary
*
Offline Offline

Activity: 1039
Merit: 1003



View Profile
April 07, 2014, 08:31:07 PM
 #11

Heh - almost right. Of course it's not the counter circuitry, just the detector tube...
Might be not so suitable after all - for really low radiation, the number of random bits per time unit might be too small, and for stronger radiation, I think they might have some saturation or dead time effect which prevents them to detect events that are too close together in time. But I may be wrong, this is all from very dim memory.
Commercial sources of randomness use thermal or quantum noise generated by semiconductor diodes as far as I know, those are much smaller and less fickle.
But as a fun project, this tube might be just the right thing...

Onkel Paul

cbeast
Donator
Legendary
*
Offline Offline

Activity: 1736
Merit: 1006

Let's talk governance, lipstick, and pigs.


View Profile
April 07, 2014, 08:32:00 PM
 #12

My guess is it's a Geiger counter (I swear I did not check Google or anything else)...

Onkel Paul
That's what I would guess, or a tesla coil.

Any significantly advanced cryptocurrency is indistinguishable from Ponzi Tulips.
mufa23
Legendary
*
Offline Offline

Activity: 1022
Merit: 1001


I'd fight Gandhi.


View Profile
April 07, 2014, 08:33:45 PM
 #13

Had to google it. My coworkers and I couldn't figure it out.

Positive rep with: pekv2, AzN1337c0d3r, Vince Torres, underworld07, Chimsley, omegaaf, Bogart, Gleason, SuperTramp, John K. and guitarplinker
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:34:10 PM
 #14

Proving a PRNG is secure is a very difficult task and is impossible when the operating system is not built from source.  Quantum mechanics are non-deterministic and thus provide an alternative method of generating randomness.
Of course. Are you using a noise diode or a radiation source?

Radiation source.  I am planning on using Americium (Am-241) for safety reasons (reasonably available and an alpha emitter).

SgtSpike
Legendary
*
Offline Offline

Activity: 1400
Merit: 1005



View Profile
April 07, 2014, 08:36:19 PM
 #15

I always thought that a microphone could work just as effectively for randomness.  Put a mic outside, record for 10 seconds, take the hash of that, viola!  Or just a straight sampling of it, like 10 bits, although the effective randomness would be less bits than that.
bananaControl
Sr. Member
****
Offline Offline

Activity: 322
Merit: 250


Decentralize All The Things!


View Profile
April 07, 2014, 08:37:59 PM
 #16

I always thought that a microphone could work just as effectively for randomness.  Put a mic outside, record for 10 seconds, take the hash of that, viola!  Or just a straight sampling of it, like 10 bits, although the effective randomness would be less bits than that.

Or a radio. Record some random noise, and bingo, random numbers  Wink
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:38:54 PM
 #17

Heh - almost right. Of course it's not the counter circuitry, just the detector tube...
Might be not so suitable after all - for really low radiation, the number of random bits per time unit might be too small, and for stronger radiation, I think they might have some saturation or dead time effect which prevents them to detect events that are too close together in time. But I may be wrong, this is all from very dim memory.
Commercial sources of randomness use thermal or quantum noise generated by semiconductor diodes as far as I know, those are much smaller and less fickle.
But as a fun project, this tube might be just the right thing...

Onkel Paul

Output will be low.  1000 bps would be optimistic, first version might be significantly lower than that.  The tube I picked is a great alpha detector.  Alpha particles are block even by a sheet of paper so it becomes possible to use a source with higher activity without presenting a safety risk. 

Still even low output can be useful if the results are cached.  Lets say only 100 bps.  That over one million bytes per day.  Enough to generate 4200 private keys.   Of course things like a strong HD wallet seed (to produce an infinite number of keys) is probably a better use of those "scarce" bits.
mufa23
Legendary
*
Offline Offline

Activity: 1022
Merit: 1001


I'd fight Gandhi.


View Profile
April 07, 2014, 08:39:00 PM
 #18

I always thought that a microphone could work just as effectively for randomness.  Put a mic outside, record for 10 seconds, take the hash of that, viola!  Or just a straight sampling of it, like 10 bits, although the effective randomness would be less bits than that.
thats a neat idea. I'd assume the codec and/or file extension might not make it too random though

Positive rep with: pekv2, AzN1337c0d3r, Vince Torres, underworld07, Chimsley, omegaaf, Bogart, Gleason, SuperTramp, John K. and guitarplinker
franky1
Legendary
*
Offline Offline

Activity: 4186
Merit: 4406



View Profile
April 07, 2014, 08:39:23 PM
 #19

using radiation is risky.. it has a known half-life which a mathematician could possibly abuse to work out the base number used to then create randomness..

the best bet is to take several different events not linked at all and combine them

I DO NOT TRADE OR ACT AS ESCROW ON THIS FORUM EVER.
Please do your own research & respect what is written here as both opinion & information gleaned from experience. many people replying with insults but no on-topic content substance, automatically are 'facepalmed' and yawned at
DeathAndTaxes (OP)
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
April 07, 2014, 08:42:27 PM
Last edit: April 07, 2014, 09:01:55 PM by DeathAndTaxes
 #20

I always thought that a microphone could work just as effectively for randomness.  Put a mic outside, record for 10 seconds, take the hash of that, viola!  Or just a straight sampling of it, like 10 bits, although the effective randomness would be less bits than that.

Or a radio. Record some random noise, and bingo, random numbers  Wink

That is what RANDOM.org uses.  All hardware RNGs can be categorized as either devices which sample a chaotic system (like radio noise) or devices which observe a quantum effect.  The chaotic systems are secure because while in theory radio noise is deterministic, at the current time simulations that large and complex are beyond our computing abilities.  Quantum observations are (at least based on our understanding of the universe) truly random in that we can not predict or explain why they occur.

One thing to watch out for in chaotic systems would be a periodic or oscillating signal.   Imagine a scenario where somewhere nearby there is a component (possibly defective) which is putting out a strong pulse at a specific interval which is picked up by the listening device.  This would result in your random numbers not being uniformly distributed.  Kind of like rolling some dice for random numbers but they are loaded and the six comes up more frequently than other numbers. 
Pages: [1] 2 3 4 5 6 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!