密码学小传——凯撒密码的解密起源

简介: 密码学小传——凯撒密码的解密起源

摄影:产品经理

在我小时候,我自己研究并想出过一种加密算法。

例如,想给喜欢的女同学传递一张纸条,上面写着“我爱你”,但是如果直接传过去,纸条可能会被其他同学拦截,导致秘密泄露。

于是,我把我爱你写成拼音 wo ai ni,然后把26个字母移动几位:

  1. abcdefghijklmnopqrstuvwxyz
  2. ijklmnopqrstuvwxyzabcdefgh

这样一来, w->eo->wa->ii->qn->v,所以 wo ai ni变成了 ew iq vq。只要我喜欢的女同学也有这个对应关系,她就能把密文转换为明文。而其他人如果没有这个对应关系,就看不懂我写的是什么。

小时候对我发明的这种密码沾沾自喜,长大了才知道,这个加密算法叫做 凯撒密码,早在几千年前就已经被发明了。

今天我们来谈谈凯撒密码是如何被破解的。

故事要追溯到公园815年的阿巴斯王朝。当时的学者收集埃及、巴比伦、印度、中国等等文明的文字并翻译为阿拉伯文字。当时的神学家在研究《古兰经》的时候,想为这些天启编定年代顺序。但书上并没有写实际的年份,如何推断呢?

他们想到了一个办法:因为语言是随着历史而不断发展的,有一些词汇先出现,有一些词汇后出现。只要统计文献里面每个词的词频,那么新词多的文献,撰写的时间肯定就晚。

他们的研究粒度,不仅到单词,还到字母,于是发现某些字母,在不同的文献里面,出现的频率总是会高于另一些字母。这一个发现导致了密码分析学的第一次突破。

公元9世纪,阿拉伯哲人肯迪的伟大作品 《解译加密信息手稿》(AManuscriptonDecipheringCryptographicMessages介绍了密码分析学中的频率分析法的说明。

凯撒加密虽然改变了字母,但是并没有改变字母的频率。假设英文里面出现频率最高的字母是 e,那么使用凯撒密码把 e对应到其他字母,例如 m以后, m的在密文里面的频率就会变成最高。于是数出密文中的每个字母的频率,就可以反向推断出明文的字母。除了单个字母外,字母之间的组合也能够提供有效的信息,例如英文中 the常常一起出现,而密文里面出现了大量的 bpm,由于已经推测出了 me,那么可以进一步推测 bpm可能是 the

当然,频率分析法并不是总是有用,例如《La Disparition》这本法国小说,全书没有一个字母e,应该作家吉尔伯特·亚戴尔把这本小说翻译成了英文,也没有出现一个e。如果把这本书使用凯撒密码进行加密,那么使用频率分析法在密文里面,把频率最高的字母假设为e就会出错。


目录
相关文章
|
数据安全/隐私保护
【密码学】穴居人密码
【密码学】穴居人密码
133 1
|
Rust 算法 数据安全/隐私保护
【密码学】一文读懂XTEA加密
本篇文章,我们来看一下上一次讲过的TEA加密算法的一个升级版XTEA, 相比于TEA, XTEA的安全性显然是更高的,其中的过程要比TEA稍微复杂一点点。
1265 0
【密码学】一文读懂XTEA加密
|
6月前
|
安全 算法 数据安全/隐私保护
密码学系列之八:密码协议
密码学系列之八:密码协议
|
数据安全/隐私保护
【密码学】维京密码
【密码学】维京密码
88 1
|
数据安全/隐私保护
【密码学】密码棒密码
【密码学】密码棒密码
311 0
|
算法 数据安全/隐私保护 Python
|
算法 安全 数据安全/隐私保护
【密码学】 一篇文章讲透数字签名
数字签名(又称公钥数字签名)是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。它是一种类似写在纸上的普通的物理签名,但是在使用了公钥加密领域的技术来实现的,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名是非对称密钥加密技术与数字摘要技术的应用。数字签名可以识别消息是否被篡改, 并验证消息的可靠性, 也可以防止否认。
720 0
【密码学】 一篇文章讲透数字签名
|
小程序 网络安全 数据安全/隐私保护
现代密码学-传统密码技术(置换、代换密码)
现代密码学-传统密码技术(置换、代换密码)
853 0
现代密码学-传统密码技术(置换、代换密码)
|
算法 数据安全/隐私保护 Python
Python编程:实现凯撒密码加密解密
Python编程:实现凯撒密码加密解密
698 0
Python编程:实现凯撒密码加密解密
|
算法 数据安全/隐私保护
【密码学】一文读懂凯撒密码
之前介绍了很多现代密码学相关的知识,俗话说得好,要站在巨人的肩膀上, 因此呢,接下来聊一聊古典密码的有关知识(才不是因为我现在没素材了, 手动狗头),古典密码相比于现代密码而言,更多的是一些trick或者说文字游戏,不过其中所蕴含的思想在现代密码当中也广泛出现,本文主要给大家介绍一下凯撒密码,这个古老但是又被众人都知晓的一个古典密码。
1417 0
【密码学】一文读懂凯撒密码