密码学的历史 (4) — 阿拉伯的密码分析者
按照凯撒的加密方法, 有多少种密钥可以被使用呢? 我们可以通过统计每一种可能的情况计算出来. 首先我们从26个字母中选出一个字母用来替换明文中的字母a, 然后再从剩下的25个字母总选择另外一个, 用来代替字母b; 这一以来 仅仅单是替换 a和 b我们就有 26*25 = 650 种替换方式. 如果我们把明文中的的每一个字母都用另外一种字母或者符号替换掉, 那么我们可以采取的方案将有:
26*25*24*23…*3*2*1 = 26! = 403291461126605635584000000
也就是说, 对于哪些试图采用穷举法找出密钥的人. 如果他们每秒能检测100万个密钥, 那么检查完所有的密钥则需要 1013 年. 宇宙的生命也只不过才有 1010 年而已. 那么有没有一种高效的方法, 破解凯撒的密码呢?
公元前的很多学者都认为替换加密是无法被破解的, 而且几个世纪以来, 事实似乎也证明了这一点. 但是
你的对手总是会使用他们所掌握的最佳的策略来击败你, 而不是你认为他们会使用的策略. 所以一个加密系统的安全性取决于目前 已知 的最佳方法. 因此随着各种技术的发展, 原有的加密系统的安全性只会越来越差, 而不是越来越好
因此破解者们最终会发现一条寻找密钥的捷径, 而不是花上数亿年来测试各种可能的情况. 在东方, 人们取得了突破性的进展, 使得破解凯撒密码只用花上几分钟的时间. 当然这种突破性的进展和当时人们在语言学, 统计学和数学上取得的杰出成就是分不开的
单字母置换加密(明文中的每个字母只被一种符号替换), 几千年以来被认为完美无缺的加密体系, 最终被阿拉伯的学者所破解. 也正是他们, 发明了频率分析法 — 一种无需得到密钥而解读密文的科学.
如果一个文明没有在数学 统计学 和 语言学上发展到一定的高度, 那么频率分析这门科学变不会出现. 穆斯林文明, 给频率分析提供了一个绝佳的发展空间. 因为当时的伊斯兰教试图了解人类活动的方方面面. 为了达到这一目的, 大量的 ilm(阿拉伯语: 知识) 是必不可少的. 每个穆斯林都被责成尽自己所能, 为教会提供各种形式的知识; 而当时的阿拔斯王朝在经济上取得的空前成功也为阿拉伯的学者们在时间,金钱,物质上提供了强力的支持. 公园185年阿拔斯·麦蒙更是开展了阿拉伯和世界历史上著名的百年翻译运动.在首都巴格达 他将父亲所建的图书馆加以扩建, 并命名其为智慧馆. 来自埃及 巴比伦 印度 中国 波斯 叙利亚 亚美利亚 和 希伯来的各种文献被源源不断的运送到巴格达的智慧馆并被翻译成阿拉伯文.
正是这样一项浩大的工程, 使得阿拉伯的学者们发现了语言中的一些规律. 如果你很擅长英文拼词游戏, 那么你一定会有这样的经验: 在英文单词中, 字母O经常成对出现; 字母Q后面一定跟着字母U; E 和 T 这类字母的出现次数远高于字母 Q 或 Z. 阿拉伯的密码分析者们也有相同的经历. 他们发现阿拉伯语中的字母a 和 l出现的频率最高, 也许是因为al-在阿拉伯语中是一个常用的词缀吧. 而这一发现, 使得破解置换加密成为可能.
2010年04月11日 星期日 on 03:35下午
trillions of calculations per second, you think will
break any known code or cipher in minutes. Cray 4
super computers.