密码学课程设计报告_2.docx
《密码学课程设计报告_2.docx》由会员分享,可在线阅读,更多相关《密码学课程设计报告_2.docx(30页珍藏版)》请在第一文库网上搜索。
1、裸程被奸板告一 .古典密码算法31.1. 实验内容31.2. 实验目的313.需求分析31.4. 程序流程图41.5. 算法实现51.5.1 PIayfair体制51.5.1.1 算法描述51.5.1.2 核心代码解析51.5.1.3 运行结果71.5.1.4 P1ayfair安全分析71.5.2 Vigenere体制81.5.2.1 算法描述815.2.2核心代码解析81.5.2.2 结果101.5.2.4 Vigenere安全分析101.5.3 Vernam体制111.5.3.1 描述111.5.3.2 核心代码解析121.5.3.3 运行结果131.5.3.4 Vernam安全分析13二
2、 .分组密码算法DES142.1. 实验内容142.2. 实验目的142.3. .需求分析142.4. DES算法描述152.5. DES算法流程1726DES核心代码分析172.7. DES运行结果202.8. DES安全分析20三 .大素数密码算法RSA223.1. 实验内容223.2. 实验目的223.3. 需求分析223.4. 程序流程图233.5. 算法实现243.5.1 Mi11er-Rabin素性测试法243.5.1.1 算法描述243.5.1.2 代码分析253.5.1.3 运行结果263.5.1.4 算法效率分析263.5.2 RSA算法实现273.5.2.1 算法描述273
3、.5.2.2 核心代码分析273.5.2.3 行结果293.5.2.4 RSA安全分析29四 .实验总结31一.古典密码算法4.1. .实验内容:用高级语言实现古典加密方法,多表古典加密方法主要有P1ayfair体制、Vigenere体制、BeaUfor体制、Vernam体制和Hi11体制,其中此实验本人运用了C+实现了PIayfair体制、Vigenere体制、Vernam体制这三种多表古典加密方法。12实验目的:掌握多表古典加密方法并分析多表古典加密方法各种体制的安全性。4.3. 需求分析:古典密码系统已经初步体现出近代密码系统的雏形,加密方法逐渐复杂,其变化较小。虽然从近代密码学的观点来
4、看,许多古典密码是不安全的,即是极易破译的,但我们不应当忘掉古典密码在历史上发挥的巨大作用。古典密码的代表密码体制主要有:单表代替密码、多表代替密码及转轮密码。CaSer密码就是一种典型的单表加密体制;多表代替密码有Vigenere密码、PIayfair体制、Vernam体制;著名的Enigma密码就是第二次世界大战中使用的转轮密码。古典密码的代表密码体制主要有:单表代替密码、多表代替密码及转轮密码。古典密码的加密方法一般是文字置换,使用手工或机械变换的方式实现。单表代换密码,指一旦密钥被选定,则每个明文字母对应的数字都被加密变换成对应的惟一数字,即对每个明文字母都用一个固定的明文字母表到密文
5、字母表的确定映射。这种简单的一一对应关系,很容易被破译者用频率分析法进行破解。针对这种缺陷,人们提出多表代换密码,用一系列(两个以上)代换表依次对明文消息的字母进行代换。古典加密算法中很多算法的保密性是基于算法本身保密的,这一点与现代加密算法不同。正是由于算法本身保密,所以并不利于密码学的发展,密码学在古典密码学阶段发展是非常缓慢的。古典密码大都比较简单,这些加密方法是根据字母的统计特性和语言学知识加密的,在可用计算机进行密码分析的今天,很容易被破译。虽然现在很少采用,但研究这些密码算法的原理,对于理解、构造和分析现代密码是十分有益的。古典密码在整个密码体系中起着基础的作用,因此理解并熟练运用
6、是进入这一学科的关键,也有助于进一步学习近代密码学。因为下面所实现的三种体制程序个模块之间的联系都一样,所以这里就简化只做了一个流程图:选择要进行的操作1.5.1 P1ayfair体制:1.5.1.1 算法描述:P1ayfair密码出现于1854年,是最著名的多字母加密密码。P1ayfair算法使用关键词构造一个5X5的矩阵,其构造规则是按行依次写下关键词的字母(去除重复字母),然后按照字母表的顺序依次写下其余的字母,其中I和J算作同一个字母。PIayfair加密过程如下:首先,将明文按两个字母分组,假定一组中的明文字母分别为m1和m2,若InI与m2相同,则在重复的字母中间插入一个事先约定好
7、的字母,若明文字母为奇数则在明文的末端添加一个实现事先约定好的字母。例如约定插入字母和补充字母均为X,则对明文CONNECT1oN的分组为CoNXNECTIONX0其次,按照如下规则对明文组进行加密: 当m1、m2在同一行时,对应的密文c1、c2分别是紧靠m1、m2右边的字母。其中行的最后一个字母的密文是行的第一个字母。(解密时相反) 当m1、m2在同一列时,对应的密文c1、c2分别是紧靠m1、m2下方的字母。其中列的最后一个字母的密文是列的第一个字母。(解密时相反) 当m1、m2不在同一行也不在同一列时,对应的密文c1、c2分别是与m1同行且与m2同列的字母及与m2同行且与m1同列的字母。(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 密码学 课程设计 报告 _2