首页 > 其他分享 >密码学——凯撒加密

密码学——凯撒加密

时间:2022-12-31 14:34:33浏览次数:39  
标签:加密 strInput int unsigned nLength char 密码学 凯撒

古典加密方案,通过对字符简单的增加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++;
	}
}

 

标签:加密,strInput,int,unsigned,nLength,char,密码学,凯撒
From: https://www.cnblogs.com/wuruixin/p/17016618.html

相关文章

  • 密码学——RC4
    对称加密方法RC4通过置换和流加密处理进行加密。#pragmaonce#include<stdio.h>/*RC4初始化函数*/voidRC4_Init(unsignedchar*s,unsignedchar*key,unsign......
  • 密码学——Base64编码
    通过数据表替换,将6位拓展为8位,进行替换,总长度增加1/3。 #pragmaonce#include<stdio.h>#include<stdlib.h>#include<string.h>unsignedchar*Base64_Encode(un......
  • python学习十一:python常用模块使用,如 加密模块pyarmor,时间模块time等
    前言整理一下经常使用到的模块一、加密模块pyarmor在公司上班的时候,有一次要发布python代码,设计到对代码的保密,需要进行加密。因此对python代码加密需要用到pyarmor模块。......
  • go-dongle 0.2.4 版本发布,一个轻量级、语义化的 golang 编码解码、加密解密库
    dongle是一个轻量级、语义化、对开发者友好的Golang编码解码和加密解密库Dongle已被awesome-go收录,如果您觉得不错,请给个star吧github.com/golang-module/dong......
  • 一、对称加密(DES加密)
    一、DES简介DES是一种对称加密(DataEncryptionStandard)算法。于1977年得到美国政府的正式许可,是一种用56位密钥来加密64位数据的方法。一般密码长度为8个字节,其中56位加......
  • Jmeter二次开发实现rsa加密
    每天进步一点点,关注我们哦,每天分享测试技术文章本文章出自【码同学软件测试】码同学公众号:自动化软件测试,领取资料可加:magetest码同学抖音号:小码哥聊软件测试jmeter函......
  • NIST宣布推出前4种抗量子加密算法
    近日,美商务部技术研究院(NIST)选择了第一套抗量子加密算法,旨在“抵御未来量子计算机的攻击”。后量子密码学(PQC)技术包括用于通用加密的CRYSTALS-Kyber算法,以及用于数字签名......
  • JJencode和emoji加密
    JavaScript混淆是一种常用的手段,用于在不改变代码功能的情况下使代码难以被人阅读和理解。本文将介绍两种常见的JavaScript混淆方法——JJencode和emoji加密,并给出解......
  • sqlserver MD5加密
    一、示例及分析例如对人力资源表(hrmresource)的身份证号(certificatenum)进行md5加密对于mysql数据库直接查询md5函数即可,但sqlServer没有内置md5函数,处理起来相......
  • 【转载】C#使用Dotfuscator混淆代码以及加密
    C#编写的代码如果不进行一定程度的混淆和加密,那么是非常容易被反编译进行破解的,特别是对于一些商业用途的C#软件来说,因为盯着的人多,更是极易被攻破。使用Dotfuscator可以实......