我们几乎每个人都知道“概率”这个概念,尤其在今天,“概率”已经在各个行业得到了广泛的应用,但是在十五六世纪时,人们还并不习惯用“概率”这个视角来衡量事物。
破解移位法和替代法的关键,就是我们每个人都知道的“概率”这个概念。
确切的破解方法,叫做“频率分析法”。这种方法其实在9世纪的阿拉伯就出现了,当时阿拉伯哲学家、数学家肯迪在他所著的《解码手册》一书中,有这样一段关于密码分析的描述:
如果我们已经知道了一份密文所使用的语言,要破解它的一种方法是找一份用同样语言写的明文,大约有一页纸的长度。然后计算其中每个字母出现的次数;把出现频率最高的字母叫作“第一”,出现频率次高的字母叫做“第二”,以此类推,直到计算完明文中所有的字母。
然后再看要破解的那份密文,同样对其中的符号做排序。我们找到出现频率最高的那个符号把它替换为上述的“第一”字母,找到出现频率次高的符号把它替换为“第二”字母,依此类推,直到替换完密文中的所有符号。
但是直到16世纪,欧洲的数学家们才注意到“概率”在指导现实生活中的重要意义。学术界普遍认为,第一个系统地推算概率的人是16世纪的意大利数学家卡尔达诺,他的另《事物之精妙》与《世间万物》两部菱,包含了大量力学、机械学、天文学、化学、生物学等自然科学与技术的知识,还有密码术、炼金术,以及占星术等内容,被誉为当时最好的百科全书。
世界上第一本概率著作就是卡尔达诺所著的《论赌徒的游戏》,从书的名字就可以看出,他研究概率的初衷,是为了在赌博中获取更高的利益。
看来做与切身利益相关的研究,往往能出更大的成果。
下面咱们说说“频率分析法”的原理。其实很简单,与肯迪在《解码手册》中所描述的方法类似,只不过样本的选择数量更为庞大。
我们的常识和统计学结果都告诉我们,英文中字母出现的频率,是不一样的。比如字母e是出现频率最高的,占11.16%;其次是a,8.5%;然后是r,i,o,t等,最少的是q,只占0.2%。

密文足够多时,字符总量也足够多,全部收集到一起,统计哪个符号出现的比例最高,那个字符大概就是字母e。
当然,有些字母出现的频率极为接近,比如r,i和o,分别是7.58%,7.54%和7.16%。但只要稍微留意字母前后的关联,就可以区分出来。比如:t几乎不可能出现在b,d,g,j,k,m,q这些字母的旁边,h和e经常连在一起,ee一起出现的频率远比aa一起出现高得多等等。
频率分析法的实质,就是大幅降低字母排列组合的可能性。
从前我们假设每个符文都可以是26个字母的任意一个,有多少个替代符号出现,就有26的多少次方种可能。但频率分析法把很多符号的可能性大大降低,有的降低为只有1种可能,有的降低为只有2-3种可能。
这样一来,即便第一步统计各种符号出现的频率时并不完全确定,但只要再根据拼写规律筛选一下,替代符号对应的真实字母就确定了。
"频率分析法“公布后,替代法就不再有效。加密一方当然不甘落败,怎么办?
很快就出现了另一种叫做“同音替代法”的方法。这种想法的终极目的,就是让每个数字出现的频率都大致相等。频率特征没有了,密码就不容易破解了。
比如说字母a可以用11,23,41三个数字替代,这三个数字翻译过来都是a。越常用的字母,比如e,就用越多的符号代替它。
不过这种方法的解密法马上也出现了,就是通过字母前后顺序关系来猜。
最典型的例子是,q后面出现的最大可能是u,而q又是一个不常用的字母,有很大概率猜出来。其他字母猜出来的难度大一些,但只要肯花时间,总能破解。
下一次,我们通过两个故事,了解一下加密与解密双方在对抗中的残酷。
往期文章:
本人是官方授权简书会员推广专员,点击会员专属通道成为简书会员,您将会获得简书钻奖励及诸多权益!
网友评论