1996年《雷神之锤》光盘加密方案39天被破解,id Software停售积压15万张库存

1996年8月30日,id Software正式发售一张售价9.95美元的《雷神之锤》(Quake)共享光盘。该光盘利用640MiB容量中的剩余空间,除《雷神之锤》体验版外,还收录了《毁灭战士》多个版本、《异教徒》《毁灭巫师》等游戏。当时互联网尚未普及,玩家如需解锁完整游戏,要拨打“Quake Unlock Center”电话,提供解锁程序生成的11位验证码并完成电话支付,客服再给出解锁码。

1996年《雷神之锤》光盘加密方案39天被破解,id Software停售积压15万张库存

这一方案很快失效。1996年10月8日,黑客组织GNOMON发布名为QCRACK.EXE的工具,能根据11位验证码直接生成有效序列号,用户无需付款即可解锁全部游戏。从发售到破解仅间隔39天。谷歌软件工程师Fabien Sanglard后来在博客中通过逆向分析指出,这套系统的安全依赖保密,而光盘中的解锁程序本身就包含生成序列号所需的数据。验证码会被拆分为游戏ID和索引参数,程序结合光盘内硬编码数据即可计算出序列号,整个过程不需要连接id Software服务器。

除核心加密被绕过外,这张光盘还有其他问题。《Final Doom》的SKU.17文件把游戏名错误记录为大写“Final”,程序实际需要小写“final”,导致付费用户无法正常获得解锁码;光盘中同时存在明文SKU.TXT与加密文件,文件库格式也未真正加密或混淆。破解工具公开后,继续销售这套光盘已无意义,id Software选择停售,留下约15万张CD-ROM库存。此事也反映出上世纪90年代软件厂商在在线授权尚未普及时的保护困境:授权逻辑和必要数据常被直接放入本地软件,一旦被逆向分析,保护机制就容易被绕过。