What did Google's Shattered project demonstrate?
It produced two materially different PDFs that produced the same SHA-1 hash, proving a practical collision and showing SHA-1 was no longer collision-resistant in practice.
Video Summary
Google and CWI produced two different PDFs with the same SHA-1 hash, proving a practical collision.
The Shattered attack cost roughly $110,000 (6,500 CPU years / 110 GPU years) and took about nine months in real time.
Researchers used differential cryptanalysis and structured inputs to shortcut brute-force collision searching.
SHA-1 was already weakened; the collision made it unsafe for signatures, certificates, Git, and other integrity uses.
Migration is recommended (e.g., SHA-256), but legacy systems and slow updates keep SHA-1 in circulation.
It produced two materially different PDFs that produced the same SHA-1 hash, proving a practical collision and showing SHA-1 was no longer collision-resistant in practice.
The attack required about $110,000 of compute, equivalent to ~6,500 years of CPU time and ~110 years of GPU time, compressed into around nine months using parallel Google-hosted hardware.
They used differential cryptanalysis and crafted inputs that exploited how small changes propagate through SHA-1, creating two files with a shared prefix that diverged to collide.
Many legacy systems, internal networks, and long-lived software are costly and risky to update, so organizations often delayed migration even after standards bodies deprecated SHA-1.
Systems relying on SHA-1 for signatures or object identity—like certificate authorities, OpenPGP key infrastructures, and Git repositories—faced risks of forgery or undetected tampering.
Move to stronger hash families such as SHA-2 (e.g., SHA-256); the video and researchers advise immediate migration where feasible.
"On February 23rd, 2017, Google published two PDFs that, when hashed using SHA-1, the algorithm claimed were identical."
Google demonstrated a serious flaw in the SHA-1 hashing algorithm by publishing two different PDFs that produced the same hash. This is known as a hash collision and was previously thought to be nearly impossible to create.
The SHA-1 algorithm was commonly used for securing software installations and the integrity of documents, but it was rendered unreliable due to this discovery, leading to a significant concern in the cybersecurity community.
Google's security team collaborated with researchers from CWI Amsterdam, and they aptly named the project "Shattered" due to the implications of the breakthrough.
"The Hacker News thread for the announcement racked up nearly 500 comments with developers dissecting the math and warning each other to stop trusting SHA-1."
The news of SHA-1's vulnerability sparked extensive discussion among developers, showcasing the urgency and gravity of the situation. Many shared their concerns about previously implemented systems that still relied on SHA-1 for security.
Bruce Schneier, a notable figure in cryptography, affirmed that the result was anticipated and has long been warned about, having called SHA-1 broken since 2005.
"The attack only took about $110,000 worth of compute, split across 6,500 years of CPU time and 110 years of GPU time."
Although the resources required seemed extensive, the time was compressed significantly using advanced computing distributed across various locations, allowing the actual execution of the attack to be completed in around nine months.
The existence of a feasible collision attack represented a serious threat, as it demonstrated the possible exploitation of SHA-1 by attackers with adequate funding.
"Hash functions must be collision resistant—it's practically impossible to find two different inputs that produce the same output."
A secure hash function must exhibit four critical properties: determinism, speed, unidirectionality, and collision resistance. If any of these properties are compromised, the function's security is at risk.
Understanding these properties is crucial for anyone involved in software engineering, as they dictate how data integrity is maintained in various applications, from file downloads to version control systems.
"The main takeaway of the project is very simple: Stop using SHA-1."
Researchers cautioned against the continued use of SHA-1 in production systems, emphasizing the urgency for developers to transition to safer cryptographic hashes. The evidence of the vulnerability prompted discussions about the need for immediate migration to more secure alternatives.
They recommended adopting stronger cryptographic methods to avoid similar vulnerabilities and enhance overall internet security.
"Collisions are incredibly improbable but not impossible."
SHA-1 can produce hash collisions because it has a finite number of output possibilities, while the inputs are practically infinite.
The pigeonhole principle implies that with more inputs than outputs, some inputs must result in the same hash output.
Cryptographers originally claimed that finding a collision in SHA-1 would be astronomically expensive, suggesting that the effort would take longer than the lifespan of the sun.
In practice, for a 160-bit hash, brute-force attempts require an overwhelming number of hashes to be computed, making collisions seem practically unattainable.
"The Shattered team found a shortcut."
The Shattered team’s advancement was achieved through a method called differential cryptanalysis, which focuses on how minor input changes propagate through the hash functions to produce collisions.
Instead of random searching, they identified specific input changes that could effectively nullify each other’s effects.
The process involved creating two files that shared a prefix and diverged with calculated data to lead to the same final hash.
"Anyone with serious money can plausibly engineer a SHA-1 attack."
The financial cost for crafting a collision in SHA-1 approximated around $110,000, making it a realistic endeavor for well-funded individuals or organizations such as intelligence agencies.
The risks associated with SHA-1 remained significant, as attackers need only financial resources and time to execute potentially harmful attacks.
"Cryptographic algorithms age and often become obsolete."
Cryptographic algorithms are not static; they undergo a lifecycle of being deemed secure, questionable, and ultimately obsolete as technology evolves.
SHA-1 started being deemed unsafe long before the Shattered attack, with earlier theoretical attacks reducing its collision strength significantly.
Key moments, like NIST's formal deprecation of SHA-1 for digital signatures in 2011, marked a significant turning point in its trustworthiness.
"Transitioning from SHA-1 requires considerable effort and time."
Moving to more secure alternatives like SHA-256 is essential; however, it poses substantial challenges, especially for large organizations with extensive legacy systems.
Major systems, such as Microsoft’s, took years to fully switch away from SHA-1 and faced real implications for users who had not implemented necessary updates.
The public internet experienced a more rapid shift, where browser makers enforced the deprecation through security warnings, unlike other private or intranet systems which often lag behind in security standards.
“These places run software written in the 1990s on hardware nobody wants to touch because they can't afford for it to stop working.”
Many crucial sectors, such as banks, government agencies, and hospitals, rely on outdated software and hardware, posing a significant risk due to their dependency on security protocols that are no longer considered safe.
The maintenance of this legacy software is often in the hands of system administrators who lack expertise in cryptography.
Despite plans for migration, many teams have postponed updates for years, leaving them vulnerable to security threats arising from outdated protocols.
“In January of 2020, three years after Shattered, two cryptographers proved the attack had gotten even cheaper.”
In early 2020, cryptographers published a paper titled "SHA-1 is a Shambles" which demonstrated an even more cost-effective method to exploit SHA-1.
Gaëtan Leurent and Thomas Perrin successfully created colliding SHA-1 certificates using rented GPU time, highlighting the diminishing security of SHA-1.
The implications of this vulnerability are profound, especially for systems relying on SHA-1 for identity verification, like GPG, which is widely used by journalists and activists.
“Forge the right certificate and you can impersonate someone inside that trust graph.”
The GPG system, built on a web of trust, allows users to sign each other's keys, making it vulnerable to impersonation if SHA-1 certificates can be forged.
Git also faces a significant threat since it uses SHA-1 hashes to identify every object in a code repository, meaning a collision could allow malicious code to be swapped without detection.
GitHub quickly addressed the issue by implementing a SHA-1 collision detection feature, demonstrating the urgency of the problem.
“Cryptographers do not think a practical SHA-256 break is close, but close in cryptography is often measured in decades.”
While SHA-2, particularly SHA-256, is currently the standard, there remains a challenge in fully migrating away from SHA-1, with remnants of SHA-1 still present across various systems.
The history of algorithmic vulnerabilities shows a slow progression in adopting safer standards, as seen with MD5, which lingered in use well after it had been compromised.
Users are advised not to panic but should maintain an understanding of the cryptographic tools they trust, as security risks are pervasive and evolving.