密码学课程设计报告.doc

密码学课程设计报告.doc

ID:59524707

大小:559.00 KB

页数:13页

时间:2020-11-07

密码学课程设计报告.doc_第1页
密码学课程设计报告.doc_第2页
密码学课程设计报告.doc_第3页
密码学课程设计报告.doc_第4页
密码学课程设计报告.doc_第5页
资源描述:

《密码学课程设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、密码学课程设计班级:姓名:学号:指导教师:2011.6目录密码学课程设计11.实验一实现一个多表古典加密和解密程序11.1实验目的11.2实验要求11.3实验内容11.4古典加密方法11.5程序代码11.6结果分析31.7实验总结32.实验二DES算法的实现42.1实验目的42.3实验内容42.4DES对称加密算法42.5程序代码62.6结果分析82.7实验总结83.实验三实现一个大素数生成算法93.1实验目的93.2实验要求93.3实验内容93.4Miller-Rabin素性测试法93.5程序代码103.6结果分析103.7实验总结114.结束语111.实验一实现一个多表古典加密和解

2、密程序1.1实验目的掌握多表古典加密方法。1.2实验要求能用高级语言实现古典加密方法。1.3实验内容多表古典加密方法主要有Playfair体制、Vigenere体制、Beaufor体制、Vernam体制和Hill体制,用高级语言实现其中一种体制的加密和解密算法。1.4古典加密方法古典加密方法分为单表加密和多表加密。古典密码编码方法有置换,代替,加法。把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。  最简单的置换密码是把明文中的字母顺序倒过来,然后截成固定长度的字母组作为密文。乘积和迭代是多种加密方法混合使用,对一个加密函数多次迭代。单表代替密码的安全

3、性不高,一个原因是一个明文字母只由一个密文字母代替。构造多个密文字母表,在密钥的控制下用相应密文字母表中的一个字母来代替明文字母表中的一个字母。一个明文字母有多种代替。Vigenere密码是著名的多表代替密码。所以本次试验我选择做的就是Vigenere密码。1.5程序代码#include#include#include#defineMAX_LEN1024#defineLETTERS26voidencrypt_vigenere(char*plain,char*key,char*cipher){intmax=strlen(plain)-

4、1,d=strlen(key)-1,i;for(i=0;i

5、y[i%d]-'a')+LETTERS)%LETTERS;plain[i]='';}voidmain(){charcipher[MAX_LEN],key[MAX_LEN],plain[MAX_LEN];printf("-->Pleaseinputthekey:");fgets(key,sizeof(key),stdin);printf("-->Pleaseinputtheplaintext:");fgets(plain,sizeof(plain),stdin);encrypt_vigenere(plain,key,cipher);printf("-->Theciph

6、ertextis:");printf("%s",cipher);decrypt_vigenere(cipher,key,plain);printf("-->Theoriginalmessageis:");printf("%s",plain);}1.6结果分析首先在程序执行时的提示下,输入密钥,接下来输入要加密明文,程序执行,可以产生加密后的密文,并自动解密出原来的明文。顺利执行加密和解密过程。1.7实验总结古典多表密码有多种体质,这次试验我选择的是Vigenere体制。经过对加密算法的实现,我对古典加密算法的模式,过程和原理有了更深入的了解。多表古典密码通过构造多个

7、对应明文的密文字母表,在密钥的控制下使用相应的密文字母表中的某个字母来代替明文字母表中的一个字母。达到隐藏明文的目的。解密的时候对这个过程进行逆操作,得到明文。一个明文字母有多种代替。而Vigenere密码就是著名的多表代替密码。而且通过编码,又练习了我C++操作的水平。2.实验二DES算法的实现2.1实验目的握分组加密算法的设计与实现方法。2.2实验要求用高级语言实现实现DES加密和解密算法。2.3实验内容DES是由初始变换、乘积变换和逆初始

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。