密码术可以大致别分为两种,即易位和替换,当然也有两者结合的更复杂的方法。在易位中字母不变,位置改变;替换中字母改变,位置不变。
将替换密码用于军事用途的第一个文件记载是恺撒著的《高卢记》。恺撒描述了他如何将密信送到正处在被围困、濒临投降的西塞罗。其中罗马字母被替换成希腊字母使得敌人根本无法看懂信息。
苏托尼厄斯在公元二世纪写的《恺撒传》中对恺撒用过的其中一种替换密码作了详细的描写。恺撒只是简单地把信息中的每一个字母用字母表中的该字母后的第三个字母代替。这种密码替换通常叫做恺撒移位密码,或简单的说,恺撒密码。
尽管苏托尼厄斯仅提到三个位置的恺撒移位,但显然从1到25个位置的移位我们都可以使用, 因此,为了使密码有更高的安全性,单字母替换密码就出现了。
如:
明码表 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密码表 Q W E R T Y U I O P A S D F G H J K L Z X C V B N M
明文 F O R E S T
密文 Y G K T L Z
只需重排密码表二十六个字母的顺序,允许密码表是明码表的任意一种重排,密钥就会增加到四千亿亿亿多种,我们就有超过4×1027种密码表。破解就变得很困难。
如何破解包括恺撒密码在内的单字母替换密码?
方法:字母频度分析
尽管我们不知道是谁发现了字母频度的差异可以用于破解密码。但是9世纪的科学家阿尔·金迪在《关于破译加密信息的手稿》对该技术做了最早的描述。
“如果我们知道一条加密信息所使用的语言,那么破译这条加密信息的方法就是找出同样的语言写的一篇其他文章,大约一页纸长,然后我们计算其中每个字母的出现频率。我们将频率最高的字母标为1号,频率排第2的标为2号,第三标为3号,依次类推,直到数完样品文章中所有字母。然后我们观察需要破译的密文,同样分类出所有的字母,找出频率最高的字母,并全部用样本文章中最高频率的字母替换。第二高频的字母用样本中2号代替,第三则用3号替换,直到密文中所有字母均已被样本中的字母替换。”
以英文为例,首先我们以一篇或几篇一定长度的普通文章,建立字母表中每个字母的频度表。
在分析密文中的字母频率,将其对照即可破解。
虽然设密者后来针对频率分析技术对以前的设密方法做了些改进,比如说引进空符号等,目的是为了打破正常的字母出现频率。但是小的改进已经无法掩盖单字母替换法的巨大缺陷了。到16世纪,最好的密码破译师已经能够破译当时大多数的加密信息。
局限性:
短文可能严重偏离标准频率,加入文章少于100个字母,那么对它的解密就会比较困难。
而且不是所有文章都适用标准频度:
1969年,法国作家乔治斯·佩雷克写了一部200页的小说《逃亡》,其中没有一个含有字母e的单词。更令人称奇的是英国小说家和拼论家吉尔伯特·阿代尔成功地将《逃亡》翻译成英文,而且其中也没有一个字母e。阿代尔将这部译著命名为《真空》。如果这本书用单密码表进行加密,那么频度分析破解它会受到很大的困难。
一套新的密码系统由维热纳尔(Blaise de Vigenere)于16世纪末确立。其密码不再用一个密码表来加密,而是使用了26个不同的密码表。这种密码表最大的优点在于能够克制频度分析,从而提供更好的安全保障。
[密码学]恺撒密码
最新推荐文章于 2023-10-14 20:41:37 发布