资源描述:
《密码学课程设计报告.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