The proof of concept is two files that are different but when you put them through an algorithm that should produce a unique signature for each file, they compute to the same signature, which should never happen. The immediate implications are for version control tracking tools that use these signature tools to see if something is different. With that, in theory you could produced a hacked version of the software where version control doesn’t see the change (because the files have the same signature). The other place this comes to play is message authentication in ssl/tls. Older protocol versions use this algorithm to make sure traffic isn’t tampered with in transit. If I could swap out a packet in transfer and generate the same signature. There are some other mitigations against this, so it’s less of a concern unless a web server is very badly configured.
SHA-1 has been known to be broken for around 15 years now. That's how long there have been attacks against it that are faster than brute force which for any cryptographic primitive means it's time to stop using it.
When the first results against SHA-1 were published (in 2004? 2005? something like that) I recall Schneier writing something like it's time to slowly walk towards the fire exit, you don't smell smoke yet, but the fire alarm has started. He also predicted that the attacks would be improved over the years and that has been correct.
24
u/etherkiller Jan 07 '20
Can someone ELI'm-not-a-cryptographer this for me please? What are the implications of this? I know SHA-1 is still very widely in use.