ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:17.47KB ,
资源ID:16365767      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16365767.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(优质密码实验报告2 800字精选word文档 13页Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

优质密码实验报告2 800字精选word文档 13页Word格式.docx

1、1.通过预习和老师在实验课上的讲解,理解代替密码和移位密码的本质差别,对程序的作用有初步了解;2.分析实验指导书上所列代码,搞清楚各个子函数的功能、理清程序的大体思路;3.将主函数与各个子函数进行合并整合,处理编译上出现的语法问题,使编译可以顺利通过;4.完善程序,输入数据对程序的逻辑功能进行验证,测试随机数结构调用是否完整,测试结果是否符合对应的加密要求,验证打开关闭文件是否顺利。六、思考题“代替表”与“置换”的不动点、逆等是否一致?答: 不一致。代替是约定明文集合到另一集合的关系,不一定是原来的集合,而移位是在 明文集合中进行随机排列然后得到的密文。两者的不动点、逆等只有在统一集合变换时

2、才可能一致。七、实验代码及运行结果实验代码:1. 代替密码#includetime.hstring.hctype.hstdlib.h/*声明子函数*/unsigned char *full_array2(char n); /*fully_array函数产生随机数*/ int letter_to_digit(char c);char digit_to_letter(int n);unsigned char *KeyGen_s( );void Encrypt_s(unsigned char *key);/*主函数*/int main()printf(-代替密码加密算法-n);Encrypt_s(K

3、eyGen_s();system(pausereturn 0;unsigned char *full_array2(char n) /*fully_array函数产生随机数*/ int m,i,j,k,l =0,flag;static unsigned char P256;start:n请输入不小于%d的所有随机数个数:n,n+1);scanf(%d,&m);if(m=n)n输入数%d比%d小,须重新输入!,m,n+1);goto start;srand(unsigned)time(NULL);/*初始化随机种子*/for(i=0;im;i+)Pl+=(unsigned char)(rand(

4、)%(n+1);for(j=0;jl-1;j+)if(Pj=Pl-1)l-;break;k=l;=n;flag=0;k;if(Pj=i)flag=l;if(!flag)Pl=i;l+;return(P);int letter_to_digit(char c)int i;char alphabet27=abcdefghijklmnopqrstuvwxyz; for(i=0;26;i+) if(tolower(c)=alphabeti) return(i);return(-1);char digit_to_letter(int n)if(n25) return(0);return(alphabet

5、n);unsigned char *KeyGen_s( )char KeyWords106;char ChoiceWords26;unsigned char *p;static unsigned char KeyTab26*3;int i,j,k,l;n 请输入密钥字:gets(KeyWords);strcat(KeyWords,k=0;l=strlen(KeyWords);ChoiceWordsk=tolower(KeyWords0);for(i=1;l;if(letter_to_digit(KeyWordsi)=-1) continue;ChoiceWords+k=tolower(KeyW

6、ordsi); for(j=0;if(ChoiceWordsj=ChoiceWordsk)k-;KeyTabi=(unsigned char)letter_to_digit(ChoiceWordsi);p=full_array2(25);KeyTab26+i=pi;KeyTab52+i=(unsigned char)(7*i+3)%26);return(KeyTab);void Encrypt_s(unsigned char *key)FILE *fp;char filename20,c;n 请输入待加密文本文件名:%s,filename);if( (fp=fopen(filename,rt)

7、=NULL )没有找到文件:%snn 密文如下:i=0;while(c=fgetc(fp)!=EOF)if(letter_to_digit(c)=-1)putchar(c);continue;/公式选为 7*i+3(mod 26)isupper(c)?putchar(toupper(digit_to_letter(key(int)(i/26)*26+letter_to_digit(c): putchar(digit_to_letter(key(int)(i/26)*26+letter_to_digit(c); i+;if(i=26*3) i=0;fclose(fp);2. 移位密码int le

8、tter_to_digit(char c) ;char digit_to_letter(char n) ;unsigned char *KeyGen_p( ) ;void Encrypt_p(unsigned char *key) ;-移位密码加密算法-nEncrypt_p(KeyGen_p();(周期为5)n scanf(int letter_to_digit(char c) /*将字母转化为数字*/char digit_to_letter(char n)/*将数字转化为字母*/unsigned char *KeyGen_p( )/*产生密钥*/static unsigned char Ke

9、yTab16*5;int i,j;5;p=full_array2(15);16;KeyTab16*i+j=pj;void Encrypt_p(unsigned char *key) /*实现明文加密*/char d16; goto start; di%16=c;i+;if(i%16!=0) continue;putchar(dkey(int)(i-1)/16)*16+j); if(i=16*5) i=0;=0)for(j=i%16;j+)dj=*;putchar(dkey(int)(i/16)*16+j);putchar(n附录:运行结果截图 荐 计算机上机实验内容及实验报告要求 荐 构建学校德育管理与评价体系的实验报告 荐 化学实验报告格式 荐 大学物理实验课程设计实验报告 荐 电路实验报告要求

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1