现代密码学报告

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

现代密码学 实验报告

学生姓名 学 号 专业班级 指导教师 学 院 完成时间

实验一对称密码算法实验

[实验目的]

1. 掌握密码学中经典的对称密码算法 DES AES RC4的算法原理。

2. 掌握DES AES RC4的算法流程和实现方法。

段桂华

信息科学与工程学院 2014年5月

[实验预备]

1. DES算法有什么特点?算法中的哪些结构保证了其混淆和扩散的特性?

2. AES算法的基本原理和特点。

3. 流密码RC4的密钥流生成以及S盒初始化过程。

[实验内容]

1. 分析DES AES RC4 SHA的实现过程。

2. 用程序设计语言将算法过程编程实现。

3. 完成字符串数据的加密运算和解密运算

输入明文:Idolikethisbook

输入密钥:cryptio n

[实验步骤]

1. 预习DES AES RC4算法。

2. 写出算法流程,用程序设计语言将算法过程编程实现。

3. 输入指定的明文、密钥进行实验,验证结果。

4. 自己选择不同的输入,记录输出结果。

写出所编写程序的流程图和运行界面、运行结果。

[问题讨论]

1. 在DES算法中有哪些是弱密钥?哪些是半弱密钥?

2. 改变明文或密钥中的一个比特值可能影响AES值中的多少比特?

3. 分析实验中在编辑、编译、运行等各环节中所出现的问题及解决方法。回答冋题

1. 在DES中,如果存在密钥使其产生的子密钥是相同的,则称其为弱密钥。如果其产生的子密钥只有两种,且每种出现8次,则称其为半弱密钥。

2. 可能为16bite

3. 实现算法编程的主要冋题是对算法理解不清从而使编出的程序逻辑不清。

再后来多查一些相关的资料,最终修改的

实验二公钥密码算法实验

[实验目的]

1. 掌握密码学中常用的公钥密码算法RSA ECC勺算法原理

2. 掌握RSA ECC的算法流程和实现方法。

[实验预备]

1. RSA和ECC密码系统所基于的数学难题是什么?

2. RSA和ECC算法的基本原理。

3. 公钥密码系统可以取代对称密码系统吗?

4. RSA和ECC勺实现过程。

[实验内容]

1. 分析RSA ECC的实现过程。

2. 用程序设计语言将算法过程编程实现

3. 完成数据的加密运算和解密运算

输入明文:security

输入密钥:cryptio n

对ASCII码进行加密和解密。

[实验步骤]

1. 预习RSA ECC算法。

2. 了解大素数的生成、大数的运算、公钥、私钥的生成。

3. 写出算法流程,用程序设计语言将算法过程编程实现。

4. 输入指定的明文和密钥进行实验,验证结果。

写出所编写程序的流程图和运行界面、运行结果。

[问题讨论]

1•总结算法的特点,分析算法的安全性;

2.分析实验中在编辑、编译、运行等各环节中所出现的问题及解决方法。回答冋题

1. 特点:①它是一个既能数据加密也能孕育数字签名的算法。他易于理解和操作,

也很国际化。

②密钥管理简单,但加密速度慢。

安全性:

RSA 公开密钥密码算法在信息交换过程中使用比较广泛、安全性比较高。

P 和Q必为足够大的素数,使N的分解无法在多项式时间内完成。要求N 至少要有1024或者2048bite。

2. 问题主要出在算法的理解上但也有很多小问题比如编程的问题出错后不知从何

处改正等等。

实验三SKEY协议设计实验

[实验目的]

1. 掌握身份认证协议的原理和基本思想。

2. 掌握SKEY协议的机制和实现方法。

[实验预备]

1.SKEY协议的作用。

2.SKEY协议的安全性分析。

3.SKEY协议的实现过程。

[实验内容]

1. 分析SKEY#议的实现过程。

2. 用程序设计语言将算法过程编程实现。

3•演示SKEY协议的身份鉴别过程。

[实验步骤]

1. 预习SKEY协议的机制。

2. 选择和实现相应的摘要算法MD5或SHA

3. 写出算法流程,用程序设计语言将协议过程编程实现。

4. 验证SKEY协议的身份鉴别过程。

写出所编写程序的流程图和运行界面、运行结果。

[问题讨论]

1. 分析SKEY勺安全性;

2. 分析实验中在编辑、编译、运行等各环节中所出现的问题及解决方法。回答冋题

1. 由于SKEY协议中每个数只用一次,因此对数据库攻击用处不大》

SKEY协议能有效防止重放攻击

2. 程序中无论输入什么都是验证错误。可能是对SKEY协议的逻辑弄不清楚

实验一:

1. DES算法

(1) 流程图如下:

(2) 运行界面与运行结果:

"OWi5ual+C+ + +6.0 (直捲win? ) \Mi

* I (E 使用DES 加密系统

请输入明文他位〉:Houeyou

请输入密钥佃位>:crpytion

加密结果:2EF30CDF19DF282E

按0犍退岀■苴他键解密¥

k

解密结果也owyou

Press any key to continue

2. AES算法

(1)流程图如下:

相关文档
最新文档