Can you prove that there is no hash function that is not vulnerable? If anything man-made is vulnerable, then there cannot any invulnerable system. That is what you need to prove to win the argument. And if we can prove that any system is unbreakable, you are wrong.
If anything, the opposite thing is true. Each of the MD4, MD5, and SHA1 results are essentially exploits of design weaknesses: iteration insufficiency, too much traceable control over state given message words, weak and linear message schedules.
In the history of hash cryptanalysis, we continuously get better at exploiting these kinds of weaknesses, successfully exploiting differential analyses with smaller and smaller windows of opportunity (which is why SHA1 was such a big deal). But in the same way that you can foreclose entirely on a SQLI with parameterized query, or a memory corruption vulnerability with automatic bounds checking, you can also just make the message schedule (not understood in the era of MD4 to be that big a hinge point) strong and nonlinear.
It is very unlikely that the future of CS holds some reliable way to defeat bounds checking, and, for the same reason, you can find cryptographers like JP Aumasson (a coauthor of BLAKE and BLAKE3, with no particular reason to stan the older NSA construction) saying we're unlikely to break SHA2... ever.
- Why a collision?
> Because man made SHA-2, so it must be breakable. I don't dispute that there are systems humans make that are breakable (that would be weird given my career).
Thus implying there are man-made systems that are not breakable, and furthermore SHA-2 is one of them.
> I haven't discarded any date.
Going back so quickly?
“That will never happen” and “I think I’ll die before that happens” aren’t interchangeable. Hydrogen will never have two protons, SHA-2 will be broken. “I personally don’t consider a future where I’m not around as existing” is like busting out an Uno reverse card when you lose a hand at poker
That’s not really a rebuttal to the notion that everything is impermanent, that supports it.
Anyway a wizened crone told me I’ll die on 11 September 2098, so let’s give me two weeks to gloat. Two weeks before that date. I will bet you that it happens on or before that date. Props for taking the over that no collisions of SHA-2 will happen before then
The reason a bet on this would need a date other than "ever" is because if one side of the bet can't be resolved until infinite time has passed, it just doesn't make any sense.