6 comments

[ 3.3 ms ] story [ 26.7 ms ] thread
[flagged]
(comment deleted)
2^80 is about 10^24, which is a trillion trillion, not a billion trillion. So their estimate of a chance of a collision is off by a factor of 1000.
Yeah otherwise there would be a bout a 1 in a thousand chance of a collision occurring when growing from 1B to 2B objects, right?
The odds of a birthday paradox collision on a good 160 bit hash are indeed low enough that it is way beyond anything we have to care about...but it is not completely inconceivable that Earth could reach a point where we might want to be concerned.

Estimates are that we'll peak at around 10 billion people. Say we solve our energy problems and climate problems and eventually reach a stable civilization of that size, where everyone is well off and has plenty of electronic devices doing massive amounts of data processing and communication, so on average everyone needs something hashed every millisecond.

The civilization will be generating around 3 x 10^20 hashes per second. Here's how long they will typically go between collisions, in years, for hash sizes of 160, 224, 256, 385, and 512: 4000, 2 x 10^13, 10^18, 2 x 10^37, and 4 x 10^56.

Every 4000 years is still pretty good, but that assumes that they don't have significant growth in their needs. They might want to bump it up to 224 bits.

224 bits would even be OK for a much bigger civilization, say beings that live in the upper atmosphere of a Jupiter-sized gas giant where they would have 1000 times as much room as we have on Earth. Say they have a population of a trillion, and they have a lot more communications and data processing going on so each being on average needs a hash every microsecond.

With 160 bits they would have around 26 collisions per year. With 224 bits they have one around every 200 million years. 256 bits would habve one every 10^13 years.