密码学——凯撒加密

古典加密方案,通过对字符简单的增加x,来进行加密。

免杀使用的时候,顺手可以加个亦或进去,增加点复杂度。

#pragma once

#include<stdio.h>

void Caesar_Encryption(unsigned char *strInput,int nLength, int nOffset1, int nOffset2) {
	unsigned char* p = strInput;

	for (int i = 0; i < nLength; i++) {
		//凯撒加密
		*p = *p + nOffset1;
		//亦或加密
		*p = *p ^ nOffset2;
		p++;
	
	}
}

void Caesar_Decryption(unsigned char* strInput, int nLength, int nOffset1, int nOffset2) {
	unsigned char* p = strInput;

	for (int i = 0; i < nLength; i++) {
		//亦或加密
		*p = *p ^ nOffset2;
		//凯撒加密
		*p = *p - nOffset1;
		p++;
	}
}

 

posted @   瑞皇  阅读(72)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示