实验3-移位密码分析实验.docx

实验3-移位密码分析实验.docx

ID:57323444

大小:50.05 KB

页数:5页

时间:2020-08-11

实验3-移位密码分析实验.docx_第1页
实验3-移位密码分析实验.docx_第2页
实验3-移位密码分析实验.docx_第3页
实验3-移位密码分析实验.docx_第4页
实验3-移位密码分析实验.docx_第5页
资源描述:

《实验3-移位密码分析实验.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验3-移位密码分析实验班级:信息安全一、实验原理一篇包含字符的英文文章,其各ASCII码字符出现,都有一定的频率,出现较高频率的两个字符是''(空格)和'e',而且它们的ASCII码分别是32和101,差值是69。既然凯撒密码利用的是单表替换的一种简单加密算法,所以,我们的主角,''和'e',在解密后,依然会保持相同的ASCII码差值,69。

2、c1-c2

3、=

4、'e'-''

5、=

6、101-32

7、=69

8、m1-m2

9、=

10、((c1+k)mod256)-((c2+k)mod256)

11、=

12、c1-c2

13、=

14、'e'-''

15、=69现在可以得到破解凯撒密码的原理了,我们统计一片经过凯撒加密的密文字符信息,在

16、出现频率较高的字符里面寻找差值是69的2个字符,这两个必定是''和'e'字符的加密字符,计算偏移量(既密钥key),通过解密运算,还原出明文。二、程序设计流程说明:移位密码算法破解输入密文字母统计分析出现频率最高的字母解密输出结果结束源代码:#includevoidanalyze(char*c);voiddecypher(char*c,char*hashmap,inta,intb,intd);voidcreateHash(char*c,inta,intb,intd);charalphabet[]="abcdefghijklmnopqrstuvwxyz,.!";intmai

17、n(){charch1[10000];charhash[29];printf("Inputparagragh:");gets(ch1);analyze(ch1);printf("Afterdecyphered:");createHash(hash,7,3,29);decypher(ch1,hash,7,3,29);printf("%s",ch1);return1;}voidanalyze(char*c)//统计字母出现{inta[26]={0};inti=0,j;while(c[i]!=''){if(c[i]!='.'

18、

19、c[i]!='!'

20、

21、c[i]!=',')a

22、[c[i]-'a']++;printf("%dt",i++);}for(j=0;j<26;j++){printf("%c:%d",j+'a',a[j]);}}voiddecypher(char*c,char*hashmap,inta,intb,intd)//通过密文直接hash到明文,进行解密{inti=0;intchar_pos;//recordthecaractor'spositionwhile(c[i]!=''){char_pos=c[i]-'a';//printf("char_pos:%d",char_pos);if(c[i]!=''){printf("%c",has

23、hmap[char_pos]);}else{printf("");}i++;}}voidcreateHash(char*c,inta,intb,intd)//由于f(p)是满足双射关系的,即两两对应,可以将明暗文对应关系放在Hash表中{inti;charencode[29];for(i=0;i<29;i++){encode[i]=alphabet[(a*i+b)%d];printf("%c",encode[i]);}for(i=0;i<29;i++){c[encode[i]-'a']=alphabet[i];}printf("%s",alphabet);}一、实验过程1.输入密文

24、2.统计字符,得出结果结果:密文xultpaajcxitltlxaarpjhtiwtgxktghidhipxciwtvgtpilpitghlxiwiwtxgqadds所对应的明文为ifweallunitewewillcausetheriverstostainthegreatwaterswiththeirblood

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

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

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