密码的历史
加密通信是一个非常古老的想法。在文明史上的大部分时间里,人们都发现需要发送私人通信。对隐私的需求最初源于军事和政治需求,但已经超出了军事和政治需求。企业需要保持数据的私密性以保持竞争优势。人们希望将某些信息(例如医疗记录和财务记录)保密。
在人类历史的大部分时间里,私人通信意味着对书面公报进行加密。在过去的一个世纪里,它已经扩展到无线电传输、电话通信和计算机/互联网通信。在过去的几十年里,计算机传输的加密实际上已经变得司空见惯。事实上,您会发现计算机/互联网通信比电话或无线电更频繁地加密。数字环境使得实施特定类型的加密变得更加容易。
无论您要加密的数据的性质是什么,或者传输数据的模式如何,基本概念实际上都非常简单。消息必须以这样的方式进行更改,即任何拦截者都无法轻松读取消息,但目标接收者可以轻松解码消息。在本节中,您将研究一些历史上的加密方法。请注意,这些都是非常古老的方法,它们现在不能用于安全通信。业余爱好者可以轻松破解本节中讨论的方法。然而,它们是传达加密概念的绝佳示例,而无需包含大量数学知识,而这是更复杂的加密方法所必需的。
拓展知识:有关加密的虚假声明
正如将在本章中看到的,加密的基本概念非常简单。任何具有基本编程技能的人都可以编写一个程序来实现此处检查的简单加密方法之一。然而,这些方法并不安全,仅用于说明基本加密概念。
有时,加密新手会发现这些基本方法,并热情地尝试通过进行一些细微的修改来创建自己的加密方法。虽然这可能是一种刺激智力的练习,但也仅此而已。没有接受过高等数学或密码学培训的用户极不可能偶然发现一种对安全通信有效的新加密方法。
业余爱好者经常在Usenet 新闻组 sci.crypt 上发布声明,声称他们已经发现了最新的、牢不可破的加密算法。他们的算法通常很快就会被破解。不幸的是,有些人将这种方法实现到软件产品中,并将其推销为安全的。
一些不安全的加密方法和软件的分发者这样做是出于简单的贪婪,并故意欺骗毫无戒心的公众。其他人这样做只是出于无知,诚实地相信他们的方法更优越。评估加密声明的方法将在本章后面讨论。
凯撒密码
有记录的最古老的加密方法之一是凯撒密码。这个名字是基于这样一种说法,即古罗马皇帝曾使用过这种方法。该方法实施简单,不需要技术帮助。您选择一些数字来移动文本的每个字母。
例如,如果文本是
A cat
然后你选择移动两个字母,那么消息就变成了
C ecv
或者,如果您选择移动三个字母,则变为
D fdw
在此示例中,可以选择所需的任何换档模式。您可以向右或向左移动任意数量的空格。因为这是一种简单易懂的方法,所以它是您开始学习加密的好地方。然而,它非常容易被破解。您会看到,任何语言都有一定的字母和词频,这意味着某些字母比其他字母使用得更频繁。在英语中,最常见的单字母单词是a。最常见的三字母词是。仅了解这两个特征就可以帮助您解密凯撒密码。例如,如果您看到一串看似无意义的字母,并注意到消息中经常重复一个由三个字母组成的单词,您可能很容易猜测该单词是——并且很有可能这是正确的。
此外,如果您经常注意到文本中的单字母单词,它很可能是字母a。您现在已经找到了a、t、h和e的替换方案。现在,您可以翻译消息中的所有这些字母并尝试推测其余字母,或者简单地分析用于a、t、h和e的替代字母并导出用于该消息的替代密码。解密这种类型的消息甚至不需要计算机。没有密码学背景的人可以使用笔和纸在不到十分钟的时间内完成。
凯撒密码属于一类称为替换密码的加密算法。该名称源自这样一个事实:未加密消息中的每个字符都被加密文本中的一个字符替换。凯撒密码中使用的特定替换方案(例如,12 或 11)称为替换字母表(即,b替换a,u替换t等)。由于一个字母总是替换另一个字母,因此凯撒密码有时被称为单字母替换方法,这意味着它使用单个替换进行加密。
与所有历史密码一样,凯撒密码对于现代使用来说太弱了。此处介绍只是为了帮助您理解密码学的概念。还应该指出的是,据报道凯撒使用了向右移动三位的方法。
罗特13
ROT 13 是另一种单字母替换密码。所有字符在字母表中旋转 13 个字符。
词组
A CAT
N PNG
ROT 13 是单替换密码。这显然与凯撒密码非常相似。人们可以将其视为凯撒密码的一种特例。
阿特巴什密码
抄写耶利米书的希伯来抄写员使用了阿特巴什密码。使用起来很简单;你只需颠倒字母表即可。按照现代标准,这是一种原始且易于破解的密码。但是,它将帮助您了解密码学的工作原理。
Atbash 密码是一种希伯来语代码,将字母表中的第一个字母替换为最后一个字母,将第二个字母替换为倒数第二个字母,依此类推。例如,A变为Z、B变为Y、C变为X等。
与 Caesar 和 ROT 13 密码一样,这也是单替换密码。
明文 | 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 |
密文 | Z | Y | X | W | V | U | T | S | R | Q | P | O | N | M | L | K | J | I | H | G | F | E | D | C | B | A |
多字母替换
最终,对凯撒密码进行了轻微改进,称为多字母替换(也称为多字母替换)。在此方案中,您选择多个数字来移动字母(即多个替换字母表)。例如,如果选择三个替换字母表 (12, 22, 13),则
A CAT
C ADV
请注意,第四个字母以另一个 12 开头,您可以看到第一个A转换为C,第二个A转换为D。这使得破译底层文本变得更加困难。虽然这比凯撒密码更难解密,但解密并不算太难。用简单的笔和纸以及一点努力就可以完成。用电脑就可以快速破解。实际上,今天没有人会使用这种方法来发送任何真正安全的消息,因为这种类型的加密被认为非常弱。
最广为人知的多字母密码之一是维吉尼亚密码。本章稍后将详细讨论该主题。该密码由Giovan Battista Bellaso 于 1553 年发明。是一种通过使用根据关键字的字母选择的一系列不同的单字母密码来加密字母文本的方法。该算法后来被错误地归咎于 Blaise de Vigenère,因此现在被称为“维吉尼亚密码”,尽管维吉尼亚并没有真正发明它。
多字母密码比单替换密码更安全。然而,它们对于现代密码学的使用仍然不可接受。基于计算机的密码分析系统可以轻松破解历史密码方法(单字母表和多字母表)。讨论单替换和多替换字母密码只是为了向您展示密码学的历史,并帮助您了解密码学的工作原理。
Enigma
讨论密码学而不谈 Enigma 确实是不可能的。与普遍的误解相反,Enigma 不是一台机器,而是一个机器家族。第一个版本是由德国工程师 Arthur Scherbius 在第一次世界大战即将结束时发明的。它被多个不同的军队使用,而不仅仅是纳粹德国人。
波兰密码分析学家 Marian Rejewski、Jerzy Rozycki 和 Henryk Zygalski 破解了一些使用 Enigma 版本加密的军事文本。三人基本上对一台可用的恩尼格玛机器进行了逆向工程,并利用该信息开发了破解恩尼格玛密码的工具,其中包括一种名为密码炸弹的工具。
恩尼格玛密码机的核心是转子或圆盘,它们排列成一个圆圈,上面有 26 个字母。转子排列整齐。本质上,每个转子代表一个不同的单替换密码。您可以将 Enigma 视为一种机械多表密码。Enigma 机器的操作员将收到一条明文消息,然后将该消息输入 Enigma 中。对于输入的每个字母,Enigma 都会根据不同的替换字母表提供不同的密文。如果两台恩尼格玛机器具有相同的转子设置,接收者将输入密文,得到明文。
恩尼格玛密码机实际上有多种变体。海军恩尼格玛机最终被在现在著名的布莱奇利公园工作的英国密码学家破解。艾伦·图灵和分析师团队最终破解了海军恩尼格玛机。许多历史学家声称这使第二次世界大战缩短了两年之多。这个故事是 2014 年电影《模仿游戏》的基础。
已经有一些系统源自 Enigma 或概念相似的系统。其中包括被美国密码学家代号为 GREEN 的日本系统、SIGABA 系统、NEMA 系统等。
我们对经典密码学,有个一般认识即可。对于网络安全来说,我们基本上都是建构在现代密码学的基础上,所以我们后期会结合搜集的资料,探讨现代密码学。
原文始发于微信公众号(河南等级保护测评):网络安全等级保护:密码的历史
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论