Hacker News new | ask | show | jobs
by blumentopf 3591 days ago
Birthday paradox.
4 comments

While that 64-bit value would be just as likely to occur as any other if randomly chosen, any competent programmer is going to recognize a very strong pattern in that value's binary representation that makes it much more likely to have been chosen with intent. In fact, the pattern is so strong, there's a chance that the appearances of the value in two places is simply a coincidence.
Specifically, in C, it's

  (0x01234567uLL + 0x55555555 & 0x77777777) * 0x200000002 + 0x11111111
Yes, googling for the 32-bit parts of that 64-bit hex value gets me two distinct hits:

2015:

http://www.ijirst.org/articles/IJIRSTV1I9059.pdf

and 2013:

https://www.halowaypoint.com/en-us/forums/d76f090378914a9bb8...

Still, the string (instead of the binary values) is somewhat less probable than this to be an accidental match.

Suppose the ace02468bdf13579 is a random hex string. That's 8 bytes of data, or 1/2^64 to get that specific value. With the birthday paradox, that only gets you down to 1/2^32 or one in 4 billion chance. Not happening.
Well, if the string was a widely occuring one (say, because it's useful in some coding task, etc.) you might expect it to turn up a few times in a google search for occurrences prior to Aug 1 2016.

But, apparently not: https://www.google.com/search?q=ace02468bdf13579&client=fire...

Lol the chances of a collision are still too low.