免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
凯撒加密算法C语言实现#include#include char encrypt(char ch,int n)/*加密函数,把字符向右循环移位n*/while(ch=A&ch=a&ch=z)return (a+(ch-a+n)%26);return ch;void menu()/*菜单,1.加密,2.解密,3.暴力破解,密码只能是数字*/clrscr();printf(n=);printf(n1.Encrypt the file);printf(n2.Decrypt the file);printf(n3.Force decrypt file);printf(n4.Quitn);printf(=n);printf(Please select a item:);return;void logo()/*显示版权信息*/printf(nZhensoft Encryption Version:1.0.0);printf(nCopyright (C) 2004 Zhensoft Corp.n);printf(nn);return;main()int i,n;char ch0,ch1;FILE *in,*out;char infile20,outfile20;textbackground(BLACK);textcolor(LIGHTGREEN);clrscr();logo();sleep(3);/*等待3秒*/menu();ch0=getch();while(ch0!=4)if(ch0=1) clrscr(); printf(nPlease input the infile:); scanf(%s,infile);/*输入需要加密的文件名*/ if(in=fopen(infile,r)=NULL) printf(Can not open the infile!n);printf(Press any key to exit!n);getch();exit(0); printf(Please input the key:); scanf(%d,&n);/*输入加密密码*/ printf(Please input the outfile:); scanf(%s,outfile);/*输入加密后文件的文件名*/ if(out=fopen(outfile,w)=NULL) printf(Can not open the outfile!n);printf(Press any key to exit!n);fclose(in);getch();exit(0); while(!feof(in)/*加密*/ fputc(encrypt(fgetc(in),n),out); printf(nEncrypt is over!n); fclose(in); fclose(out); sleep(1);if(ch0=2) clrscr(); printf(nPlease input the infile:); scanf(%s,infile);/*输入需要解密的文件名*/if(in=fopen(infile,r)=NULL) printf(Can not open the infile!n);printf(Press any key to exit!n);getch();exit(0); printf(Please input the key:); scanf(%d,&n);/*输入解密密码(可以为加密时候的密码)*/ n=26-n; printf(Please input the outfile:); scanf(%s,outfile);/*输入解密后文件的文件名*/ if(out=fopen(outfile,w)=NULL) printf(Can not open the outfile!n);printf(Press any key to exit!n);fclose(in);getch();exit(0); while(!feof(in) fputc(encrypt(fgetc(in),n),out); printf(nDecrypt is over!n); fclose(in); fclose(out); sleep(1);if(ch0=3) clrscr(); printf(nPlease input the infile:); scanf(%s,infile);/*输入需要解密的文件名*/ if(in=fopen(infile,r)=NULL) printf(Can not open the infile!n);printf(Press any key to exit!n);getch();exit(0); printf(Please input the outfile:); scanf(%s,outfile);/*输入解密后文件的文件名*/ if(out=fopen(outfile,w)=NULL) printf(Can not open the outfile!n);printf(Press any key to exit!n);fclose(in);getch();exit(0); for(i=1;i=25;i+)/*暴力破解过程,在察看信息正确后,可以按Q或者q退出*/ rewind(in);rewind(out);clrscr();printf(=n);printf(The outfile is:n);printf(=n);while(!feof(in) ch1=encrypt(fgetc(in),26-i); putch(ch1); fputc(ch1,out);printf(n=n);printf(The current key is: %d n,i);/*显示当前破解所用密码*/printf(Press Q to quit and other key to continue.n);printf(=n);ch1=getch();if(ch1=q|ch1=Q)/*按Q或者q时退出*/ clrscr(); logo();printf(nGood Bye!n); fclose(in); fclose(out); sleep(3); exi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阜阳叉车考试题库及答案
- 钻机购买可行性研究报告
- 铸钢件生产线工程可行性研究报告
- 防城港集装箱码头项目可行性研究报告
- 预制菜产业园项目可行性研究报告
- 高效永磁电机调速技术在纺织机械领域的解决方案
- 2025年职工职业技能大赛(焊工)省决赛试题库(含答案)
- ppp协议书设计需求
- 调解协议书小说
- 腾讯 保密协议书
- 安全标识标识化设计标准方案
- 2025至2030中国车队管理系统行业项目调研及市场前景预测评估报告
- 阿里外包面试真题及答案
- 危险化学品储存区事故应急预案
- 2024-2025学年北京市大兴区五年级(上)期中数学试卷
- 眼视光器械学试题及答案
- 学堂在线医学英语词汇进阶(首医)作业单元测验答案
- 国网35条严重违章解读培训课件
- 酒店直播销售培训课件
- GJB1442A-2019检验工作要求
- 汝窑天青釉洗鉴赏
评论
0/150
提交评论