How id Software's 1996 Quake Unlock Scheme Fell to Security-by-Obscurity
In 1996, id Software packed its Quake shareware CD with encrypted copies of its entire back catalog — DOOM, Hexen, Heretic and more — betting that gamers would call an 800 number, pay by credit card, and receive an unlock code to ‘renature’ any title on the disc. The copy protection came from TestDrive Corp, which ‘denatured’ each executable by replacing its first 32 KiB with a disabling header and encrypting the original. On paper the design looked sound: a per-run CHALLENGE code rotated every five minutes to defeat replay attacks, checksums guarded against phone-line transcription errors, and only the paid SERIAL was supposed to yield the secret seed needed to restore a game.
The fatal flaw was that the SERIAL carried no secret at all — it was merely proof of payment. The unlock program shipped on the CD (FLOW.EXE) could compute the correct SERIAL locally from the CHALLENGE and simply compared it against whatever the user typed. That meant the entire mechanism rested on obscuring an algorithm that lived right there on the disc. The hacker group GNOMON reversed it in 39 days, shipping QCRACK.EXE to generate valid SERIALs on demand; the full CHALLENGE-to-SERIAL pipeline (a chain of table lookups, XOR walks, and a hard-coded ‘Testdrive Corp.’ string) was fully documented by 2016.
The episode became a costly lesson in both cryptographic design and retail logistics. With the shareware cracked and order fulfillment spiraling, id pulled the experiment and was left with roughly 150,000 unsold CDs in a warehouse. Beyond the nostalgia, it’s a clean case study in why client-side validation and secrets embedded in shipped binaries are not protection — a principle that still catches software vendors three decades later.
Read the full article
Continue reading at Hacker News →This is an AI-generated summary. Read the original for the full story.