实验二 古典密码

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验2 古典密码

1.实验目的

(1)了解古典密码中的基本加密运算。

(2)了解几种典型的古典密码体制。

(3)掌握古典密码的统计分析方法。

2.实验内容

(1)古典密码体制

①简单移位加密(单表代换)

该加密方法中,加密时将明文中的每个字母向前推移K位。经典恺撒密码加密变换就是这种变换,取k=3。

步骤1:打开CAP4软件,并加载实验一附带的“mw.txt”,如图2-1所示。

图2-1加载文件

步骤2:采用恺撒加密方法手工加密“mw.txt”;打开CAP4菜单栏“Cipher”菜单项选择“simple shift”选项,并选择移位值“shift value”为3,加密步骤1中加载的文件,如图2-2所示。

图2-2 参数设置

图2-3加密文件

步骤3:比较二者的加密结果是否相同。

步骤4:点击CAP4软件中的“Simple analysis”下的“shift”键,观察恺撒加密法的可能密钥值,并分析其攻击的难度,如图2-4所示。

图2-4密钥分析

②仿射密码加密(单表代换)

在仿射密码加密(affine cipher)中,字母表中的字母被赋予一个数字,例如,a=0,b=1,c=2,…,z=25.仿射密码加密法的密钥为0~25之间的数字对(a,b)。a与26的最大公约数必须为1,这就是说能整除a和26的数只有1.现在假设m为明文字母的数字,而c为密文字母的数字,那么,这两个数字之间有如下关系: c=(am+b)(mod 26)

m=a-1(c-b)(mod 26)

其中,(mod 26)的操作是:除以26,得其余数。

例如,选取密钥为(7,3)。因为7与26互素,也就是只有公约数1,所以(7,3)可以作为仿射密码的加密钥。将“hot”转换成数字7、14、19,利用仿射等式生成: c(H)=(7×7+3) mod 26=52 mod 26=0,即为字母“a“。

c(O)=(7×14+3) mod 26=101 mod 26=23,即为字母“x“.

c(T)=(7×19+3) mod 26=136 mod 26=6,即为字母”g”. 这样,对于这个密钥,”hot”变成了“axg“.

CAP4软件中实现仿射密码加密:

步骤1:在CAP4软件中加载要加密地的明文“mw.txt“.

步骤2:选取Cipher菜单下的Affine Cipher菜单项,弹出如下对话框,如图2-5所示。

图2-5 设置加密密钥

步骤3:选择图中”Affine Cipher”中的“Encipher“选项进行加密,如图2-6所示。

图2-6 采用Affine Cipher加密

③维吉尼亚密码加密(多表代换)

Vigenere加密法是一个很著名的多表代换加密法。该加密法是基于关键词的多表代换加密系统,但不像单表代换中的关键词加密那样,使用关键词来定义替换模式,它是先将明文按照

关键字的长度分组,然后将分组中的每个字符与关键字中相应位置上的字符进行模26加密运算,这样每个明文字母都与一个关键词的字母关联。

例如:如果关键词为”hold”,而明文为”this is the plaintext”,那么,关键词—明文的关联如下所示:

注意:以上的密文结果,也可以直接查找Vigenere表获取密文.例如:上面示例中的第一对是“ht“.在Vigenere表中查找”t”列和”h”行,找到结果密文字母”a”,重复这个过程。

明文

CAP4软件中实现维吉尼亚加密:

步骤1:在CAP4软件中加载要加密地的明文“mw.txt“.

步骤2:选取Cipher菜单下的Vigenere菜单项,弹出如下对话框,如图2-7所示。

图2-7 设置加密密钥词

步骤3:选择”Encipher”菜单项加密。

(2)古典密码体制的统计分析

因为古典密码学中的大部分加密都是基于英文字母的,所以其相应的明文和密文都会遵循相应的语言统计规律。根据明密文中的统计特性来破译密文,是古典密码学破译的基本方法。

最容易观察的字母特性是其出现频率,所以古典密码的统计分析很多也是以字母出现频率做为主要线索的。然而,大多数频率分析是基于标准英语字母的常见频率表的,其中各个英文字母的出现频率如下:

从高到低的顺序:ETAONIRSHDLUCMPFYWGBVJKQXZ通常由于所加密明文的性质不同,那么字母出现频率也会有所差异,所以,一般采用字母频率来破译时不能完全依照上述顺序进行相关对照来得出单表代换模式,而是考虑将频率分组。标准英文字母出现四个频率组:

高 E T A O N I R S H

中 D L U C M

低P F Y W G B V

缺少J K Q X Z

字母在分组中的位置可能有些变化,但很少出现在其他分组中。将密文中的字母出现频率进行统计后,可以将它们按照出现频率的高低,先进行简单分组,然后对照以上频率组,逐个分析,以便确定其单表代换模式。

仅仅依靠以上规律通常还是很不充分的,很多时候还会用到双联字母或三联字母的出现频率来辅助破译。例如,TH,HE,IN,RE,DE,ST,EN,AT,OR,IS,ET,IT,AR,TE,HI,OF,THE,ING,ERE,FOR等都比较常出现。

采用CAP4软件来实现古典密码的统计分析。

①仿射密码的统计分析

前提是,我们已经知道该段密文是采用仿射加密法加密的。

步骤1:打开CAP4软件,加载已经获取的密文“fsbhmi.txt”,并按下”Basic Tools”工具条中的“Freq”按钮,统计密文中每个字母出现的几率,如图2-8所示。

图2-8 统计密文字母频率

通过统计可知,密文中出现频率最高的字母依次是X、H、N、T、C、K、J,故可假设密文字符X对应的是明文字符E,密文字符H对应的铭文字符为T。

相关文档
最新文档