Remix.run Logo
lightedman a day ago

"y'all are black pilled about computers and security. You believe, incorrectly, that computers can't be safe AND secure AND easy to use all at the same time"

This is basic fact. Man can make it; man can break it. I've never come across anything in my 44 years of life where this wasn't true.

tptacek a day ago | parent | next [-]

OK, produce a SHA-2 collision.

javcasas a day ago | parent | next [-]

Why a collision? Abuse it where it is being used. Infect the chain of certificates that guarantees that the hash you are checking is actually the one you want. Send a million legit documents with bad hashes, so that the forged one looks like another legit one. Infect the library that calculates hashes so that these specific documents have a special hardcoded hash.

tptacek a day ago | parent [-]

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).

javcasas a day ago | parent [-]

Well, if you are that picky, then you will have to wait. MD5 was created in 1991, the first collision was found in 2004.

tarpitt 8 hours ago | parent | next [-]

Okay, so you are saying that there may be a design flaw we just haven't seen yet, based on historical precedent. Which is a very weak argument, because you are just making the case for the possibility that you may be correct, and you are just pointing to a historical precedent.

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.

tptacek 6 hours ago | parent [-]

One frustration I have with these kinds of analyses on HN is that they're premised on an idea that cryptanalysis progress is unknowable, and that it's just a matter of time before whatever broke the last iteration of a design is going to break the next iteration of a design. As if cryptanalysis is so complex and forbidding that you might as well think of it as a geological-scale weather phenomenon.

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.

tptacek a day ago | parent | prev [-]

You want to pick a date and make a bet?

javcasas a day ago | parent [-]

You are the one discarding every date. I'll take the opposite bet: it will eventually happen, on some date.

tptacek a day ago | parent [-]

I haven't discarded any date. Pick one, and an amount to bet!

javcasas a day ago | parent [-]

> OK, produce a SHA-2 collision.

- 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?

tptacek a day ago | parent [-]

I'm sorry, you've lost me. I was responding to the claim that any man-made system was breakable. The most obvious example of a man-made system that is unlikely to be breakable in our lifetimes (so, I'll say, "ever") is SHA2. Then someone responded that SHA2 wasn't an interesting target. It doesn't have to be; it just has to be man-made, or concede the narrowing of the original claim.

BoingBoomTschak 15 hours ago | parent | next [-]

[flagged]

jrflowers 18 hours ago | parent | prev [-]

lmao at substituting “ever” for “in our lifetimes”

“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

tptacek 10 hours ago | parent [-]

This objection doesn't make sense in the context of the thread.

akerl_ 9 hours ago | parent [-]

I wonder when Kalshi will start offering bets where one side doesn’t pay out until the end of the universe.

a day ago | parent | prev | next [-]
[deleted]
a day ago | parent | prev [-]
[deleted]
kibwen a day ago | parent | prev [-]

> Man can make it; man can break it.

Man can make mathematical proofs that will not be broken. Man is not going to disprove the Pythagorean Theorem. Software is just hifalutin math. There can exist software that, for a given mathematical specification, can be proven correct, and will not be disproven.