加密学基础:安全性评估

本文介绍了加密技术的基本概念及其安全性评估,重点讨论了历史上著名的凯撒密码及其被频率分析破解的案例,以及现代加密技术中密钥大小对安全性的影响。

这是有关加密技术的更大系列文章的一部分。如果这是你遇到的第一篇文章,我强烈建议从该系列的开头开始阅读。

在我们的旅程中,我们的目标始终是尝试理解现代加密学所基于的数学基础。这本身就是一个重要的考验——毕竟,加密学是关于构建极其困难的谜题。如果我们无法理解所涉及的工具,就无法进行构建。

尽管我们在设计加密协议的方式上仍有许多需要探索的内容,但我认为现在是时候稍作旁逸斜出,将注意力转向我们尚未讨论的一个方面。让我们尝试回答以下问题:

我们迄今为止所学的方法安全性如何?

我们到底理解什么是安全?

它是如何衡量的?

在我看来,回答这个问题的最佳方式是迅速回顾一下加密学的历史。通过这样做,我们将会遇到一些可能会从一开始就危及我们方法有效性的问题,而其他问题会逐渐变得明确。

那么让我们开始回顾最开始的部分。

凯撒密码

在通信中保护数据的想法肯定不是一个新鲜事物。

历史上有尝试在古代文明中隐藏秘密信息的记录。其中一个著名的例子,也是使用加密技巧的第一个记录案例,是凯撒密码Caesar cipher),它可以追溯到公元前100年。这是一种非常简单的技术:字母表中的每个字母都被移动一定数量的位置。因此,这被归类为替代密码substitution cipher),因为每个字母都按照一套特定的规则被替换为另一个字母。

原始字符通过移动映射到新的字符

只要你知道字符移动了多少个位置,就可以解密使用这种技术加密的信息。例如,如果移动了 +3 个字母(如上图所示),那么密文“khooraruog”可以映射回原始文本“helloworld”。当然我们可以添加特定字符,但我们先保持最原始的简单方法。

一切都很好,直到有一个名叫 Al-Kindi 的人出现,并且破解了这个密码,利用了一个致命的缺陷。你能猜到是什么吗?

公正地说,差不多过去了近千年才有人提出这个利用方法,所以如果你没有想到这一点也不要太担心!

我把集体的失败算作个人的成功

破解

在任何语言中,一些字母的出现频率高于其他字母。如果我们对大量文本进行频率分析,会出现一种分布。对于英语,这种分布大致如下所示:

字母在英语文本中的出现频率

你问我们可以用这些信息做什么?好吧,如果消息恰好是一些英文文本,那么我们可以检查我们加密信息中字母的频率。而且,很可能出现频率最高的那个字母是字母E加密后的版本!

我们想一想:例如,如果字母E加密为字母P,那么可以推测P出现频率很高。这种情况发生的概率随着文本的长度增加而增加,因为字母开始重复。

这被称为频率分析frequency analysis)。而这个问题真的只归结于和我们密文有关的非均匀分布

我不记得之前是否提到过,不过密文是我们称之为加密过程输出的一种...

剩余50%的内容订阅专栏后可查看

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Frank Mangone
Frank Mangone
Software developer based in Uruguay. Math and Cryptography enthusiast.