BBC Micro软件公司面临复制浪潮:像Disc Duplicator 3这样的通用复制程序使大多数受保护的软盘易于克隆,因为奇特的保护通常只是意味着不寻常的扇区,专用复制程序可以用标准控制器复制出来。位于英格兰西部的Western Security Ltd是一家由George Keeling创立的小公司,希望找到普通家用电脑可以制作但普通驱动器无法复制的保护方法。

他们的答案,即所谓的'指纹'技术,归功于Bill Cawley,它把磁盘的模拟物理特性变成了秘密。格式化时在每个磁道中填充填充字节,能填充多少取决于进行格式化的驱动器的确切速度,而每个驱动器的速度都有差异。Western Security格式化每张磁盘后,测量1至8磁道的长度,然后将该磁盘的期望长度表写入第9磁道的加载程序中,并埋藏在多层自修改和混淆代码下。

加载时,游戏读取所有完整磁道,并要求8个测量长度中有7个或8个落在存储表的±1字节范围内——这种容差让真盘在任何驱动器上通过,同时拒绝任何在其他地方克隆的磁盘。该方案在BBC Micro的两个控制器系列上完全通过不同的代码路径运行,八个指纹磁道看起来完全正常:正确的扇区,无异常时序,分析工具不会发现任何异常。

复制失败是因为磁道长度不是数据:复制驱动器以自身速度旋转时会写入微有不同的长度,即使当时的专用复制硬件也难以达到字节完美匹配。同一游戏的两份原始拷贝具有不同的指纹,确认每张磁盘在母版阶段都个性化。在2020年对几乎所有受保护的BBC Micro软盘进行审计时,安全研究员Chris Evans称这是他发现的最强大的保护——使重新创建成为困难的步骤,而非写入。

让每张软盘的驱动器速度指纹成为其自身密钥

制作成本几近于零:正常格式化即可产生指纹,出版商无需特殊母版机或特殊写入图案。

指纹对检查不可见:受保护的磁道是普通扇区,分析工具和复制软件看不到任何需要绕过的异常。

其他驱动器无法重现:磁道长度记录了格式化驱动器的主轴速度,克隆需要来自同速旋转驱动器的字节完美长度。

容差确保真盘正常工作:±1字节且7/8通过率吸收了不同驱动器和控制器的读取模拟噪声。

每张磁盘独一无二:格式化后为每张磁盘生成预期的长度表,因此没有可供破解者一次性窃取的主表。

当复制成本低时,应基于一种在创建时几乎免费但几乎无法复制的模拟属性进行验证:使重新创建成为困难步骤,而非写入。

创始人George Keeling后来表示该系统不够可靠,Sherston程序员Simon Hosler回忆说随着磁盘驱动器不断变化,它变得很麻烦;Phantom Combat甚至附有贴纸警告仅支持Acorn磁盘ROM。现存磁盘日期介于1985至1986年,该计划随BBC Micro时代一起消退。几十年后,安全研究员Chris Evans在审计几乎所有受保护的BBC Micro软盘时,称这是他发现的最强大的保护,也是他所见过的最巧妙的软盘保护,Keeling在评论中确认了该计划。

从这里,追溯依据

参考来源

  1. The cleverest floppy disc protection ever? Western Security Ltd. scarybeastsecurity.blogspot.com
  2. The cleverest floppy disc protection ever? Western Security Ltd. (Hacker News discussion) news.ycombinator.com