C语言 异或加密

文件加密解密
将文件file1中的每一字符与0x6a异或变成另一个字符送屏幕显示,同时存入文件file2中。打开加密的file2输出解密内容。

file1文件内容是:This is a book.
路径为:d:\file1.txt
d:\file2.txt

(请从命令行输入)
特别提示:
1.异或的C语言描述方式
a=a^b 书P330(a和b异或后值赋给a)
2.a和b异或的结果再与b相异或则a还原。
3.0x6a是16进制,可直接赋值给int b=0x6a;然后用b与a进行异或。

常见的算法如下:包含stdio头文件
void main()
{
FILE *in, *out;
char *in_file, *out_file;
char ch;
printf(” input in file name:\n”);
gets(in_file);
printf(” input out file name:\n”);
gets(out_file);
in = fopen( in_file, “rb”); /以二进制只读方式打开/
out = fopen( out_file, “wb”);
if( in == NULL || out == NULL ) exit(1);
ch = fgetc(in);
while( ch != -1 ) /若文件没有结束/
{
ch = ch^1; /异或运算/
fputc( ch, out ); /将异或结果放入输出文件中/
ch = fgetc(in);
}
fclose(in);
fclose(out);
}

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_34715587/article/details/77103540
文章标签: c语言 异或加密
个人分类: 加解密
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭