C语言 异或加密

原创 2017年08月11日 21:39:41

文件加密解密
将文件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);
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

c语言^异或操作符进行加密解密

其运算是二进制按位异或,比如 a=9(二进制1001),b=12(二进制1100),那么 a ^ b 的结果是5(二进制0101)。 /** * 加密/解密文件 * * @param sou...

C语言 命令行传参进行 异或 加密/解密

【说明】     对指定文件中的内容或传入的文本参数进行异或加密/解密,并将加密/解密后的结果保存到文档。可以指定进行异或加密/解密时要使用的私钥。 【命令行示例】     [root@local...

python中 “按位与,或,异或”与C语言的不同

python中 “按位与,或,异或”与C语言的不同 转自:http://blog.sina.com.cn/s/blog_857dce810100vwah.html 在python中: 按位的...
  • oatnehc
  • oatnehc
  • 2011年08月16日 09:18
  • 15182

C语言位运算符:与、或、异或、取反、左移和右移

C语言位运算符:与、或、异或、取反、左移和右移   位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带...

C语言位运算符:与、或、异或、取反、左移和右移

C语言位运算符:与、或、异或、取反、左移和右移  http://wenku.baidu.com/view/c7a29a3f376baf1ffc4fad70.html 语言位运算符:与、或、异或...

C语言位运算符:与、或、异或、取反、左移与右移详细介绍

位运算是指按二进制进行的运算。在系统软件中,常常需要处理二进制位的问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型...

C语言总结之异或运算的一些特性及巧妙应用

1.一个数和自己做异或的结果是0。如果需要一个常数0,x86平台的编译器可能会生成这样的指令:  xorl %eax, %eax。不管eax寄存器里的值原来是多少,做异或运算都能得到0,这条指令比同...

C语言总结之异或运算的一些特性及巧妙应用

1.一个数和自己做异或的结果是0。如果需要一个常数0,x86平台的编译器可能会生成这样的指令: xorl %eax, %eax。不管eax寄存器里的值原来是多少,做异或运算都能得到0,这条指令比同样...

C语言中位运算符异或“∧”的作用

异或运算符∧也称XOR运算符。它的规则是若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即0∧0=0,0∧1=1,1∧1=0。如: 即071∧052,结果为023(八进制数)。 “异...

C语言位运算符及作用:与、或、异或、取反、左移和右移

一、& 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0 应用: (1)清零 若想对一个存储单元清零,即使其全部二进制位为0,只要找一个二进制数,其中各个位符合一下条件: ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言 异或加密
举报原因:
原因补充:

(最多只允许输入30个字)