x{
谁能把上面的内容解密呀
算了,我把解密程序发上来哈
谁最先解开谁就会得到祝福
上面用的是用字符本身异或一个数(1---255之间,因为异或0等于它本身,不能起加密的作用);
你会发现不管字符异或那个数,异或两次后都能得到他本身.
思路就是:
把需要解密的文档循环用1---255来异或,其中一个就是正确的内容:
累加法
#include "stdio.h"
int main()
{ char ch,source[40],aim[40];
int i=0;
FILE *fp,*fm; /*fp用来标记源文件,fm用来标记解密文件*/
clrscr();
puts("qing shu ru yu jie mi wen jian de lu jin.\nru: c:\\en.txt");
/*请输入欲解密文件的路径:*/
gets(source);
puts("qing shu ru jie mi yi hou de wen jian de lu jin:\nru: c:\\mima.txt");
/*请输入解密后的文件的路径:*/
gets(aim); /*gets不支持\转义自符*/
fp=fopen(source,"rt");
fm=fopen(aim,"wt+");
if (fp==NULL || fm==NULL)
{ printf("\nCannot open file strike any key exit!");
getch();
exit(1);
}
for (;i<=255;i++)
{
while ((ch=fgetc(fp))!=EOF)
{
ch=ch^i; /*用取反原来的字符来加解密,异或任何一个数两字得到本身*/
fputc(ch,fm);
}
rewind(fp); /*把文件内的指针指到首部,以方便下次读取*/
fputc('\n',fm);
}
fclose(fp);
fclose(fm);
getch();
}
执行方法
把
兏y懚濔灂鍦t飓飓飓飓y,: u4'0u%<2ux
x{
红色内容保存到一个文本文件中,如e:\jiami.txt
然后执行上面的程序
提示你输入欲解密程序的路径你就输入:
e:\jiami.txt (注意只有一个'\',不要输入2个哈)
最后提示你输入解密后程序的路径你就随便输入:
比如e:\jiemi.txt
解密后,打开jiemi.txt
在众多的乱码中你找到一行你能看懂的话就是神留给你的祝福
[此贴子已经被作者于2006-9-24 11:12:16编辑过]