NZND壳-加密算法

来源:互联网 发布:养成游戏 知乎 编辑:程序博客网 时间:2024/05/21 08:55

我们的壳需要对原数据进行加密.而Xor未免有点太弱.为了避免我的壳在加密上被瞬间攻破.我们采用了一种新的加密算法.我称它为Xor动态加密.

这是一段从ZeroAccessRootkit中提取的算法.你可以从我的另一篇文章看到该算法的汇编形式:Xor动态加密

我将该算法转换成了C语言形式,示例如下:

#include<Windows.h>BYTE XOR加密Data(BYTE* lpBuffer,DWORD dwSize,BYTE bKey){    for (DWORD d=0;d<dwSize;++d)    {        lpBuffer[d]=lpBuffer[d]+bKey;        bKey=lpBuffer[d]^bKey;    }    return bKey;}void XOR解密Data(BYTE* lpBuffer,DWORD dwSize,BYTE bKey){    for (signed int d=(dwSize-1);d>=0;--d)    {        bKey=lpBuffer[d]^bKey;        lpBuffer[d]=lpBuffer[d]-bKey;    }}int main(){    char a[]={"Welcome To Beijing"};//28    BYTE Bb=10;    BYTE BRet=XOR加密Data((PBYTE)a,28,Bb);    XOR解密Data((PBYTE)a,28,BRet);    return 0;}

为了让我们的壳变得有趣,这种算法会被如何使用呢?请听下回分解.

0 0
原创粉丝点击