Piligrim
Newbie
Offline
Activity: 14
Merit: 0


May 28, 2011, 06:16:32 AM 

Every time there is a transaction an address is generated, and it remains valid. VISA network is said to be currently processing 2000 transactions per second. At this rate will the bitcoin addresses ever run out? Or start duplicating? Either way, I am just trying to find out if this is one of the system constraints. Thank you.








Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.




theymos
Administrator
Legendary
Offline
Activity: 2968
Merit: 2642


May 28, 2011, 06:50:55 AM 

There are 2^{160} possible addresses, which is a ridiculous number. If every person on Earth makes ten addresses per second for 20 years (2x10^{18} total addresses), then the probability that at least two of these addresses collide is about 1.57x10^{12}.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD



markm
Legendary
Offline
Activity: 2002
Merit: 1000


May 28, 2011, 07:22:38 AM 

Possible domain names are actually even more numerous than possible bitcoin addresses, aren't they? Or about the same maybe?
So bitcoin addresses that actually print out as some cool intelligible string might well be as limited a resource as domain names, though discovering a private key giving you the actual use of such a possible address presents a challenge even more difficult than mining blocks.
MarkM




norn
Jr. Member
Offline
Activity: 32
Merit: 0


May 28, 2011, 08:58:56 AM 

There are 2^{160} possible addresses, which is a ridiculous number. If every person on Earth makes ten addresses per second for 20 years (2x10^{18} total addresses), then the probability that at least two of these addresses collide is about 1.57x10^{12}.
There are a lot of address, it's true. But difficulty of generating one address is the same as calculating one hash. What if somebody starts to generate address using OpenCL with speed of 4 Ghashes? This guy can get 345600000000000 of addresses every day. 63072*10 ^{12} per year... This is relatively slow, but remember  address is a limited resource. What if there are 1000000 people? What if in 10 years we can calculate 10 Thashes/sec easily?

Good talkers are not good doers.



theymos
Administrator
Legendary
Offline
Activity: 2968
Merit: 2642


May 28, 2011, 09:05:25 AM 

But difficulty of generating one address is the same as calculating one hash.
No: you also have to generate an ECDSA public key, or else the address is useless. Bitcoin also hashes the public key twice.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD



zef
Member
Offline
Activity: 90
Merit: 10


May 28, 2011, 09:34:28 PM 

Addresses are a 160 bit number(hashed from a hash of a public key), but only a fraction of those possibilities are wellformed, ie many numbers will never be reached by the hashing function. This means that the space of valid addresses is smaller than 2^160. By how much, I don't know, but if you are doing calculations based on 2^160, those results are probably incorrect.
With that said, private keys are based on a 256 bit number, these are the numbers you would probably want to be generating to create key collisions. Much bigger search space, and even if not every number is a well formed address, you could lose 100 bits and still be extremely secure from what i've read, along the lines of what previous posters have said.
Please correct me if I'm wrong about any of this, I am not an expert by any means.




grue
Global Moderator
Legendary
Offline
Activity: 2086
Merit: 1128


May 28, 2011, 10:26:41 PM 

There are 2^{160} possible addresses, which is a ridiculous number. If every person on Earth makes ten addresses per second for 20 years (2x10^{18} total addresses), then the probability that at least two of these addresses collide is about 1.57x10^{12}.
There are a lot of address, it's true. But difficulty of generating one address is the same as calculating one hash. What if somebody starts to generate address using OpenCL with speed of 4 Ghashes? This guy can get 345600000000000 of addresses every day. 63072*10 ^{12} per year... This is relatively slow, but remember  address is a limited resource. What if there are 1000000 people? What if in 10 years we can calculate 10 Thashes/sec easily? they'll make more money by mining.




Piligrim
Newbie
Offline
Activity: 14
Merit: 0


May 29, 2011, 02:30:02 AM 

they'll make more money by mining.
This is not about money. This is about a potential flaw in bitcoin architecture that would allow one organization or entity to suppress it. And so far I am not convinced, because with the finite numbers it's just a matter of technology. How feasible is that? Well, we have to get our algebra straight.




theymos
Administrator
Legendary
Offline
Activity: 2968
Merit: 2642


May 29, 2011, 02:47:11 AM 

The size of addresses can easily be increased later on. No changes to the protocol would be required. For now 2^{160} seems plenty.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD



norn
Jr. Member
Offline
Activity: 32
Merit: 0


May 29, 2011, 04:30:40 AM 

The size of addresses can easily be increased later on. No changes to the protocol would be required. For now 2^{160} seems plenty.
good news then

Good talkers are not good doers.



