维吉利亚密码.doc

维吉利亚密码.doc

ID:14849288

大小:115.00 KB

页数:4页

时间:2018-07-30

维吉利亚密码.doc_第1页
维吉利亚密码.doc_第2页
维吉利亚密码.doc_第3页
维吉利亚密码.doc_第4页
资源描述:

《维吉利亚密码.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、附页班级:信息062学号:200612030208姓名:王丽梅实验组别:实验日期:报告日期: 成绩:报告内容:(目的和要求、原理、步骤、数据、计算、小结等)实验名称:维吉利亚密码算法实验一、实验目的(1)通过实验熟练掌握维吉利亚密码算法。(2)学会维吉利亚密码算法程序设计。(3)提高C++程序设计能力。二、实验要求(1)软件环境WindowsXp/Windows2000Visualc++/Turboc++3.0(2)硬件系统Pentium43.0G512MRAM计算机等三、实验原理(流程图):按照a~z依次对应0~25编码,

2、数组K密钥字符串的ASCII码,数组M存放一组明文字符串ASCII码,且length(M)=length(K)=n,数组C存放M中的数据经加密后得到的一组密文字符串的ASCII码。加密算法:C(i)≡(M(i)+K(i))mod26(i=1,2,……,n)开始结束输入明文M和密钥K调用miyao()函数使密钥与明文等长调用jiami()进行加密C(i)≡(M(i)+K(i))mod26输出密文C4附页四、实验数据(源代码):#include#include#include

3、usingnamespacestd;voidencrypt(char*m,char*k,char*c)//加密算法{inti=0,j=0;while(m[i]!=''){if(m[i]>='a'&&m[i]<='z'){c[i]=(m[i]-'a'+k[i%4]-'a')%26+'a';i++;}else{c[i]=(m[i]-'A'+k[i%4]-'A')%26+'A';i++;}}c[i]='';}voidmain(){intii=1,jj,j;charm[100];chark[100];printf("输入密钥

4、:");for(j=0;k[j-1]!='';j++){k[j]=getchar();}charc[100];printf("输入明文:");scanf("%s",m);encrypt(m,k,c);printf("输出密文:%s",c);}4附页五、程序运行结果:六、实验小结:通过上机实验,让我学会了维吉利亚密码算法的实现过程及编码方式,这个密码的实现在以后学习密码学中有着非常重要的作用。若以后认真听课努力学习一定能掌握密码学的精髓。4附页4

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

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

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