实验目的与意义_第1页
实验目的与意义_第2页
实验目的与意义_第3页
实验目的与意义_第4页
实验目的与意义_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验目的与意义1、实验目的:通过编程实现vigenere加密,更加深入的了解其原理,学握vigenere算法。2、实验意义:验证理论知识,更重要的是通过实验加强实验手段与实践技能,培养分析问题、解决问题、应用知识的能力和创新精神,全面提高综合素质。二、实验环境操作系统:WindowsXP调试软件名称:MicrosoftVisualstudio版本号:2005上机地点:综合楼208三、实验的预习内容1、预习内容:1、vigeneiecipher加密规则:找到一个关键字作为密钥;将关键字重复的写在明文上;根据vigeneietable找出对应的密文2、解密:根据vigeneietable找到中对应

2、的字母;再看密文字母对应的关键字字母;唯一的确定明文字母。3、关键的代码(如何让3个字母实现类似vigeneietable的形式)#includestdafx.hmtargc,_TCHAR*argv)chaia3=a,;b,c,;chartable33;foi(mti=0;i3;i+)for(int尸0;j3;j十十)tableij=a(j+i)%3;foi(mti=0;i3;i+)for(mtj=0;j输入关键字-用户输入明文-进行加密得到密文;解密原理与加密基本相同。3、程序框图:四、实验的步骤与调试方法K实验步骤:(1)建立Win32consoleapplicationg工作空间,名为:

3、vigenere_20083612;(2)新建xuvi.cpp源文件;(3)按照实验思路编写源代码,完成之后进行编译、链接、执行;(4)程序执行时按提示输入关键字、明文,验证输出密文,及解密之后输出明文是否正确。2、调试方法:打表时出现错误。经调整后发现是数组定义问题。五、实验数据与实验结果-le2SlJKLMNUMTYLMST0PPQQRRSUigenereCipherPleaseinputplaintext:thisisuigenerecipherinputthekey:cipherQRSTPQRS0pQR0PMN0PMN0MKLMIXWX0PMMDEVZABXsTUuRST0PQRFGA

4、BXUwTUusTRSTQKPQR0P0PMN0MNDEYZXuusTRSQRPQ0PMMM0TIMTXGSUXABSTUW0PQRMTZFFMTYTDABCDEFBCDEFGCDEFGHPQRSTUUWQRSTUUWXRSTUUWX?MUX0PRSTXMUDecryption:Theplaintextis:thisisuigenei*ecipherTheresultis:UPXZMJXQULRUTMRPTVGZHFEDBAzyXuuDEFzfiEFHuuuQRsTpQRsGHEFoNGEDBBDEFpQRsTuwAuXYXX0PQRST六、实验用程序清单(要有注释)#iiicludeHStd

5、io.hH#iiicludeHComo.hH/includeHstring.hn/includeHmalloc.hHFrdefineMAX100staticintsquare2刀27;char*vigenere(chai-key,charword);char*aiiti_vigenere(charkev,chai-*en_word);mtmaiii(void)clwkeyMAXAvoidMAX,*en_word;intijkm;严初始化vigenere方阵fbi(i=l;i27;i-H-)for(j=lJ90)squarei|j=squaieiIj-26;fbr(k=1;k27;k+)for(

6、m=1;m27;m+)pmitf(”c”,squaekm);/*/printf(MVigenereCipher11Pleasemputplaintext:);scanfC%s”,wod);printfinputthekey:”);scanfCHskey);en_woid=vigenere(kev,woid);printfTheresultis:%s,ii,en_woid);printf(MntDeci-yption:nH);printf(MTheplaintextis:%sH,antLvigenere(key,en_word);getch();return0;产加密算法可char*vigene

7、ie(chai-key,charword)char*text=(char*)inalloc(MAX*sizeof(char);intkey_lengtli=stiien(kev);mtword_length=stilen(word);mtij,c;fdi(i=0;i=65&wojrdi=97&wordi=97&wordi=122)c=wordi-96;elsec=wordi-64;j=i%key_length;texti=squarekeyj-96c;elsetexti=wordi;texti=O,;returntext;/*解密算法*/char*aiiti_vigenere(charkev,

8、chai-*en_woid)char*woid=(char*)malloc(MAX*sizeof(chai);mtkey_lengtli=stiien(kev);iiitword_length=stilen(en_woid);mtij,ckd;fbr(i=0;i=65&en_wordi=0)wordi=,a,-rd;elsewordi=,z,+d+l;elsewordi=en_wordi;woKii=*0:returnword;七、思考题(必需回答)写明如下问题Vigenere密码的原理是什么?答:替换。Vigenere密码的主要缺陷有哪些?答:密钥长度n小于明文的长度,即相同的明文字符可能多

9、次被相同的密钥字符加密,生成相同的密文字符。对Vigenere密码的分析方法有哪几种?答:IC重合指数和Kasiski长度分析对Vigenere密码的改进方法是什么?答:autokeycopher八、结束语通过本次试验我对vigenere加密算法有了更加全面深入的认识,以前的学习只是停留在理论层面,而这次试验课给了我实践的机会。通过实验很好的把古典密码应用于现代密码加解密技术中。在这个过程中我也学到了很多关于编程方面的知识,了解了自己需要提高编程水平。九、参考文献1.RichardJ.Spillman:CLASSICALANDCONTEMPORARYCRYPTOLOGY,清华人学出版社,2005-72WilliamStallings:CryptographyandNetworkSecurity:PrinciplesandPractice.2ndedPrenticeHall,1998杨波著:现代密码学,清华大学出版社,2003-8.WenboMao.ModernCryptography:TheoryandPracticce.电子工业出版社,2004-7.许主洪著:加密与解密-密码技术剖析与实战应用,人民邮电出版社,2002-8.张焕国,刘玉珍著:密码学引论,武汉大学出版社,2003.7段钢著:加密与解密,电子工业出版社,2005-3.实验成绩考査内

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论