Author

Topic: How many addresses can have Bitcoin? What if a hacker generates them all? ANSWER (Read 363 times)

hero member
Activity: 546
Merit: 500
LOL what you looking at?
As this matter is often asked, I thought I'd make this post, so that when somebody search for it, the answer immediately appears.

Keywords: bitcoin number of possible addresses, banks, hackers, computers, numbers, addresses.



ANSWER

Bitcoin has 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 of possible addresses.

So let's make one hypothesis: a set of banks wants to destroy Bitcoin by generating addresses.

They buy 1 million of computers or equivalent computational power.
It's already nearly sci-fi, but let's believe that it's possible.
Each computer can generate 1000 addresses in one second: that's something more than 30 billions of addresses per year.

So we have each year 30 billions of addresses * 1 million of computers.
That's 30'000'000'000'000'000 of addresses in one year.
If banks let run those computers for 10 years, they would still have only 300'000'000'000'000'000 of addresses.

That's still infinitely less than: 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 of possible addresses.



Edit: user shorena, that knows more than me about the subject, just suggested the following:

Quote
My GPU can do ~38 million per second, lets just take 35 million addresses per second, to make it easier.
If you are considering an attacker that has money, I will assume 4 GPU's per machine, so 4 Million GPUs (1 million computers) at 35 million per second or 140,000,000,000,000 keys per second in total.

140'000'000'000'000 * 60 * 60 * 24 * 365 = 4,41504e+21.
Let's make it round: 400'000'000'000'000'000'000'000'000 addresses per year.

As you can see, it's still infinitely less than: 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 of possible addresses.



But there's another thing to hold in account: each address needs memory:

Quote
I would also suggest you add disk space, because every key needs 32 byte at perfect storage and with the above keys per second thats 4480 TeraByte per second.

I would dare say that it's not so much important the computational power, but the memory, because when you can fill 4480 TB in one second... you need hard disks that will probably be available in 2050.



So, as you can see, even going for a worse scenario, there's still no chance to dip into the immense number of possible addresses available in the system.

And it's not even a question of address generation speed only, but more a question of hardware, of memory hardware.
Jump to: