/*
R1 = X ^ Y;
R2 = R1 ^ Y;
此时R2==X。由此可知,相同的值执行两次XOR运算所得到的结果等于原始值。
* 基于XOR的这个原理可以创建简单的加密程序,使用一些整数来作为对消息编码和解码的密钥,将它与消息中的字符执行XOR运算。
* 要编码消息,则执行一次XOR运算产生密文。要解码消息,再次执行XOR运算则得到明文。
*/
//Demonstrate the XOR.
using System;
class Encode
{
static void Main()
{
char ch1 = 'H';
char ch2 = 'i';
char ch3 = '!';
int key = 88;
Console.WriteLine("Original message: " + ch1 + ch2 + ch3);
//Encode the message.
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("Encoded message: " + ch1 + ch2 + ch3);
//Decode the message.
ch1 = (char)(ch1 ^ key);
ch2 = (char)(ch2 ^ key);
ch3 = (char)(ch3 ^ key);
Console.WriteLine("Decode message: " + ch1 + ch2 + ch3);
}
}
利用XOR运算进行简单加密(C# 3.0完全参考手册)
最新推荐文章于 2021-07-29 14:18:23 发布