通过C语言实现TXT文本加密解密
TXT文本加密
忘了是可以加密几兆以下的文本了,自己去看程序,好像是8m还是16m以下,加密个电子书绰绰有余了,加密完会生成一堆乱码,想要解密需要用程序将乱码改回来,程序很简单,但是很实用,有了它你可以放心地看小说,我们那个年代的苦楚,啧啧啧啧。觉得有用的,帮忙点个赞32位系统wintc可以编译,64位wintc不可用,64位系统可以用turboc编译,但是编译出的程序还得在32位系统下运行,64位系统想运行程序的话需要下载dosbox进行运行。
程序如下
1234。c:
HELLO。CHello,world
includestdio。h
includeconio。h
includestdlib。h
includecjiami。c
includecjiemi。c
includeejiami。c
includeejiemi。c
defineBitGet((ch(1(7)))(1(7)))用来判断最高位是1还是0
main()
{
charch;
voidlock();
voidunlock();
printf(lockafile,pleaseenter1unlockafile,pleaseenter2);
d:chgetchar();
if(ch1)lock();
elseif(ch2)unlock();
else
{
printf(pleaseenter1or2);
getch();
gotod;
}
}
voidlock()
{
FILEfp1,fp2;
charinfile〔10〕,outfile〔10〕,ch,key1〔11〕,key2〔11〕;
intj,d,pc;
longlength,i;
printf(pleaseenterinfilename:);
scanf(s,infile);
if((fp1fopen(infile,r))NULL)
{printf(cannotopeninfile);
getch();
exit(0);
}
printf(pleaseenteroutfilename:);
scanf(s,outfile);
if((fp2fopen(outfile,w))NULL)
{printf(cannotopenoutfile);
getch();
exit(0);
}
printf(pleasesetyourpassword(length10bit):);
scanf(s,key1);
printf(pleasewriteyourpasswordagain);
re:for(i0;i12;i)初始化key2
key2〔i〕0;
scanf(s,key2);
for(i0;key1〔i〕!;i)
if(key1〔i〕!key2〔i〕)
{
printf(passwordwrong,pleaserewriteit);
gotore;
}
if(key1〔i〕!key2〔i〕)防止key1的不与key2的对应
{
printf(passwordwrongq,pleaserewriteit);
gotore;
}
lengthi;
printf(passwordhasbeensetrightly);
for(i0;(chfgetc(fp1))!EOF;i)
{
dkey1〔i(length1)〕48;
if(BitGet)
chcjiami(ch,d);
elseif((ch33)(ch126))chejiami(ch,d);
fputc(ch,fp2);
}
fclose(fp1);
fclose(fp2);
getch();
}
voidunlock()
{
FILEfp1,fp2;
charinfile〔10〕,outfile〔10〕,key〔11〕,ch;
intj,d,pc;
longlength,i;
printf(pleaseenterinfilename:);
scanf(s,infile);
if((fp1fopen(infile,r))NULL)
{printf(cannotopeninfile);
getch();
exit(0);
}
printf(pleaseenteroutfilename:);
scanf(s,outfile);
if((fp2fopen(outfile,w))NULL)
{printf(cannotopenoutfile);
getch();
exit(0);
}
printf(inputpassword(length10bit));
scanf(s,key);
for(i0;key〔i〕!;i);
lengthi;
for(i0;(chfgetc(fp1))!EOF;i)
{
dkey〔i(length1)〕48;
if(BitGet)
chcjiemi(ch,d);
elseif((ch33)(ch126))chejiemi(ch,d);
fputc(ch,fp2);
}
fclose(fp1);
fclose(fp2);
getch();
}
cjiami。c文件:
charcjiami(charch,intd)
{charah;
intbh;
ahchd;
return(ah);
}
cjiemi。c文件:
charcjiemi(charch,intd)
{
charah;
ahchd;
return(ah);
}
ejiami。c文件:
charejiami(charch,intd)
{charah;
ahchd;
if(ah33)ahah12632;
return(ah);
}
ejiemi。c文件:
charejiemi(charch,intd)
{
charah;
ahchd;
if(ah126)ahah12632;
return(ah);
}
作者:闲听落红不忍眠
国际开源发展经验及其对我国开源创新体系建设的启示中国网中国发展门户网讯开源是指将源代码、设计文档或其他创作内容开放共享的一种技术开发和发行模式,这些内容的版权由开放式许可协议(常称为开源协议)所规定。开源理念诞生于计算机软件……
中国联通押注eSIM?独立号码业务全国试验获批将投入10亿元就在本月,工信部批准了中国联通开通eSIM穿戴设备独立号码业务全国试验服务。中国联通副总经理买彦州在3月29日透露说。当日,中国联通还宣布与京东达成独家战略合作关系,就联通eS……
特斯拉FSD全球普及率仅为11左右辅助驾驶不香了?当下越来越多的用户开始选购智能汽车,而在智能汽车品牌中,特斯拉也成为很多用户的首选。特斯拉FSD全球普及率仅为11左右在购买特斯拉汽车时,用户可以通过购买增强版自动……
2800卖掉iPhone11,老果粉最后入了OPPOFind换机原因直接开门见山地说吧,作为一个老的iphone手机用户,用了多年的iphone手机,5c开始到最新的11。一年半前买过三部安卓机,都是不过一周就出掉了,总体使用下来……
新年货扫地机器人成新三样之一走俏进入1月份,春节的脚步也越来越近,买年货是过年标配。而随着年俗变迁和春节消费习惯的变化,以及生活品质提升、消费升级的新趋势,年货的种类也在发生着变化。据阿里巴巴发布的《2020……
最新!iPhone13系列价格或创新高!6299元起售,该版过两天就是9月了,有人在期待开学季,而我们数码圈的人,则更是期待中下旬的2021年苹果秋季发布会。从春季苹果发布会以来,大家也陆陆续续也爆料很多消息:Pro系列专属的12……
网络请求参数的处理,包含过滤,排序,拼接,加密usingSystem;usingSystem。Collections。Generic;usingSystem。Linq;usingSystem。Text;……
华为HiLink版新日电动车上市在即,你定了吗?作为民生产业的电动车制造,也在二十余年间完成了从手工组装到自动化生产的高速发展,也让中国成为了世界电动车王国。新日领军行业二十余年,在一次次的产业变革中担当着先行者的重担,为中……
电视是谁发明的?电视是谁发明的?大伙儿呗。这不光是个玩笑话,也是事实。和无线电、电话、录音机之类的事物不太一样,电视发明是有个传承接力、不断完善的过程的。我们这里就一些大的节点来梳……
优化APP弹窗保护个人信息互联网体验可更舒心各类广告弹窗频频跳出、APP超范围收集个人信息、互联网平台客服热线没人接使用互联网时,你是否有过这样的体验?工信部近日印发《关于开展信息通信服务感知提升行动的通知》,决定从20……
判断是否装了QQ判断是否装了QQpublicstaticbooleanisQQClientAvailable(Contextcontext){finalPackageManagerpackag……
七夕情人节礼物推荐,蓝牙耳机性价比高的品牌眨眼间,七夕就要到了,相信大家都着手开始准备礼物了,那有什么创意又实用的礼物值得推荐呢?蓝牙耳机就是一个不错的选择。下面就带大家看看几款高颜值高性价比的蓝牙耳机!第一款:……