在YouTube上,[The Modern Rogue]制作了一段有趣的视频,展示了一种名为Réglette的类似计算尺的加密设备。这是维吉尼亚式密码的硬件实现,技术术语称为手动多表替代密码。该设备无需电池,完全防水,日光下可读且便于携带,如果在世界大战期间的泥泞战壕中使用会非常实用。显然,因为它是个计算尺。
那么这种密码如何工作?“多表”部分意味着需要密钥短语,这确实是所有参与方需要首先商定的内容。其次,需要一个数字作为参考点。从视频中可以看到,设备的滑动部分包含字母表、数字和一个特殊符号。主体有两组数字序列,间距与中央滑动部分相同。还需要第二个滑动部件副本,可插入第一个单元后方。这个副本在存放时巧妙收纳在主体下方。
对每个消息字母,查找对应的密文数字,然后将滑动器移动到密钥短语的下一个字母。
加密过程首先将(可变长度)密钥短语的起始字母与参考数字对齐。接着编码明文的第一个符号(即要加密的内容)。只需在滑尺上查找字母并读取旁边的任意一个数字。随机选择左侧或右侧数字组能通过增加熵来增强密码强度。该数字即成为密文(要发送给接收者的内容)的第一个符号。接着处理明文的下一个符号:将密钥短语的后续字母与参考数字对齐,查找消息中对应的字母,并发送后续数字。当密钥短语字母用尽时,循环回到开头重复此过程。
前面提到的特殊符号并非“空白”,而是用于在现有设置下重新传输新参考数字的控制符号。要更改参考数字时,先编码并发送空白字符,再发送最新参考数字。当接收端收到空白符号时,将后续代码作为参考数字,并将密钥短语位置重置指向首字母重新开始循环。很简单对吧?有效吗?按现代标准并不算,但在计算能力有限的时代(即纸笔或最多机械计算器),它足以满足几十年的某些使用需求。
为何说它类似维吉尼亚密码?实际维吉尼亚密码将字母映射到其他字母,而Réglette使用随机选择的数字增加熵,还包含允许在消息中途更改密码参数的控制代码。这使得它更难被攻击;原始维吉尼亚密码在几个世纪内都被视为顶级密码术。
如果您想在家实践并学习其他简单密码,可以查看这个链接。古代的国王和王后经常使用密码术,包括著名的苏格兰玛丽女王。当然,我们无法在密码术文章中不提及恩尼格玛机。这里有一个用麦卡诺搭建的版本!
感谢[Stephen]的提示!