crypt.cpp

来自「从国外网站上下载的关于 逆向工程和协议分析练习 的一个分析文档 对你的加密与解密」· C++ 代码 · 共 72 行

CPP
72
字号
/**
 * 加密/解密接口
 */
#include "stdafx.h"
#include <stdio.h>


/**
 * 解密报文  
 */
void decrypt(unsigned char *data,int len)
{
	register int i;

	for (i=0; i<len; i++)
	{
		unsigned char o = data[i];
		unsigned char n;

		n = ((o & 1) << 1);

		n |= ((o & 2) << 6);

		n |= ((o & 4) << 4);

		n |= ((o & 8) << 2);

		n |= ((o & 0x10) >> 2);

		n |= ((o & 0x20) >> 2);

		n |= ((o & 0x40) >> 2);

		n |= ((o & 0x80) >> 7);

		data[i] = n;
	}
}


/**
 * 加密报文  
 */
void encrypt(unsigned char *data,int len)
{
	register int i;

	for (i=0; i<len; i++)
	{
		unsigned char o = data[i];
		unsigned char n;

		n = ((o & 1) << 7);

		n |= ((o & 2) >> 1);

		n |= ((o & 4) << 2);

		n |= ((o & 8) << 2);

		n |= ((o & 0x10) << 2);

		n |= ((o & 0x20) >> 2);

		n |= ((o & 0x40) >> 4);

		n |= ((o & 0x80) >> 6);

		data[i] = n;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?