Author

Topic: How bitcoin-qt generate address and how do I know they are really random? (Read 1130 times)

member
Activity: 84
Merit: 10
You can create key pairs manually by throwing dice, if you want...

How can I do it?
sr. member
Activity: 322
Merit: 250
You can create key pairs manually by throwing dice, if you want...
staff
Activity: 4284
Merit: 8808
go to http://bitaddress.org/, use the "brainwallet" option.
inb4 inevitable "MY BRAIN WALLET WAS HACKED!"
I realize you're joking there, as you've indicated with your small text. But a lot of users are really confused by this stuff and will actually do this, and over and over again they get robbed.

Desktop computers are actually quite good sources of randomness. They monitor the precise timing between keypresses, mouse movements, disk seeks, network packets, and other sources of enviromental nodes and then they combine this data into randomness pools which are stored by cryptographic hashes so that even if most of the data that goes in is unpredictable, so long as there is only a few hundred bits of actual randomness that makes it in all the output is at least computationally sound.

Bitcoin-qt retains its own randomness pool— really the openssl code— and augments it with further entropy from timing and, on windows, a screenshot at startup.
member
Activity: 84
Merit: 10
but computer can not generate reall random numbers.. Is there a way to create a bitcoin address that is connected to something I add .. like a string that I can add..?

go to http://bitaddress.org/, use the "brainwallet" option.

inb4 inevitable "MY BRAIN WALLET WAS HACKED!"


using a online website to create an address.. Really?
legendary
Activity: 3682
Merit: 1580
but computer can not generate reall random numbers.. Is there a way to create a bitcoin address that is connected to something I add .. like a string that I can add..?


Computers generate "better" random numbers than humans so leave it be.
legendary
Activity: 2058
Merit: 1452
but computer can not generate reall random numbers.. Is there a way to create a bitcoin address that is connected to something I add .. like a string that I can add..?

go to http://bitaddress.org/, use the "brainwallet" option.

inb4 inevitable "MY BRAIN WALLET WAS HACKED!"
legendary
Activity: 2856
Merit: 1520
Bitcoin Legal Tender Countries: 2 of 206
ask the core devs.
member
Activity: 84
Merit: 10
but computer can not generate reall random numbers.. Is there a way to create a bitcoin address that is connected to something I add .. like a string that I can add..?
legendary
Activity: 2856
Merit: 1520
Bitcoin Legal Tender Countries: 2 of 206
I guess the random part comes from the OpenSSL lib:

Code:
#include
member
Activity: 84
Merit: 10
any info about EC_KEY_regenerate_key(..) What is the seed that it gets? from where the random part. the pc is only pseudo random
legendary
Activity: 2856
Merit: 1520
Bitcoin Legal Tender Countries: 2 of 206
How bitcoin-qt generate address and how do I know they are really random?

Thanks.

it's Open Source. this means the source code is not a secret and you can assume it is reviewed serveral times from different parties.

https://github.com/bitcoin/bitcoin/blob/master/src/key.cpp
member
Activity: 84
Merit: 10
How bitcoin-qt generate address and how do I know they are really random?

Thanks.
Jump to: