问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言求救!编写一文件加密程序!

发布网友 发布时间:2022-05-01 22:22

我来回答

4个回答

热心网友 时间:2022-06-24 07:30

////这个是我前些日子无聊至急写的超简单超烂 异或加
////密程序 你改改看! 或许可以满足你的要求!
/// 我的51空间里:http://luobinme.51.com 有更详细
// 的代码!
#include "stdio.h"

main(int argc,char *argv[])
{
FILE *fn,*fp;
char pas[64]; //保存的密码 密码可以使用64个字符
char pad; //输入的密码
int pa; //计算中用到的指向当前密码位
char chrnx; //密码第一个字符与最后一个字符之和
char chrxn; //密码第一个字符和第二个字符之加
char chrxx; //倒数第二个密码字符与第二个密码字符做异或运算的值
char ch; //读取的明文数据
char wch; //经过计算后的密文

if(argc<3){printf("命令参数错误! 请正确确填写参数!\nUsger: [输入文件] [输出文件] \n 例如: HFWPWD pas.txt pas.hfw \n\nH*F*W 2008年6月11日 广州番禺 (今天休息)\n");return 0;}

pa=0;
printf("请输入密码:");
memset(pas,0,65);
while(1)
{
pad=getch();
if(pad==13)break;
if(pad!=8)
{
pas[pa]=pad;
printf("*");
pa++;
if(pa>=64){printf("\n老大!密码超过64位了! 重来吧!\n");return 0;}
}
else{printf("\n\n撤消重来:");pa=0;memset(pas,0,65);}
}
if(strlen(pas)<6){printf("\n密码小与6为!~重来!");return 0;}
printf("\n密码长度:%d\n",strlen(pas));

printf("输入文件:%s\n",argv[1]);
printf("输出文件:%s\n\n",argv[2]);

fn=fopen(argv[1],"rb"); //输入明文或密文
if(fn!=NULL)
{
fp=fopen(argv[2],"wb+"); //输出密文或明文
if(fp!=NULL)
{
printf("#############>>> H*F*W 2008 <<<#############\n\n 文件处理中.....\n\n###########################################\n");
chrnx=pas[0]+pas[strlen(pas)-1]; //密码第一和最后一个字符相加
chrxn=pas[0]+pas[1]; //密码第一个字符和第二个字符之和
chrxx=pas[1]^pas[strlen(pas)-2]; //倒数第二个密码字符与第二个密码字符做异或运算
pa=0;
while(!feof(fn))
{
ch=fgetc(fn);
wch=(((ch^pas[pa])^chrxn)^chrnx)^chrxx; //加密 密文先与密码中的一个字符做异或运算再与第一个密码字符与第二个密码字符之和做异或运算最后再与第一个密码字符与最后一个密码字符之和做异或运算 最最后再与chrxx变量做异或运算
if(feof(fn)==0)fputc(wch,fp);
pa++;
if(pa>=strlen(pas))pa=0;
}
fclose(fn);
fclose(fp);
printf("文件处理完毕!\n");
}
else printf("无法打开或建立输出文件文件: %s\n",argv[2]);
}
else printf("无法打开输入文件: %s\n",argv[1]);

return 0;
}

热心网友 时间:2022-06-24 07:30

过两天我告诉你答案

热心网友 时间:2022-06-24 07:31

加密?

热心网友 时间:2022-06-24 07:31

好的 首先

然后

我不会了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
老人多喝红茶可降低患帕金森症风险 陕西有什么好玩的地方景点推荐 货车倒卡换牌逃逸怎么处理 配置弘康相守健康2021重疾险有意义吗? 弘康相守健康2021有啥劣势? 怎么样把现金汇到个人帐户 急 中国银行可以用现金直接汇到账户吗 为什么即便是睡眠很充足还是有黑眼圈? 函数y=kx²-6x+3的图像与x轴有交点,则k的取值范围是 已知函数数y=mx²ㄧ6x+1(m是常数), 1.求证∶不论m为何值,该函数的... 妨碍公务袭警轻微伤一般会怎样判 妨碍公务加袭警是什么处罚? 关于文件加密的制作 拍摄的视频格式可以调整么? 妨碍公务和袭警的区别 换班主任的申请书,谁有? 妨害公务罪与袭警罪的区别 袭警罪和妨害公务罪的区别 酒驾妨碍公务袭警怎么判 妨碍公务罪和袭警的区别 文件夹加密要怎么做啊? 创意美食的做法步骤图,创意美食怎么做好吃 电影格式怎么调 如果我想把文件加密怎么做? 如何写申请不做班主任申请书 袭警罪和妨害公务罪的区别是什么? 袭警罪一般判刑多久 袭警罪怎么判? 怎么申请不当班主任? 中国,对袭警将怎么惩罚? 【急】求一份不更换班主任的申请书 用一个程序实现发送文件的加密和解密操作C语言、 怎么用C#编写一个文件夹加密程序啊?紧急! 妨害公务袭警会怎样处罚 视频格式怎样设置才能使做出来的视频大小合适而且很清晰? 雷蛇键盘的螺丝刀用什么型号的 电容补偿柜为什么用电量大反而不起作用? 自动电容补偿器为何一直不补偿 电容补偿柜在什么情况下不不补偿 变压器电容补偿柜电容不补偿是什么原因?请高手支招,谢谢! 变压器电容补偿柜电容不补偿是什? 电容补偿柜不工作是什么原因,手动OK 高压配电室电容补偿柜为什么故障点多? 除了椰子树叶还有芭蕉树叶还有什么树叶是我们海南人最熟悉的:( 10KV高压电容自动补偿柜 为什么自动一投就跳掉投不上,而手动可以投上呢 我要写海南秋天的树叶的作文 求助各位专家,无功补偿补不上的问题? 在海南有一种树叶子很大这是树的学名什么叫啊 电容补偿柜不能正常工作的原因有哪些? 【海南植物系列】请问这种叶子像芭蕉,如同一把折扇的树叫什么?多谢! 海南荖叶什么种叶子是黄色的? 海南人饭馆泡水时通常用什么叶子?