密码学实验.docx

上传人:b****7 文档编号:23954140 上传时间:2023-05-22 格式:DOCX 页数:22 大小:279.12KB
下载 相关 举报
密码学实验.docx_第1页
第1页 / 共22页
密码学实验.docx_第2页
第2页 / 共22页
密码学实验.docx_第3页
第3页 / 共22页
密码学实验.docx_第4页
第4页 / 共22页
密码学实验.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

密码学实验.docx

《密码学实验.docx》由会员分享,可在线阅读,更多相关《密码学实验.docx(22页珍藏版)》请在冰豆网上搜索。

密码学实验.docx

密码学实验

 

《密码学与信息平安》实验报告

 

专业

班级

姓名

学号

 

2021年6月5日

实验一古典密码实验

1实验目的

1.明白得代替密码学加密进程

2.明白得置换密码学加密进程

2实验内容

1.手动完成Caesar密码

2.Caesar加密

3.Caesar密码分析

4.单表置换密码

5.单表置换密码分析

3实验进程

本练习主机A、B为一组,C、D为一组,E、F为一组。

第一利用“快照X”恢复Windows系统环境。

1.手动完成Caesar密码

(1)在实验原理部份咱们已经了解了Caesar密码的大体原理,那么请同窗们写出当密钥k=3时,对应明文:

datasecurityhasevolvedrapidly的密文:

datasecurityhasevolvedrapidly。

(2)进入实验平台,单击工具栏中的“密码工具”按钮,启动密码工具,在向导区点击“Caesar密码”。

在明文输入区输入明文:

datasecurityhasevolvedrapidly。

将密钥k调剂到3,查看相应的密文,并与你手动加密的密文进行比较。

请依照密钥验证密文与明文对应关系是不是正确。

2.Caesar加密

(1)进入“加密解密”|“Caesar密码”视图,在明文输入区输入明文(明文应为英文),单击“加密”按钮进行加密。

请将明文记录在那个地址:

Iamastident。

(2)调剂密钥k的微调按钮或对照表的移位按钮,选择适合的密钥k值,并记下该密钥k值用于同组主机的解密。

加密工作完成后,单击“导出”按钮将密文默许导出到Caesar共享文件夹(D:

\Work\Encryption\Caesar\)中,默许文件名为Caesar密文.txt。

(3)通知同组主机接收密文,并将密钥k通告给同组主机。

6

(4)单击“导入”按钮,进入同组主机Work\Encryption\Caesar目录(IP\Work\Encryption\Caesar),打开Caesar密文.txt。

(5)调剂密钥k的微调按钮或对照表的移位按钮,将k设为同组主机加密时的密钥k值,这时解密已经成功。

请将明文写出:

Iamastident。

(6)将解密后的明文与同组主机记录的明文比较,请对照明文是不是相同。

3.Caesar密码分析

(1)本机进入“密码工具”|“加密解密”|“Caesar密码”,在明文输入区输入明文(要求明文有必然的意义以便让同组主机分析)。

请将明文记录在那个地址:

Iamastident。

(2)调剂密钥k的微调按钮或对照表的移位按钮,选择适合的密钥k值完成Caesar加密,单击“导出”按钮,将密文默许导出到Caesar共享文件夹中。

(3)通告同组主机(不要通告发钥值k)密文已经放在共享文件夹中,让同组主机获取密文。

(4)单击“导入”按钮将同组主机Caesar密文导入。

(5)调剂密钥k的微调按钮或对照表的移位按钮来调剂密钥,从而进行密码分析(平均13次,最坏26次破解)。

请将破解出的明文和密钥记录在这里:

密钥k=6。

明文Iamastident。

(6)将破解后的密钥和明文与同组主机记录的密钥和明文比较。

若是不同请调剂密钥k继续破解。

4.单表置换密码

(1)单击“密码工具”按钮,进入“加密解密”|“单表置换”|“加密/解密”视图,与同组主机协商好一个密钥词组k=iamastudent.

(2)依照“单表置换”实验原理计算出置换表。

(3)计算完成置换表以后,在明文输入区输入明文,单击“加密”按钮用置换表的对应关系对明文进行加密,加密完成后,单击“导出”按钮,将密文导出到SingleTable共享目录中,并通告同组主机获取密文。

请将明文记录在那个地址:

datasecurityhasevolvedrapidly。

(4)单击“导入”按钮将同组主机单表置换密文导入,依照同组主机置换表完本钱机置换表,单击“解密”按钮对密文进行解密。

(5)本机将解密后的明文与同组主机记录的明文对照,若是两边的明文一致,那么说明实验成功,不然说明本机或同组主机的置换表计算错误。

5.单表置换密码分析

(1)图5-2-1是由统计学得出的英文字母相对频率表。

图5-2-1

由图5-2-1能够看出,英文字母E显现的频率最高,而J和Z显现的频率最低,如此,就能够够通过英文字母显现的频率大致上判定单表置换密码的置换表,从而取得明文。

(2)本机进入“密码工具”|“加密解密”|“单表置换”|“密码分析”页面,单击“导入”按钮,将密文“单表置换密码分析密文.txt”导入,单击“统计”按钮,统计密文中每一个字母显现的频率,回答以下问题:

在密文中显现频率最高的字母是A

与上表比较,它可能是由字母E置换的。

(3)置换表组框中点击“解密”按钮,这时将取得一个明文。

但是现在的明文并非是最终要取得的,能够通过明文的特点和各个字母的比例来调剂置换表中的对应关系,从而取得正确的明文。

例如,明文第一段和置换表如图5-2-2所示。

图5-2-2

依照明文咱们可猜想图中画线的单词“soedlda’r”应该为“shedidn’t”。

第一在置换表中找到明文小写字母o对应的密文大写字母E,然后改变置换表,使猜想的h对应E,依此类推那么i对应F,n对应M,t对应T,变换后的置换表如图5-2-3所示。

图5-2-3

单击“解密”按钮,取得明文如图5-2-4所示。

图5-2-4

依此类推即能够取得明文,请依照你的置换表填写表5-2-1。

4结论

古典密码算法曾经被普遍应用,多数比较简单,利用手工和机械操作来实现加密和解密。

它的要紧对象是文字信息,利用密码算法实现文字信息的加密和解密。

古典密码学能够分为代替密码(也叫做移位密码)和置换密码(也叫做换位密码)两种,其中代替密码典型的有Caesar密码,数乘密码和仿射变换等,置换密码有单表置换和多表置换等。

实验二分组密码实验

1实验目的

1.明白得对称加密算法的原理和特点

2.明白得DES算法的加密原理

3明白得AES算法的加密原理

2实验内容

1.DES加密解密

2.DES算法

3.AES加密解密

4.AES算法

3实验进程

本练习主机A、B为一组,C、D为一组,E、F为一组。

第一利用“快照X”恢复Windows系统环境。

1.DES加密解密

(1)本机进入“密码工具”|“加密解密”|“DES加密算法”|“加密/解密”页签,在明文输入区输入明文:

iamastudent,youareapig。

(2)在密钥窗口输入8(64位)个字符的密钥k,密钥k=students。

单击“加密”按钮,将密文导出到DES文件夹(D:

\Work\Encryption\DES\)中,通告同组主机获取密文,并将密钥k告知同组主机。

(3)单击“导入”按钮,从同组主机的的DES共享文件夹中将密文导入,然后在密钥窗口输入被同组主机通告的密钥k,点击“解密”按钮进行DES解密。

(4)将破解后的明文与同组主机记录的明文比较。

2.DES算法

本机进入“密码工具”|“加密解密”|“DES加密算法”|“演示”

页签,向64位明文中输入8个字符(8*8bit=64),向64位密钥中输入8个字符(8*8bit=64)。

点击“加密”按钮。

完成加密操作,别离点击“初始置换”、“密钥生成演示”、“十六轮加密变换”和“终结置换”按钮,查看初始置换、密钥生成演示、十六轮加密变换和终结置换的详细加密操作流程。

3.AES加密解密

(1)本机进入“密码工具”|“加密解密”|“AES加密算法”|“加密/解密”页签,在明文输入区输入明文:

iamastudent,youareapig。

(2)在密钥窗口输入16(128位)个字符的密钥k,要记住那个密钥以用于解密,密钥k=ilikechinesebest。

单击“加密”按钮,将密文导出到AES文件夹(D:

\Work\Encryption\AES\)中,通告同组主机获取密文,并将密钥k告知同组主机。

(3)单击“导入”按钮,从同组主机的AES共享文件夹中将密文导入,然后在密钥窗口输入被同组主机通告的密钥k,点击“解密”按钮进行AES解密。

(4)将破解后的明文与同组主机记录的明文比较。

4.AES算法

进入“密码工具”|“加密解密”|“AES加密算法”|“演示”页签。

输入128位明文与密钥,执行加密操作,查看各演示模块。

依如实验原理中对AES加密算法的SubBytes变换和ShiftRows变换的介绍,关于以下给出的状态矩阵:

请计算它的SubBytes变换,和通过SubBytes变换以后,再通过ShiftRows变换的结果。

 

4结论

对称密钥加密机制即对称密码体系,也称为单钥密码体系和传统密码体系。

对称密码体系通常分为两大类,一类是分组密码(如DES、AES算法),另一类是序列密码(如RC4算法)。

实验三公钥密码实验

1实验目的

1.了解非对称加密机制

2.明白得RSA算法的加密原理

3.明白得ELGamal算法的加密原理

2实验内容

1.RSA生成公私钥及加密解密进程演示

2.RSA加密解密

3.ELGamal生成公钥及加密解密进程演示

4.ELGamal加密解密

3实验进程

本练习主机A、B为一组,C、D为一组,E、F为一组。

第一利用“快照X”恢复Windows系统环境。

一.RSA生成公私钥及加密解密进程演示

(1)本机进入“密码工具”|“加密解密”|“RSA加密算法”|“公私钥”页签,在生成公私钥区输入素数p和素数q,那个地址要求p和q不能相等(因为很容易开平方求出p与q的值)而且p与q的乘积也不能小于127(因为小于127不能包括所有的ASCII码,致使加密失败),你选用的素数p与q别离是:

p=53;q=67。

(2)单击“随机选取正整数e”下拉按钮,随机选取e,e=1099。

(3)单击“生成公私钥”按钮生成公私钥,记录下公钥(1099,3551),私钥(1627,3551)。

(4)在公私钥生成演示区中输入素数p=53和素数q=67,还有正整数e=1099。

单击“开始演示”按钮查看结果,填写表3-1-1。

表3-1-1公私钥生成演示结果

私钥d

1627

私钥n

3551

公钥e

1099

公钥n

3551

(5)在加/解密演示区中输入明文m=2255,公钥n=3551(m

单击“加密演示”按钮,查看RSA加密进程,然跋文录取得的密文c=2402。

(6)在密文c编辑框输入方才取得的密文,别离输入私钥n=3551,私钥d=1627,点击“解密演示”按钮,查看RSA解密进程,然跋文录取得的明文m=2255。

(7)比较解密后的明文与原先的明文是不是一致。

依如实验原理中对RSA加密算法的介绍,当素数p=13,素数q=17,正整数e=143时,写出RSA私钥的生成进程:

当公钥e=143时,写出对明文m=40的加密进程(加密进程计算量比较大,请利用密码工具的RSA工具进行计算):

利用生成的私钥d,对生成的密文进行解密:

二.RSA加密解密

(1)本机在生成公私钥区输入素数p和素数q,那个地址要求p和q不能相等,而且p与q的乘积也不能小于127,记录你输入的素数,p=23,q=19。

(2)点击“随机选取正整数e:

”下拉按钮,选择正整数e,e=149。

(3)点击“生成公私钥”按钮生成公私钥,记录下公钥e=149,n=437;私钥d=101,n=437。

将自己的公钥通告给同组主机。

(4)本机进入“加密/解密”页签,在“公钥e部份”和“公钥n部份”输入同组主机的公钥,在明文输入区输入明文:

单击“加密”按钮对明文进行加密,单击“导出”按钮将密文导出到RSA共享文件夹(D:

\Work\Encryption\RSA\)中,通告同组主机获取密文292,292,255,255,337,337,219,219,249,249,289,289。

(5)进入“加密/解密”页签,单击“导入”按钮,从同组主机的RSA共享文件夹中将密文导入,点击“解密”按钮,切换到解密模式,在“私钥d部份”和“私钥n部份”输入自己的私钥,再次点击“解密”按钮进行RSA解密。

(6)将破解后的明文与同组主机记录的明文比较。

三.ELGamal生成公钥及加密解密进程演示

(1)本机进入“密码工具”|“加密解密”|“ELGamal加密算法”|“公钥”页签,输入素数p,那个地址要求p不能小于127,记录你输入的素数p=163。

单击“本原元素g”下拉按钮,选择本原元素g=159。

输入私钥X,X在区间[0,p)上,记录下私钥用于解密,x=155。

点击“生成公钥”按钮生成公钥,记录下公钥y=130。

(2)在公钥生成演示区中输入素数p=163,本原元素g=159,私钥x=155。

单击“开始演示”按钮查看ELGamal算法生成公钥进程,记录下公钥y=130。

(3)在加密演示区中输入明文m=111,素数p=163,本原元素g=159,公钥y=130,和随机数x=155。

单击“开始演示”按钮,查看ELGamal加密进程,记录密文C1=130,C2=101。

(4)在解密演示区中输入方才取得的密文C1和C2,输入素数p=163,私钥x=155。

单击“开始演示”按钮,查看ELGamal解密进程,记录取得的明文m=111。

依如实验原理中对ELGamal加密算法的介绍,当素数P=311,本原元素g=136,私钥X=3时,写出ElGamal公钥的生成进程:

利用生成的公钥,写出对明文m=40,随机数x=2的加密进程:

利用私钥X=3,对生成的密文进行解密,请写出解密进程:

四.ELGamal加密解密

(1)本机进入“密码工具”|“加密解密”|“ELGamal加密算法”|“公钥”页签,输入素数p,那个地址要求p不能小于127,记录你输入的素数p=163。

单击“本原元素g”下拉按钮,选择本原元素g=159。

输入私钥X,X在区间[0,p)上,记录下私钥用于解密,私钥X=6。

单击“生成公钥”按钮生成公钥,记录下公钥Y=21。

将自己的公钥通告给同组主机。

(2)进入“加密”页面,将同组主机的系统素数、本原元素和公钥输入,再选择一个随机数x输入(0

在明文输入区输入明文:

加密后将密文导出到ELGamal共享文件夹(D:

\Work\Encryption\ELGamal\)中,通告同组主机获取密文。

c1:

10.

c2:

81,81,76,76,71,71,66,66,61,61,56,56

(3)本机进入“解密”页签,单击“导入”按钮,从同组主机的ELGamal共享文件夹中将密文导入,输入自己的“系统素数P”和“私钥X”,点击“解密”按钮进行ELGamal解密。

(4)将破解后的明文与同组主机记录的明文比较。

4结论

所谓非对称密钥加密是指每一个实体都有自己的公钥和私钥两个密钥,用其中的一个密钥对明文进行加密,都只能用另一个密钥才能解开,而且从其中的一个密钥推导出另一个密钥在计算上都是困难的。

非对称密码算法解决了对称密码体制中密钥治理的难题,并提供了对信息发送人的身份进行验证的手腕,是现代密码学最重要的发明。

实验四Hash函数实验

1实验目的

1.明白得Hash函数的计算原理和特点

2.明白得MD5算法原理

3.明白得SHA1函数的计算原理和特点

4明白得SHA1算法原理

2实验内容

1.MD5生成文件摘要

2.MD5算法

3.SHA1生成文件摘要

4.SHA1算法

3实验进程

本练习主机A、B为一组,C、D为一组,E、F为一组。

第一利用“快照X”恢复Windows系统环境。

一.MD5生成文件摘要

(1)本机进入“密码工具”|“加密解密”|“MD5哈希函数”|“生成摘要”页签,在明文框中编辑文本内容:

iamastudent。

单击“生成摘要”按钮,生成文本摘要:

3C8A430925A238D7EE931D9A05821E3AD6F8592A。

单击“导出”按钮,将摘要导出到MD5共享文件夹(D:

\Work\Encryption\MD5\)中,并通告同组主机获取摘要。

(2)单击“导入摘要”按钮,从同组主机的MD5共享文件夹中将摘要导入。

在文本框中输入同组主机编辑过的文本内容,单击“生成摘要”按钮,将新生成的摘要与导入的摘要进行比较,验证相同文本会产生相同的摘要。

(3)对同组主机编辑过的文本内容做很小的改动,再次生成摘要,与导入的摘要进行对照,验证MD5算法的抗修改性。

二.MD5算法

本机进入“密码工具”|“加密解密”|“MD5哈希函数”|“演示”页签,在明文输入区输入文本(文本不能超过48个字符),单击“开始演示”,查看各模块数据及算法流程。

依如实验原理中对MD5算法的介绍,若是链接变量的值别离为(其中,M[1]=):

A:

2B480E7C

B:

DAEAB5EF

C:

2E87BDD9

D:

91D9BEE8

请写出第2轮第1步的运算进程和通过运算后的链接变量。

三.SHA1生成文件摘要

(1)本机进入“密码工具”|“加密解密”|“SHA1哈希函数”|“生成摘要”页面,在明文框中编辑文本内容:

单击“生成摘要”按钮,生成文本摘要:

单击“导出”按钮,将摘要导出到SHA1共享文件夹(D:

\Work\Encryption\SHA1\)中,并通告同组主机获取摘要。

(2)单击“导入”按钮,从同组主机的SHA1共享文件夹中将摘要导入。

在文本框中输入同组主机编辑过的文本内容,单击“生成摘要”

按钮,将新生成的摘要与导入的摘要进行比较,验证相同文本会产生相同的摘要。

(3)对同组主机编辑过的文本内容做很小的改动,再次生成摘要,与导入的摘要进行对照,验证SHA1算法的抗修改性。

四.SHA1算法

本机进入“密码工具”|“加密解密”|“SHA1哈希函数”|“演示”页签,在明文输入区输入文本(文本不能超过48个字符),单击“开始演示”,查看各模块数据及算法流程。

依如实验原理中对SHA1算法的介绍,若是链接变量的值别离为(其中,M[1]=E7CBEB94):

A:

39669B34

B:

61E7F48C

C:

C04BD57B

D:

8279FF1E

E:

4E85FC91

请写出第21步的运算进程和通过运算后的链接变量。

4结论

信息平安的核心技术是应用密码技术。

密码技术的应用远不止局限于提供机密性效劳,密码技术也提供数据完整性效劳。

密码学上的散列函数(HashFunctions)确实是能提供数据完整性保障的一个重要工具。

实验五数字签名实验

1实验目的

1.把握平安通信中经常使用的加密算法

2.把握数字签名进程

3.把握平安文件传输大体步骤

4.学会利用PGP工具实现平安通信

5.明白得平安通信实现进程

2实验内容

1.手动实现信息的平安传输

2.实验操作步骤设计

3.PGP平安通信

3实验进程

本练习主机A、B为一组,C、D为一组,E、F为一组。

第一利用“快照X”恢复Windows系统环境。

一.手动实现信息的平安传输

说明:

实验应采纳对称加密算法、非对称加密算法和哈希算法相结合的方式,通过利用密码工具实现信息的平安传输。

以终端A为发送方,终端B为接收方为例,实现流程大致应如下。

终端A操作

与终端B预先协商好通信进程中所利用到的对称加密算法、非对称加密算法和哈希函数;

采纳对称加密算法(密钥称之为会话密钥)对传输信息进行加密取得密文,确保传输信息的保密性;

利用终端B的公钥对会话密钥进行加密,确保传输信息的保密性和信息接收方的不可否定性;

采纳哈希函数(生成文件摘要)确保传输信息的完整性,并利用自己的私钥对文件摘要进行签名(取得数字签名),确保信息发送方的不可否定性;

将密文、加密后的会话密钥和数字签名打包封装(放到一路)后,通过网络传输给终端B。

终端B操作:

与终端A预先已协商好通信进程中所利用到的对称加密算法、非对称加密算法和哈希函数;

利用自己的私钥对终端A加密的会话密钥进行解密,取得准会话密钥;

利用准会话密钥对取得的密文进行解密,取得准明文;

利用终端A的公钥对取得的数字签名进行签名验证,取得准明文摘要;

利用哈希函数计算取得准明文摘要;

将计算取得的摘要与准明文摘要进行比较,假设相同那么说明文件平安传输成功。

要求:

实验同组主机依如实验流程自行设计实验操作步骤,最终实现文件平安传输。

二.实验操作步骤设计

请详细描述你所设计的实验步骤。

终端A操作

(1)与终端B预先协商好通信进程中所利用到的对称加密算法、非对称加密算法和哈希函数;对称加密算法:

DES

非对称加密:

RSA

哈希函数:

SHA1

(2)采纳对称加密算法(密钥称之为会话密钥)对传输信息进行加密取得密文,确保传输信息的保密性;

(3)利用终端B的公钥对会话密钥进行加密,确保传输信息的保密性和信息接收方的不可否定性;

(4)采纳哈希函数(生成文件摘要)确保传输信息的完整性,并利用自己的私钥对文件摘要进行签名(取得数字签名),确保信息发送方的不可否定性;

(5)将密文、加密后的会话密钥和数字签名打包封装(放到一路)后,通过网络传输给终端B。

密文:

FC5D0043B5C83431

会话密钥:

171

数字签名:

(171,107)

终端B操作:

(1)与终端A预先已协商好通信进程中所利用到的对称加密算法、非对称加密算法和哈希函数;

对称加密算法:

DES

非对称加密:

RSA

哈希函数:

SHA1

(2)利用自己的私钥对终端A加密的会话密钥进行解密,取得准会话密钥

(3)利用准会话密钥对取得的密文进行解密,取得准明文;

(4)利用终端A的公钥对取得的数字签名进行签名验证,取得准明文摘要;

利用哈希函数计算取得准明文摘要;

将计算取得的摘要与准明文摘要进行比较,假设相同那么说明文件平安传输成功。

三.PGP平安通信

说明:

实验应用PGP工具实现信息的平安通信,其实现流程为:

本机第一生成公私钥对,并导出公钥给同组主机;在收到同组主机的公钥后将其导入到本机中,并利用其对文件进行加密;将加密后的密文传回给同组主机,本机利用自己的私钥对来自同组主机的密文进行解密。

要求:

应用PGP工具进程中所利用的用户名均为userGX格式,其中G为组编号(1-32),X为主机编号(A-F),如第2组主机D,其利用的用户名应为user2D。

1.生成公私密钥

(1)本机单击实验平台“GnuPG”工具按钮,进入工作目录,键入命令:

gpg--gen-key开始生成公私钥对。

期间gpg会依次询问如下信息:

欲产生密钥种类(默许选择1)

密钥大小(默许大小2048字节)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 城乡园林规划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1