密码学

密码学,如本文介绍中所定义的,是指科学把信息转换成一种不可能或不可行的形式重复的或者在不知道密钥的情况下撤销。密码学系统一般通过数学运算来分类(1),通过数学运算,信息(称为“明文”)被隐藏加密密钥,即两个这样的操作级联的换位、替换或乘积密码;(2)根据发送端和接收端使用相同的密钥(对称[单密钥]密码系统)还是不同的密钥(非对称[双密钥或公钥]密码系统);(3)通过它们是否产生块密码或流密码。下面依次描述这三种类型的系统。

密码系统

描述密码学所依赖的技术最简单的方法是首先研究一些简单的密码系统,然后从这些例子中抽象出适用于更复杂系统的特征。密码系统中有两种基本的数学运算:换位运算和替换运算。换位在不改变符号本身的情况下重新排列明文中的符号。替换将纯文本元素(符号、符号对等)替换为其他符号或符号组,而不改变它们出现的顺序。

换位密码

在手动系统中,换位通常借助易于记忆的工具进行助记符.例如,一种流行的学生密码是“rail fence”,其中明文的字母在行之间交替书写,然后按行顺序读取以给出密码。在两排深的栅栏上,会写着“我们被发现了,救救你自己”的字样

转位密码的例子。

伏尼契手稿中的植物插图,一种未知语言的科学或魔法文本,密码;15世纪末或16世纪(?)
yabo亚博网站首页手机大英百科全书测验
密码,秘密和密码测试

对密文进行简单的频率计数可以向密码分析人员揭示,字母在密文中出现的频率与普通明文中出现的频率完全相同,因此,可能会对字母进行简单的重新排列。

栏杆栅栏是一类换位的最简单的例子密码,被称为路由密码在密码学的早期历史上,这种方法相当受欢迎。一般来说,明文的元素(通常是单个字母)按照预先安排的顺序(路由)写入一个几何数组(矩阵)——通常是一个矩形——由发送端和接收端事先商定,然后按照矩阵中另一条规定的路由读取,从而生成密码。路由密码中的密钥包括几何数组、起始点和路由的保密。显然,矩阵和路由都可能比这个例子复杂得多;但即便如此,他们也没有提供多少安全保障。换位的一种形式(排列),它的广泛使用依赖于一个容易记住的关键字来识别矩形的列所走的路线矩阵都是要读的。例如,使用关键字AUTHOR,并根据关键字中字母的字典顺序对列进行排序

转位密码的例子。

在解密路由密码时,接收方根据加密路由将密文符号输入到约定的矩阵中,然后按照原始的输入顺序读取明文。通过将从一个转置获得的密码与另一个转置重新加密,可以实现密码安全性的显著改进。因为两次换位的结果(乘积)也是一个换位,多次换位的作用是在矩阵中定义一个复杂的路线,这本身是很难用任何简单的助记符来描述的。(看到产品密码下面)。

在同一类别中还有使用穿孔纸板矩阵的系统,称为格栅;这种系统的描述可以在大多数关于密码学的老书中找到。在当代密码学中,转置主要作为构成密码的几个加密步骤之一复合产品密码

替换密码

在替换密码中,明文的单位(通常是单个字母或字母对)被替换为其他符号或符号组,这些符号或符号组不必与明文中使用的符号相同。例如,在Sir中阿瑟·柯南·道尔的《跳舞人的冒险》(1903),福尔摩斯解决一个单字母替换密码其中的密文符号是一个人的简笔画,摆着各种类似舞蹈的姿势。

所有替换密码中最简单的是那些密码字母表仅仅是纯文本字母表的周期性移位。其中,最著名的是凯撒密码,由尤利乌斯•凯撒,其中A加密为D, B加密为E,依此类推。正如许多学生尴尬地发现的那样,循环移位替换密码并不安全。正如这一部分所指出的密码分析,也不是任何其他单字母替换密码,在这种密码中,给定的明文符号总是被加密为相同的密文符号。因为冗余英语语言在美国,只需要大约25个密文符号就可以进行单字母替换密码的密码分析,这使得它们成为娱乐密码的流行来源。对这个弱点的解释是,明文和密文中符号的频率分布是相同的,只是符号被重新标记了。事实上,明文中的任何结构或模式在密文中都被完整地保留了下来,因此密码分析人员的任务很简单。

目前主要有两种方法替换减少明文结构(主要是单字母频率)在密文中存活的程度的密码。一种方法是加密由两个或多个符号组成的明文元素;例如,有向图和三向图。另一种是使用几种密码字母。当这种多字母替换的方法达到极限时,就会产生一次性的键或填充键。

公平联盟密码

在手动加密由多个字母组成的明文单位的密码系统中,只使用有向图。通过将明文中的有向图作为单位而不是单个字母来处理,原始频率分布在加密过程中存活下来的密码可以减少但不能消除,因为字母对本身是高度的相关.最有名的有向图替换密码是Playfair,由查尔斯·惠斯顿爵士但在英国外交部得到了里昂·普莱费尔男爵的支持圣安德鲁斯.下面是一个示例公平联盟密码,解为彼得·温西勋爵多萝西·l·塞耶斯有他的尸体(1932)。在这里,用于执行加密的助记符是一个包含字母表中的字母(I和J被视为同一个字母)的5 × 5方阵。一个关键字,在这个例子中是君主制,首先被填入,字母表中剩余的未使用的字母按字典顺序输入:

Playfair密码的示例。

通过首先定位矩阵中的两个明文字母,明文有向图使用矩阵进行加密。它们(1)在不同的行和列;(2)在同一排;(3)在同一栏内;或(4)相似。对应的加密(替换)规则如下:

  1. 当这两个字母在不同的行和列时,每个字母都被在同一行但在另一列的字母所取代;即,为了加密WE, W替换为U, E替换为G。
  2. 当A和R在同一行时,A被加密为R, R(循环读取行)被加密为M。
  3. 当I和S在同一列时,I被加密为S, S被加密为X。
  4. 当出现双字母时,a虚假的符号Q被引入,这样SUMMER中的MM就被加密为MQ的NL和ME的CL。
  5. 如果有必要,将在明文的末尾追加X,以使明文具有偶数个字母。

使用Sayers 's Playfair数组加密熟悉的明文示例得到:

示例的明文和Playfair cypher的消息,我们发现拯救你自己。

如果在加密过程中完全隐藏频率分布信息,则Playfair密码中字母频率的密文图将是平坦的。事实并非如此。的偏差从这个理想中,可以测量某些字母对比其他字母更频繁地出现的趋势,以及密码文本中符号的Playfair行和列相关性——密码分析师在求解Playfair密码时利用的基本结构。然而,由于丢失了相当一部分明文频率分布,Playfair密码比单字母密码更难进行密码分析。